Engineering the Internet

Engineering the Internet

Discover what makes the Internet work, from wires to web browsers.


You click a link. Electrons whiz through wires, run headlong into routers, get redirected. Somewhere in a cold room full of electronic equipment, a machine stirs to life. A few instruction executions, a quick memory access, and the electrons are off again, zipping back to your computer. As the return message arrives, your browser hastily prepares to show you something new. Before you know what's happened, pixels on your screen blink on and you see a space-cat with a pop-tart body dance across your screen.

But what's actually going on? How does your request know where to go? How does the Internet know to return you the Nyan Cat? How does your browser know how to make the Nyan Cat dance? And, more importantly, when your artist friend comes to you with the next big meme, wanting help putting it on the Internet, what are you going to do?

I can't teach you how to compose catchy tunes or design cute pixelated cat images, but in this class we'll learn all of the technology that allows them to be distributed and displayed on the Internet. We'll focus on engineering problems -- technological challenges with real-world constraints, where finding the best solution means balancing many considerations. This is a hands-on class. Students will use common networking tools and build a simple website using HTML, CSS, and Javascript. No previous experience is expected; this class will build everything from the ground up. However, it will move quickly, so be warned!


For the application...

Relevant experience

  • Any programming experience you've had (courses like AP CS, independent work, Splash classes, whatever)
  • Any robotics teams or other engineering-oriented activity

Application Question (Core-specific free response)


Part 1:

A URL is the string of characters appearing in the bar at the top of your web browser that tells the web browser what page to show you.  In this question we'll explore some features of URLs.

You should be able to do all parts of this question by clicking things on webpages and/or typing into the URL bar.  Feel free to use other parts of the internet to figure this out, but please don't use your friends. 

Simple sheet music for the Nyan Cat tune is available at thesession.org/tunes/11661.

a) The Session is an Irish music website.  Nyan Cat is tune number 11661.  What is the title of tune 4995?

Go to thesession.org/tunes and use search for "Nyan Cat." 

b)  What URL are you sent to (before you click on any results)?

Play with the search function a bit more.  Can you figure out how the parameters you enter translate to the URL you're sent to?  Try editing the URL directly to get different search results. 

c) What's the shortest url you can put there that gives you a search results page with Nyan Cat as the first option?

d) On a discussion on the same website, someone suggests playing Nyan Cat with two other tunes, The Silver Spear and Cooley's Reel.  Construct a URL which finds The Silver Spear (don't click anywhere to do this, just edit the url bar, no cheating!)

Go to http://thesession.org/tunes/11661#comments.  What happened?

e) Construct a URL that scrolls straight to the comment saying that this tune reminds them of Spoot O' Skerry?  Hint:  it may help to view the "page source."  You can do this in Chrome by going to Tools > View source, and in Firefox by going to Tools > Web Developer > Page Source.

f)  Find another website where you can demonstrate some of the same URL features you just saw.  Give a URL and what it points to here.

g)  If there are parts of this question you didn't get, what did you try?  What problems were you having?

h)  How long did this take you (be honest!)

Part 2:

Describe in a paragraph a time when you learned something by being stuck.  Focus on what you learned and how you learned it, not on the details of what you were doing or why you were stuck.



Last modified on March 15, 2013 at 09:39 p.m.