Technical Co-founders Are Overrated
lederhosenlabs.com
lederhosenlabs.com
To me, the most valuable insight in this article isn't that a non-tech founder needs to get super-technical. Rather, it's that he needs to demonstrate a willingness to do everything he possibly can. That is the secret sauce. It's not about being able to talk shot for shot with a super-techy coder. It's about not being the kind of person who throws his hands up in the air and sets limits to what he can or can't do, or will or won't do. Being a successful entrepreneur means doing anything and everything it takes to get to success. And it's a serious red flag when the co-founder, from the get-go, is already broadcasting that he's setting limits for himself (such as not even attempting a prototype).
So big kudos to you for posting this. This is awesome and inspiring.
I think the world would be a healthier place if we didn't place so much ... emphasis ... on the idea of "do whatever it takes to succeed". Just look at what Airbnb did to succeed, for example.
I'm truly serious: emphasis on "do whatever it takes to succeed" results in people doing illegal and immoral things to succeed, such as what Airbnb did.
This phrase here is meant to spur the reader to do the right sorts of "anything": being disciplined, getting out of their comfort zone, learning, taking risks, getting their "hands dirty" in good honest work, hacking and building.
The author cannot be blamed for those who act immorally because they lack ethical training or discipline.
It was illegal because it violated the CAN-SPAM act: http://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003#The_mechan... .... CAN-SPAM defines a "commercial electronic mail message" as "any electronic mail message the primary purpose of which is the commercial advertisement or promotion of a commercial product or service, including content on an Internet website operated for a commercial purpose."
(The fact that they weren't punished for their crimes illustrates the hypocrisy of our legal system, but does not change the fact that they violated the law for personal gain.)
It was immoral because it violated Craigslist TOS, and because they portrayed themselves as females in order to make other females feel safe using their service.
"In particular, it does not require e-mailers to get permission before they send marketing messages"
Can you point to a single case where someone did what AirBNB did and got a conviction?
Also, violating craigslist TOS is debatable, pretending to be females is not on it's face immoral.
Most rational people don't give a flying toss whether Airbnb existed.
It's pretty obvious the ends did not justify the means. They're a reservations website, wake up, sniff reality and stop drinking the koolaid. Is it ok the aggravation they've caused to small business owners and the total lying. And that's ok because they did a few cereal packets once? Because they're 'naughty'?
They are a very innovative company, and I for one would vote for them to exist if it were up to me.
As for rational people caring wither Airbnb existed, I'm pretty rational and I think it's great. They've enabled a lot of microbusinesses. People who have a spare room can rent it out and make some extra cash. It allows people to travel more, and still make rent. It allows people to rent out space in tough times to make extra cash. It allows people to find cheap places to stay when they can't afford a hotel room.
I think it's done a lot of good. I'm confused where your negativity is directed. Are you just angry at them for spamming Craigslist?
If everyone who thought they had "a better service" and were thus justified to send "a few emails to Craigslist users" the utility of Craigslist would be negatively impacted.
On that basis I would think the "rational person" might not find that sort of behaviour acceptable and would vote to preserve the resource.
Imagine everyone is working really long hours for a couple of weeks to get something important done. You don't make it to the gym, miss a yoga class, get less sleep etc., eat junk food and get irritable. You're unpleasant and insulting to some people for a few days. Is that good? No and it should and can be avoided even if you're working long hours. If everyone did it all the time work would suck. But.. we excuse a certain amount of this if it is minor enough, if it is out of character and if it is understandable in some way.
BTW, I'm not trying to express an opinion here, just clarify what I think is a common position.
Personally, my sole objection is that they knowingly violated the law for personal gain.
Is that excusable? Pragmatically, yes, but only because we tolerate it.
I would hate to live in that kind of world (even though we do), so I speak out against this behavior.
Interestingly, you can hold this position and still speak out against it. Stretching my analogy: If Joanne is being a bitch and you don't know her well you can talk about her behind her back. If you're usually cool you can tell her to get her cranky ass to yoga and watch the fucking lip.
It's not that it isn't wrong or bad. It's just a question of thinking about it socially (the way people, though not necessarily the people of this site, are built to operate) rather than judicially/bureaucratically. Socially we take into account grey area, degrees, mitigating circumstances, and sometimes the voluptuousness of Joanne's buxom. We don't even have to be 100% consistent.
We the people (HN readers, Airbnb sleepers, etc) are not Interpol, we are humans. We don't always have to be completely objective and consistent when deciding how to feel about something. People on this site are smart, but I do have a lot of forehead smack moments when being people becomes such a struggle for some.
It's not a bad attitude to have towards most aspects of life really.
Other times if you are hiring a large technical team (5 or more people) to accomplish what you want to accomplish then the technical co-founder is not as important, and it's more important to hire an awesome team of technical people and have the money raised to do that.
However if you have moderate or complex technical requirements and you are starting the business with 1 or 2 people and no staff, then a technical co-founder makes more sense.
I guess it's pretty silly to start a big project with people you don't trust though.
Do they understand the true cost of a highly available environment? Do they understand why feature development takes so long?
Even people with a limited technical background make those. In fact, they're probably worse, because they think they understand something but really don't.
Have two founders from different backgrounds, with a small understanding of the other is good. But the key is to understand their own knowledge boundaries and let the other take over where it matters. They need be able to play devils advocate to each other just enough to come up with the right solution.
I vote for "causing friction internally and hindering productivity."
But definitely more realistic.
C'est la vie.
I understand your article wasn't actually about that and it was more about the self-empowerment you found through doing it yourself. I'm in full support of self-empowerment - but I will say this: technical cofounders are strictly not overrated. As has been suggested many times in this comment thread, a balance between a good business cofounder and a good technical cofounder is a great way to do it.
A one-man technical founder can get along without a business person or even outsourcing to a business consultant; a one-man business founder cannot get along without a technical person or without outsourcing to a technical contractor/consultant. Additionally, I applaud your self-driven effort, but it is a common mistake to think you can take over the world after 6 months to even 4 years of self-taught programming experience.
As a business person, you did well by learning just enough to build a prototype, from there, you should be able to attract a technical cofounder that has the skill and talent you are ultimately going to need in the long run and probably don't have the time or desire to pick up on your own.
Much better decision than hiring someone that could do it in a day.
There are arguments both for and against taking a few months to do it yourself when someone could have done it in day.
He invested his few months and now he has the credibility and experience to implement the prototype himself, talk to technical founders, manage contractors and see through bullshit.
On the other hand, if this was all his prototype was, he could have paid someone hourly rate to build it and then launched early and improvised. He could still have learned on his own time - he would have saved a lot of it by trading it for some money.
He is no longer in the path of becoming a PHB.
Anyway, great blog post. Loved it!
[1] My assumption!
The situation is kind of a mirror of the whole designers that refuse to learn how to code thing. If you look, even if they don't do it, the designers who at least learn how html and css work turn out work that is leaps and bounds better web design. Likewise, business type people who learn how the technology they're building their business on, run companies that are leaps and bounds more efficient and potentially leaps and bounds more profitable. (not to mention that much better to work with)
Although, I wonder if Mint might have some issues with the domain/name.
Sidenote: I should share this to everyone who tries to get me to join their "$1b idea" companies and the ones willing enough to follow that article might actually get somewhere.
I do think the idea of "learning to code" to start something is pretty silly, just like the idea of "learning to sell" is pretty silly. Yes, you can learn them while starting a company but the process will be painful. Get advisors, mentors and possibly job experience in areas where you are weak instead of burning your precious start-up time on learning something new.
Not to mention it gives you a better understanding of the foundations of your company and might even get you some bonus points from your technical team (as long as you don't start messing around with their code).
(Doesn't seem like I can link to it, so I'm pasting - and truncating, so I encourage you to read his full comment):
Most coders are autodidacts. The ones without a DIY ethos drop out pretty quickly. Frankly, the reason the tech side feels free to give the business side a lot of crap -- other than the fact that you guys make more than we do, in mysterious ways unimaginable to us -- is that the business heads tend to lack that DIY drive to figure it out for themselves. Basically, wasting our time with things they could google, or learn to do, if they were as diligent as we are being (and we, being paid less to do more, feel a right to gripe). But you don't sound like that; actually, you sound like you took the hacker mentality and applied it to business, which is what we'd all like to do. SO, bravo. The fact that you did that is great. Don't rest on your laurels (or your co-founder); keep improving yourself.
[...]
The most important thing to remember if you're going to delegate -- whether it's hammering nails, making pizza dough or writing code -- is that the guy with his hands in the pie has the power to demolish you if you don't understand what he's doing. And lives by the sweat of his balls. So buy him a beer...and never consider anything to be magic. If you do, you've just put yourself in the dangerous position of not being able to fix it when it breaks down.
This is the Right approach.
I think the biggest roadblocks occur because a non-technical founder doest have the knowledge to properly hypothesize and test his business to practice theories.
What's better is if you have: - A product person who's done product management, product marketing, user experience and design. Ideally they have a CS background and can understand technology. - A technical person who's a generalist and can code things up from front to back. They should also have some sense of front-end design as well as product.
BOTH needs to have some business sense.
By having product/technical overlap, they can work together to create an elegant solution both in the product sense as well as the technical sense. By both having business sense, they can create a product that fits a business.
A business person with no sense of product is not a cofounder because they can't scope anything out. Just having ideas and describing a solution by mouth or pointing at another website and saying "do this" is not cofounder material.
A coder who needs to be told exactly what to do for anything and has no feedback or insight on the product/business is also not a cofounder.
These aren't hard and fast rules but is my conclusion based on my entrepreneur experiences.
Great product/business people are more than just ideas. Great technical people are more than just "coders."
(Context: I'm a journeyman-level technologist, trying to figure out where the point of diminishing returns for becoming a better one is.)
A competent tech founder will inherently understand issues of scalability, security, data structures, and so on. By applying this knowledge, you can iterate faster and not have to stop for a costly rewrite because the site was crushed by moderate traffic, leaks private data, was hacked, etc.
Given that you're going to want to get the technology right before you launch, it's generally the role of a founder to tackle these issues. The title "founder" implies a certain level of equity participation beyond that of an employee, but it's all arbitrary anyways.
I'll take a shot at this.
There is a large gap between "good enough to get the job done" and "stable, maintainable, and secure." It's important to get the kind of technical person who has a solid grasp of the proper way to develop software. A cofounder will care a lot more about building a lasting, maintainable business than random programmers will. Someone has to take pride in the codebase and take responsibility for auditing others' work as well, and it's hard for me to see a non-cofounder really caring enough.
A technical cofounder will be much more invested in the enterprise when things get tough, and in a startup they will! Something will break, someone will attack the site, traffic will peak unexpectedly, and as a founder you will want to know that you have someone who is capable and willing to handle those issues when they come up. A contracted programmer certainly will not fix issues like that cheaply, and even an employee is likely to seek other options after a few such incidents.
If you want to build a thriving, lasting company while minimizing difficulties, there is no substitute for a good technical cofounder.
Edit: While writing my comment, biot explained my first point in a more concrete way.
I don't think it's about overrating or underrating, it's just that technical co-founders don't want to work with people who haven't even tried to pick up the technologies. No one can say which one is more important, technology or business, because both of them are important.
Therefore, saying that technical co-founders are overrated is a bit irrelevant. We can also say that business co-founders are overrated because technical co-founders can pick up the business skills as well?
The world needs both aspect of skills. No matter they are overrated or underrated, both kinds of co-founders need to know at least basic understanding and sense about each other's.
In general what happened with many (Pascal, Leibniz, Schickard, etc.) is that they had an idea yet the current state of technology and skilled workers was not adequate.
So, many of them learnt how to do build their ideas themselves. They learnt the necessary skills. From the textbook:
".. he designed his first machine and contracted some local workmen for the construction work. An unworkable instrument was duly delivered. As many were to find after him, having a good idea was not enough, one also had to master the arts of tool making and engineering."
My recommendation to the business types is to spec it out. Even if coding is beyond you, using something like Balsamiq to create a prototype that you can workshop, usability test, gauge interest in, etc. is a big help. Even if you can't convince a techie to join you, they'll be more likely to help point out the parts that will be easy or hard to implement, which can help define your MVP and estimate startup costs if you decide to outsource it.
Lacking knowledge in these two things will not hinder an early startup website much, so it's easy to go ahead and build something without expertise in these domains.
The only thing that sucks about these situations is that once your company takes off, the engineers you hire will be left to maintain/fix the mess that the non-technical founder made - which can be quite miserable for the engineers.
I took the same route. I picked up a ruby on rails book and just started building. I have experience with C++ and Java, but I haven't done any major coding in a couple years. I'm now building out my idea and it feels great not to have to depend on someone else to drive development.
Actual execution is where the technical cofounder comes into play.