Dear Web Programmers You Are Doing It Wrong

This goes for just about everyone. Quick show of hands, how many of you write applications that are one screenful?

Have you ever written an application that is one screenful?

I write lots of one screen applications.

I have a socket server app that is one screen.

I have a http app that is one screen.

I have a one screen KV store app.

I have a 1 screen app that downloads images and builds a h.264 video.

I have a 1 screen app that searches flickr.

I have a 1screen app that displays a grid of images and videos ala tumblr.

I can take any problem and reduce it to one screen.

But I also build lots of small apps that do one thing well.

I then have my apps talk to eachother to do more complex things.

If a problem takes pages of text to describe, it is not a good problem.

Odds are it is a bunch of little problems conflated and confused into a big one.

Don't write big apps to small problems.

Write small apps to solve small problems.

Couple small apps together loosely via messaging.

Loosely coupled apps with well defined interfaces are components.

Interchange suitable components as necessary, don't weld them together.

Build systems from lots of little processes.

Think building with Lego, not gluing up models.

Stop writing glue code.

You are doing it wrong.