Chapter 16. Writing the Application

A complex system that works is invariably found to have evolved from a simple system that worked. The inverse proposition also appears to be true: A complex system designed from scratch never works and cannot be made to work. You have to start over, beginning with a working simple system.[40]

John Gall

This chapter and the following one are the main technical chapters in this book. That being said, this chapter is not aimed only at developers; you will not find a lot of code here. This chapter offers advice on how to create applications and integrate the design and product management aspects of building an application with the code-writing aspects.

I’m going to make a few assumptions about your experience first: you use validating HTML and probably have a preference for HTML, XHTML, or HTML5; you use CSS to present the visual aspects of your site and JavaScript to handle the behavior of your application in the browser; and you understand the benefits of unobtrusive JavaScript so that your site degrades gracefully and works well without JavaScript. If my assumptions are incorrect, Jeffrey Zeldman’s Designing with Web Standards (Peachpit Press) and Jeremy Keith’s Bulletproof Ajax (New Riders) are important reading first.

I’m also not recommending any particular language; recent social web applications have come in everything from Lisp to Scala to PHP, Ruby, and Python; there are even some C applications. Pick the one you feel comfortable developing ...

Get Building Social Web Applications now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.