Technology stack choice for startups

   edit
Follow


There has been some rants lately going on about “you shouldn’t use .NET (and J2EE)”, and “shouldn’t hire .NET people” (see here, here and here for e.g.)

So Ron went ahead to ask on the alt.net mailing list “is specializing in .NET risky”?

My short answer is: specializing in a single technology only is somewhat risky, as the world keeps changing.

I would never hire a “.NET developer” or a “J2EE developer”, or a “Ruby developer”. I will hire a great developer, and I do not really care which language he used the most lately, as long as he is great in it. Here in delver we had many success stories with great people coming in with having almost no experience in .NET or Java (which are the major technologies we use here), but php/python/c++/whatever instead. Because they are great people, they quickly covered the gap, and became productive in no-time. Because, at the end of the day, even if you use technology A, and you hire someone who is an expert in technology A, then that one would still need time to adjust to the specific paradigms, techniques, and spirit of the code used in your company. So why limit yourself (and to limited people - ones who care religiously about language instead of caring about being great)?

Anyway, this is my take on the specific MySpace story:

I’ve seen the Scoble article on Myspace being killed by MS technologies, and I call bullshit.

It is classic “Not My Fault Lets Blame Someone Else” syndrome.

Specifically, MySpace were driven by bad business decisions (like using a 3rd party package for its core functionality - the ‘social engine’), and bad management and leadership (it is owned by an old-media corporation, which is a firm believer in pre-web2.0 concepts - re the new iPad newspaper that does not allow talkbacks or any other feedback mechnism !?!?!?? )

It has nothing to do with specific technology. Not even with bad system architectures.

As for the “cannot find good XYZ people” - this is again a fallacy. Good (and especially superb) people, which is what you want in a startup (or anywhere for that matter) would always be polyglot. They would adapt to any technology. Skills has nothing to do with a specific syntax, or familiarity with certain libraries. Cuz these change rapidly anyway.

As for the “Hollywood is not a place for startups” - well probably yCombinator is currently only suited for the valley, however a startup that already has a seed investment, and has a reasonably crafted business plan, does not have to be in the “meet all the dudes in the coffee shops” scene. Plus LA is about a couple of hours flight away from the valley, or 6 hours drive.

And people will come work for you if your product is right, your company is great, compensation is good, location is appealing - more or less in that order.

As for “it does not scale” - it is never about the technology stack. It is architectures and processes that do not scale.

My bottom line - choosing the stack has very low impact on the overall success probability of a company, because it has no impact on business decision. What is important is the possibility for a company to quickly adapt to changes, and be able to deliver features and changes as fast as possible so that it could get feedback from users and grow accordingly. So what does matter is the skill set of the first technical person(s) in the company, whichever stack they are most rapid with. Later additions to the team will be made of excellent people, which will adapt to the stack if the product and the company is compelling enough.

so worry about making your product fricking compelling, and your company a fricking great place to work at. Leave religious debates to silly youtube clips.


     Tweet Follow @kenegozi