This class meets on Tuesdays, 3:30 PM - 6 PM

Class 1

September 2?


  • Introductions
  • What do you think of when you think of networks?
  • Technological Metaphor as a way of seeing the world:
    • Medieval: Clock, gave rise to mechanical view of universe, Netwonian physics
    • Victorian: Steam engine, gave rise to thermodynamic view of universe (Boyle, et al)
    • Late 20th century: Computer, computational view of universe (Hawking et al)
    • Early 21st century: Network, network view of universe (Linked, et al)
  • Network dynamics
    • Centralized, distributed, and decentralized networks
    • Dyads, triads, and the links between them
    • Complete networks and incomplete networks
    • Link dynamics: Conversation, aggregation, broadcast, unicast, multicast, group
    • Rings vs stars vs complete nets
    • Link direction and symmetry
    • Density of links and its effect on robustness
  • The reference lie: the OSI stack as a metaphor for communications networks
    • Physical - connectors, wires, electrical protocols
    • Datalink - Ethernet
    • Network - IP
    • Transport - TCP, UDP
    • Session - telnet, http, ftp, etc
    • Presentation - html, xml, etc
    • Application - email, web, etc
  • Networks of all flavors
    • Internet, PSTN, power grid, transportation


  • Review or introduction to the command line interface


Class 2

September 9?

Concepts: From serial to sockets: A review and expansion of serial communication

  • How bits become data: layers of a serial protocol
    • voltage agreement
    • timing agreement
    • logic agreement
    • TTL vs RS-232 serial
    • RS-485, USB, DMX-512 and other differential signaling protocols
    • ASCII, Unicode
  • Packets vs. Circuits
  • Smart networks and dumb networks, end-to-end principles
  • How the Internet gets to you
    • Hubs, routers, switches, and endpoints
    • Addressing: IP, DNS, DHCP, etc.
    • Tiers of ISP -- turtles all the way down
  • How the phone network gets to you:
    • What's the PSTN, what's POTS?
  • Opening and closing sockets
  • What sockets can do:
    • HTTP
    • Mail
    • Socket-to-serial
    • Application-to-application


  • Processing net library
  • Serial-to-socket in Processing


Assignment: Socket exercise: communicating in realtime. I will give you a game platform and the protocols to log in and communicate with it. Make a client to log in and play. Work in Processing, Arduino, JavaScript, or whatever environment is comfortable to you. You will not play with your own client, but you'll show someone else how to use it. Making Things Talk Chapter 5 will be very helpful with this. Due in one week. Work alone or in pairs.

Class 3:

September 16?

Presentation: Socket Project


  • HTTP from the ground up: headers, GET and POST requests, etc.


  • Arduino Yśn, BeagleBone Black, Raspberry Pi, and other embedded processors
  • Command Line Interface


Class 4:

September 23?


  • Guest speaker: Hunter Newby, Allied Fiber
  • The business of the physical layer
  • LATAs, LECs, RBOCs, and IXPs

Special Class 5: September 25, Thursday, 12 - 3 PM

Field Trip: Telx, 60 Hudson St., and 325 Hudson. Our hosts will be Hunter Newby, Founder & CEO of Allied Fiber, and co-founder and former chief strategy officer for Telx; and Jim Stanley, Finance Executive at Telx.

Please be at the lobby of 60 Hudson ready for class at 12:15 PM sharp. Directions are here. You need to bring a government-issued photo ID to get in. A passport (any country) will do fine if you don't have a US driver's license.

Please do some background reading and research and come prepared with questions for our hosts based on our discussion of internet structures so far.

Class 6:

September 30?


  • Network geography using network tools:
    • nslookup -- what's your name
    • ping -- are you alive and can I contact you? (wired only)
    • whois -- who owns you?
    • traceroute -- how do I get to you?
    • arp -- address resolution protocol: what MAC address is linked to what IP address?
  • Corporate and working structures of the internet. ICANN, IANA, IETF, ITU, etc.


  • Command line network tools



