Bonus points

  1. Try deploying your messaging server so you can access it via a public URL. (Free trials and easy deployment options for Node are available on several hosting sites including nodejitsu, heroku and AppFrog.)

  2. What alternative messaging mechanisms are available? (Take a look at apprtc.appspot.com.) What problems might we encounter using 'pure' WebSocket? (Take a look at Arnout Kazemier's presentation, WebSuckets.)

  3. What issues might be involved with scaling this application? Can you develop a method for testing thousands or millions of simultaneous room requests?

  4. Try out Remy Sharp's tool nodemon. This monitors any changes in your Node.js application and automatically restarts the server when changes are saved.

  5. This app uses a JavaScript prompt to get a room name. Work out a way to get the room name from the URL, for example localhost:2013/foo would give the room name foo.