I can counter that with a real world example. I've done a startup that succeeded and got a pretty neat product out (which btw. included FPGA programming, hardware, mobile technology, and web technology - not exactly easy stuff..) and we had contractors do everything. No hackers aboard. And it worked.
I get the feeling that there's an exception to almost every startup rule.
In my personal experience, I've never seen outsourcing work well, or really work at all. The first startup I worked at spent $300k to setup an office in China, paying their developers about $10-15k/year. It would've been a great deal, except that the China office produced nothing and sucked up the complete time of both the CTO and chief scientist so they couldn't get anything done stateside. They would've been far better off writing the code themselves.
I see your point, and I think that I'm probably one of the few people that have seen it from both sides - allow me to explain:
The startup I talked about above was some years ago, and I had no idea how to program anything. It worked out because we were extremely persistent, and simply didn't take no for an answer. A year ago I thought that it might be a good idea to actually learn to hack, and so I set about learning it. Now I'm doing a web-based startup and I have to admit that programming it yourself, and knowing what the heck you're talking about gives a number of advantages:
1) your dependance on external partners is minimised
2) you can see what features are trivial to do, which are hard, and which are just impossible.
3) your product becomes better because it is what you want, not someone elses interpretation of what you want.
4) you don't need a lot of capital, just a lot of time.
For people that do try to outsource, the crucial question to ask yourself is "What do I bring to the table that a hacker might need?" I chose to partner with a non-technical friend (who ended up quitting, but at least he gave me full ownership of the startup), because this friend was adept at dealing with people and had connections to several possible angel investors. These are aspects of the startup experience that terrify me, and so I was more than happy to let him deal with them.
For your experience, persistence and not taking no are both really important to startups and very difficult for many technical people. So you added some value that a hacker couldn't get by just going off and doing the same thing on his own.
In the startup I mentioned above, the founders were all technical people and didn't really add anything of business value besides that. They were outsourcing because it was cheap and out of a misguided assumption that they needed a big team (and probably because they were spending Other People's Money). They would've been far better off writing the product themselves.
I don't know enough about drinko to know what s/he brings to the table, but unless it's a lot of sales connections to potential customers, it'll be hard for a good programmer to justify spending time on her project vs. all the other projects out there.
I think that what drino is bringign to the table (this is pure speculation based on the original post) is knowledge of the domain, and persistence. If she is good at selling the solution then I think she has a good chance of succeeding.
An overall note on your post: I think that when you break it all down there are basically only two things that matter in a startup: 1) having a product. 2) being able to sell it. Often the people that are good at making products are terrible at selling them and vice versa. So you certainly need good hackers, but you also need great salesmen. And both of them need to be pretty persistent, since they're facing tough jobs.
> I get the feeling that there's an exception to almost every startup rule.
Well, it would be a lot easier if it were just a collection of rules to follow;-)
I'd be interested to hear what mixmax did, in what field, in order to succeed without technical people, although it's mainly academic interest, as I'm definitely "technical people" myself.
More data points: I've had experiences with only two startups which outsourced their initial code - and both regretted it deeply (ended up in complete rewrites).
I don't think you can blame outsourcing for that exclusively. Most startups rewrite their code multiple times, to track design changes. OTOH, if it was a rewrite motivated by code quality issues, I can see what you mean.
I and a couple of friends of mine did the technical work for a startup on a contract basis 2-3 years ago. We were working in our spare time, and it seemed like a fun project, and a good occasion to learn Rails.
Of course, little did we realize that they were planning to pay us with money they hadn't actually raised yet.
We did end up completing the working demo for them, but basically left after that because they weren't paying us. They had the demo they needed to keep pitching it to investors, but it took a lot longer than they had expected. A year or so later, they had apparently raised more capital, because they launched a beta from a different technical team that had apparently rewritten the site from scratch in PHP. They have since unlaunched, though the site still offers to let you know when they launch.
If you can perform technical work yourself, you have the ability to keep working on delivering the product you want to deliver without draining your cash reserves. You can take a day job, live in your parents basement, or whatever works for you that allows you to keep building your company.
If you can't perform technical work yourself, then the minute you run out of money, you lose the ability to work on your product. That gives your project a much higher risk of failure.
We outsourced initial development of a prototype, it cost us little money but much time, and the quality of the output was appalling (from both a user and a technical perspective). It was functional on a very pedantic level, but mostly useless.
Since fallentimes just asked the same in an e-mail I can copy paste it here :-)
Basically it’s an advertising display. The way it works is that you have a motor with an attached circuitboard that has a row of RGB LED’s attached in a line from the center and out. When you spin the circuitboard and modulate the LED’s in the right fashion you can create the illusion of a display that’s hanging in midair. This is pretty computationally intensive for an embedded application (72 RGB LED’s that each need to update roughly 5000 times a second) so we used FPGA’s for it. The whole contraption has a built-in GSM phone module, and can communicate with a central server. The idea is that you take the display to a bar or some other outlet and plug it in. It will then automatically call in to the central server and request updates. Each display has a unique ID and thus it is possible to create content and advertising for individual displays, or groups of displays. If for instance you want to advertise in a certain part of town you can buy advertising time on only displays in the part of town you’re interested in. There’s a webbased tool for doing this.
So it can be done.