Traceroute at least three of the sites you regularly visit: Facebook, gmail, bank, school, etc. Do it from all of the locations you regularly connect from. Save the trace in a file, and make a map of the routes, indicating the network providers that show up every time. Identify who the major tier 1 providers are in your life. Feel free to obfuscate the endpoints if you don't want us to know what sites you visit. We'll compare notes on each others traces next class.

Special Event: Susan Crawford talk at ITP, Thursday 10/2, 12-3

Details TBA. Susan is one of the pre-eminent voices in telecommunications policy in the world. This will be a really useful talk for this class.

Class 7:

October 7?

Presentation: Traceroute Project.

Concepts: Representational State Transfer

  • HTTP and RESTful principles




Over the next three weeks, you'll RESTful web interface to a physical device. You can come up with a new RESTful interface for an existing physical device, or you can come up with a physical interface for an existing RESTful service, or both.
work in pairs on this assignment
Week 1: Decide on your application, then describe and sketch the interface and the control protocol.

Class 8:

October 21?


  • Event-oriented network thinking
  • Data exchange formats


  • Deeper into node.js and express
  • serial library for node.js


Week 2: prototype the HTML elements and perform basic manipulations using JS; make the network connection

Recommended Reading:

Class 9:

October 28?


  • WebSockets and events


  • In-class workshop to connect the pieces of the web interface assignment.


  • Making Things Talk, chapter 6, 7

Class 10:

November 4?

Presentation: Web interface project.


  • Radio as Communication: Wifi, Xbee, Bluetooth, etc


  • Radio communication basics workshop


  • Making Things Talk, chapter 8, 9


Radio Exercise: We'll build a multi-node machine inspired by this work at Each pair of people will be assigned a different radio address, and your job will be to receive the data, convert it to physical action, and use that action to trigger message sent by a second radio. In the end, the whole class will form one large machine.
Work in pairs on this.
Week 1: you'll be assigned your addresses this week. Get to know your network neighbors and discuss what you'll make for your part of the system.

No Class Nov. 11

Class 11:

November 18?


Present your initial physical prototype, working. Radio links need not be working to your neighbors yet.


  • Radio as Location or Identification
  • Short-range radio: Bluetooth and Bluetooth LE


Week 2: Work with your neighbors to establish links in class. Determine what the major tasks will be to finalize the project.


You've covered a number of topics very broadly this semester, all of which are connected. For your final, take any of the topics we've covered and prepare an online introduction to it. Your online guide can be a combination of text, image, video, and interactive elements. The whole experience should take approximately 5-10 minutes to digest.
You can cover technical, social, economic, or political aspects of networks. What you present should repeat material not covered in previous discussions, though it should draw upon what we've covered. Make liberal use of the sources you've been given in this class, and include a bibliography/resource guide.
This week decide on your topic, and prepare a short (one paragraph) blog post introducing it. If you're not sure what to do, schedule office hours with me to discuss it. Please be sure that I am aware of your topic and have approved it by next class.
Your project should be completed on Friday December 5. This will give you and your classmates time to experience each others' projects, so that in our last class, you can comment on each others' work. You will not present your work in the final class, you'll only receive comments on it. We may have outside guests participating as well, TBD.
This is an unusual final project in that you have a very short time to execute it. Do not make a large production of it. The focus is on communicating the dynamic or practice in which you're interested, not on making a working system implementing it. Focus on being able to explain what you learn about the topic to the class. Your work should address a genera audience, not just the ITP community.
You may work alone or in groups on this.

Class 12:

November 25?

Presentation: Present final radio network as a whole class.

In addition to presenting the working network, each pair will give the class a short (5-minute) summary of what they learned about their particular radio form that was not covered in previous classes.


  • More Radio as Communication: GSM, voice, SIP


  • Prepare a first draft of your final online presentation.

Class 13:

December 2?


Present first draft of your final. This is your chance to get early feedback from your classmates on structure, presentation, production methods, or anything else you need in order to realize your final.

Assignment: All of your finals should be finished by this Friday December 5. This weekend, review your classmates' presentations, take notes, and write down questions. In our final class, you'll give each other feedback on what you made.

Class 14:

December 9?

In-class discussion of final projects.