I bought a laptop with a 12.1" screen and for a while I thought it was fine. But when I plugged it into a 27" monitor I had, I noticed a huge increase in my productivity. I don't completely understand why, but programming became much more enjoyable and easy.<p>So one datapoint: you can use a 13" laptop as a main development machine, but you will probably be more productive if it has a bigger monitor.
I have a 13.3" Macbook. It is usable for development, but I dread using it to code after coming home from coding at work on a dual screen system. Its like programming while looking through a keyhole. The increased resolution on the new 13" Macbook Air does have me tempted to buy one.
I think it depends on the type of application you're building. A Twitter like application probably doesn't need as much hardware as something more complex.