That wasn't a very objective post; there are many times I've seen ideas that I could have executed but for whatever reason chose not to, and I'm happy with that decision. As well, who is to say mine wouldn't have been better? This post reads very incomplete and immature, and even derogatory to young developers.

I use those instances as confirmation that my ideas are typically realistic and worthy, but not ready to act on until I get a group of developers and have functional knowledge of major platforms and content creation tools such that if I had a group of people and three months to launch something, I would be able to focus on developing without having to refer to a manual or query google all the time. I think when a solid dedicated team has been found, and I can make good calls on which language, framework, platform, and content creation tools to use through actual experience with them depending on which task is needed to be solved, and then do it without wasting time figuring out how to actually use tools, then I will be able to go for 3 months, 6 months, or even 12 months at a time, without having to focus on analyzing the current state again (which, after a year, I would have to all over again as much would have changed.) As well, my team would be confident in me and themselves and even if turned out that the idea was the problem, my team, our investors, and customers would love for us to do another one.

In fact, you could say that's what 37 signals did--as they were consultants, they likely had a group of people develop web sites for other customers, and we can guess they did this in a 3 or 6 months time frame, and using the latest technologies, and confirming they love working with each other and can go on their own ideas.

So saying that a single person should just start randomly programming an idea, for as long as it takes, is actually not very great advice. Even if it turns out to be a great and useful program, and saves customers thousands of dollars for the $30 a year it cost (like something I've developed in the past), a single person will typically choose to pursue an idea that would not be as amazing and sell-worthy as an idea that 3 people pursue, and with investors to boot. The other thing is that as a single developer, my customers loved what I did, but not something anybody around me cared for, and my parents wanted me to get a job. So I was alone for years programming an app that nobody gave a damn around me, but my customers in about 49 states and 10 countries loved, but I didn't know one person around me who wanted to touch it. In fact, telling people around me, mostly adults about it (I did this when I was 20-23), would get me fake smiles and agreement of how great it seems to be but nobody wanted to use it, like it couldn't have been great because I was so young. I wasn't judged by merit but by being 20-23 years old. And looking 2 years younger than that.

Of course my customers did not know I was young since I never met any of them; I didn't even use my real name; I talked in e-mails as a 45 year old would, since that was approximately the age of the target market. But this gave me the benefit of knowing that I could create a great product that had some features that competitors didn't even have and a much better user interface, and could kick ass, if I didn't have to put up with age discrimination and dumb idiots.

My guess is having cofounders not only confirms your effort to investors but also each of your parents, and on top of that, it is possible to make much greater progress and cover each person's weaknesses and insecurities with the right team, getting to a certain point in a year instead of three, therefore even further increasing your startup's competitiveness as well as confidence from yourselves and others around you.

I joined a big company where I'm treated well, and think it was a great choice--but of course lost a lot of say and independence that I had before. But a good thing is that I've become used to working with and relying on others, as well as better at talking with people in my own age group! This means I'm going to take 1-3 classes full-time in the Fall as a Junior at a University with a good CS Major, while also working, thus meeting the kind of people I would want to meet for a future startup, maybe even the January-March round of YCombinator, something I couldn't have done otherwise going from a single founder to a multiple founder company--how would I meet these people and learn how to work as a team? The company gave me these skills. (Where I work, I'm the youngest, but I also only have an A.S. Degree and was hired solely by my communication skills and the software I showed to them I already discussed above, so it's college where I expect to find startup people.)

The other problem with doing something alone full-time and for years, is that even though it feels good to know you're kicking other companies asses and getting the perspective of software development from all sides, including business and marketing, is that you'll eventually realize you've become totally behind on the latest technologies, because even if you feel like you're very close to becoming big, you're the one doing all the work and you're always not getting one thing or the other done. (As well as slower than if you had multiple developers.)

So I'm using this time to buy software and training to learn the latest shortcuts and tools to developing art, 3d models, animations, and web sites as fast and efficiently as possible as well as functional understanding of rails, django, and Objective-C such that for any given task, I could comfortable pick a language and just go for it without needing to read things up as I go. I think that, along with a team, is key, as I've already described.

Now, a lot of people are at this point already, having college programming buddies and are ready to start, and they should! I think it's the best way to go. But one-fits-all examples and telling readers they shouldn't bother reflecting, and should always be going for a startup NOW NOW NOW NOW NOW, is doing injustice to many people.

In conclusion, reflecting upon one's past and current ideas based on similar startups when new ones come out can be educational as very motivational, but the author chose not to be objective. In fact, if ideas are worthless, waiting 6 months won't hurt, though of course you'd probably want a fresher idea by then--but at least you'd know that you typically come up with good ideas based on seeing your other ones show up in new startups... and that's another reason it's so useful to contrast what you'd think would happen versus what startups came out.

Also, insulting young people is ridiculously immature and unprofessional. Does David even remember how his company got started--with a bunch of developers getting a feel for new technology designing sites for others, then choosing their own ideas to sell to their own clientele? That's exactly what I'm saying, as well. It wasn't a group of 20 year olds or a single 20 year old trying to create a great product over a period of years. He beat other web site design companies (by basically leaving that market, actually), but he didn't come up with an idea for an app and then start out programming for a random idea he had no experience would be needed. His Startup School speech that one doesn't necessarily need VC's? Very valid; I even transcribed it and posted it on N.YC almost immediately after the speech. His efforts? Excellent. Some of his posts? Absurd.