Wednesday, August 14, 2013

Why Enterprise Technologists Should Pay Attention to Startups, Opensource (and CloudSpokes!)

@singhns - Narinder Singh

I was fortunate to be on a panel this week with Cole Crawford from the Open Compute Foundation. What they are doing at Open Compute is massively cool and also way lower in the stack than I'll ever be comfortable, so my plan was to just keep from saying anything completely insane. Luckily for me, the panel was on cloud overall, not just the parts that actually require you to touch a computer.

What struck me when speaking with the panelists during the panel and after was how powerful two models have been in creating technology and driving innovation - open source and startups.  This is not new. It’s a pervasive idea and so much has already been theorized about it, and yet still, enterprises that try to simulate either get written up in HBR case studies (and not the ones you remember fondly).

So, let me offer yet another theory. Startups and open source succeed because they are ruthless. Ruthlessly focused on only what can make them successful - without any of the fluff.  

When you are a startup, your choice of technology and related process is completely based on what you believe will make your model tick. Vendors lobbying you with nice dinners, whether or not you go with a safe choice, what will make it look like you are doing work, who you will impress - none of that matters if its leads you to a less efficient path. If it works, you do it. If it doesn't, you move on.  

In the development of Linux there is the LKML (linux kernel mailing list) where all major announcement, architecture discussions and debates, major check ins, etc. are put forth. If you put some poorly written patch out there, you will get skewered - potentially by the founder of Linux! (Thanks to Cole for his colorful explanation of this to me.)

Startups fail, open source projects go awry, but it all happens in very public ways. The transparency of these outcomes allow us to see if the decisions that were made led to the intended objective. As organizations grow, its impossible to maintain this. Teams in large companies can behave this way. Some organizations can delay the process. But ultimately, to scale and grow, processes and intermediate layers must be established. Even in the best of companies, these lead to a situation where pleasing your boss, aligning with other parts of the company, valuing relationships over specific outcomes, resistance to doing something unknown (or risky) and just staying on good terms of co-workers over the long run - outweigh the ruthless efficiency you once had. 

This is not a critique of enterprises. As I said, in many cases it’s an unavoidable part of growth. However, understanding it is essential to thinking about your own technology strategy. In terms of evaluating development technology startups, open source initiatives and CloudSpokes give us key lenses into the truth of what technologies are legit and which are hype.

Are you trying to decide whether AWS can meet your needs in a particular area? Look at startups and where they are running to and away from AWS. Deciding whether a javascript library you've never used is ready for prime time? Check the related open source community and its activity/health. Not sure which cloud technology is developer friendly? Check CloudSpokes to see what languages/platforms that developers use when we leave it open ended (and why).

In all of these examples (and many more), you are getting the no bullsh@t view of what’s happening in the market. Its immune from most of the soft factors that enterprises are faced with and vendors try to take advantage of. It’s popular for large enterprises to say, "well that might work for a startup, but we're different." You are different, and that’s exactly why, when the rubber meets the code, your best option is to understand what those whose life depends on it are doing.


  1. Well said Narinder. I never saw this problem through the lens which you used. Guess it was naivety which made me think enterprises want to do what's best for their organizations.

  2. Thanks ! The key is to remember enterprises are still a series of people. The larger you grow the more often their is misalignment between whats best for the person and the enterprise. After all, is it really rationale to think that overall people in the company will do things to harm themselves but benefit the company ?