Cyber for Future Policymakers

CS 12 / 201, DHP D291

Syllabus, Fall 2021, v0.1 (draft)

Course Description

Computer technology runs modern societies, underlying virtually every activity we do, from how the foods we eat arrive on our table to how we receive and consume information. Because cyber technology has such a profound influence on society, policymakers frequently face decisions on technical issues. Cyber for Future Policymakers is designed to provide students interested in policy, political science, and international relations aspects of cyber technology with an understanding of how these technologies work and the underlying issues of the policy debate. This course will cover Internet architecture and basic networking, the Web, cloud architectures, cryptography, security and privacy, open source systems, AI and machine learning, and other new technologies; it has a heavy emphasis on labs. It assumes no more previous exposure to computer science than a single programming course.

Course Objectives (TODO: change to “Learning Outcomes”)

Students will develop:

  • a basic understanding of the underpinnings of cyber technologies of current policy interest
  • some hands-on experience with these technologies
  • skills in writing briefing documents on new technologies
  • skills in presenting the salient features of new technologies

Course Topics

  • Communications Networks
  • Internet Architecture
  • Understanding the World Wide Web (WWW)
  • Cloud Computing
  • Intellectual Property and Open Source Software (OSS)
  • Cybersecurity and Privacy (e.g., cryptography, malware, cyberattacks, protection measures, etc.)
  • Identity Management
  • Artificial Intelligence (AI) and Machine Learning (ML)
  • Quantum Computing


An introductory course in programming: CS 10 or 11 or equivalent. The introductory programming course can include programming in C++, Python, or Java, but should not be Javascript based. The course needs to teach not only programming, but also introduce algorithmic thinking and data structures.

This requirement is a prerequisite; the programming course may not be taken simultaneously.

Which section should I register for?

  • If you are an undergraduate student, register for CS 12. Undergraduates are not permitted to take the graduate-level sections.
  • If you are a student in the Fletcher School, register for DHP D291. DHP P201 will also study the U.S. government structure related to cyber issues.
  • If you are a graduate student in the CSPP program, Computer Science, or are otherwise not in Fletcher, register for CS 201.

Course Materials

  • Required textbook:
    • Kernighan, Brian W. Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security. Princeton University Press, 2017.
  • Laptop with the following software installed:
    • At least two web browsers (e.g., Firefox, Google Chrome, Safari, Microsoft Edge, Brave)
    • Wireshark — this is an open source and platform-independent network protocol and traffic analyzer.
    • A command line terminal software (built-in on Mac and Linux laptops; for Windows 10, use the Linux subsystem, use Ubuntu as distribution).

Class Times

  • Tuesdays & Thursdays, 10:30 – 11:45 AM (all sections)
  • Wednesdays, 9:00 – 10:15 AM (CS 201 and DHP D291 sections only)

Dave Lillethun, Ph.D.

Dave Lillethun, Ph.D.

Dave Lillethun teaches classes about programming (CS1), computing systems, databases, and the CS senior capstone at Tufts University.

View Full Profile →

Contact Info
You may find my contact information on my faculty profile page.