Ekinoderm
 

Ideas Worth Stealing

It’s widely believed that there’s such a thing as a “trade secret” in software development: some algorithm or data structure that makes your product better than all the others in your industry, and that you shouldn’t reveal it to your competition or else they’ll steal it and out-compete you.  Our industry is rife with NDAs, non-competes and other legal instruments to prevent software engineers from walking out the door and blabbing all of our secrets to the world (or at least to the competition).

That being said, I’m not really afraid of having my ideas stolen by anybody.  The’s because the only true trade secret, from a development perspective, is the actual source code. That’s where the rubber hits the road, and anything less is about as valuable towards actually developing a deliverable product as a first-pass brainstorm session.  The other thing to remember is that there are overpowering forces at work in the minds of most developers that prevent them from stealing ideas, including the “I’m smarter than everyone” force and the “not-invented-here” force.  As computer scientist Howard Aiken said:

Don’t worry about people stealing an idea. If it’s original, you will have to ram it down their throats.

More than likely, you work for a company like Microsoft or Apple, which closely guards anything that it thinks it can monetize, and you, and the contents of your head, are treated accordingly.  Microsoft has its research division which publishes some pretty interesting stuff, but you’ll never see a paper describing, for example, how SQL Server optimizes queries down to the last detail.  These are things that they’ve worked hard to develop, and they keep to themselves.

On the other hand, you have a company like Google which has made public a number of details about its internal operation, including the PageRank Algorithm, Map-Reduce Architecture, Google File System, and a whole slew of other topics. Of course, many of these algorithms are encumbered by software patents (which may or may not still be valid), but they aren’t “secret,” per se.

What is a secret is the implementation. Just because I know about PageRank and Map-Reduce and GFS doesn’t mean I can build a Google-killer in my basement; there are a hell of a lot of important details that are intentionally left out in published papers (and in patents, for that matter).  The big ideas are there, but it’s not detailed enough to go straight to a correct implementation.  Google has a big team of really smart people that work on the details all the time, and they aren’t about to walk out the door any time soon, unless the execs at Google really screw up.

That being said, even if I did get together a functional version of all the key technologies that make Google work, it doesn’t mean that I’ll have a successful product.  In fact, what makes most products successful isn’t the core algorithms and data structures (the computer science part), but all of the details, polish and integration between these components.

We often necessarily focus on only one aspect of a project to the exclusion of others, and this tunnel-vision can dictate how we evaluate whether or not the project is a “success.”  For example, if you’re working on optimizing a search algorithm, your metric for success is the speed of the response.  For somebody else, the correctness of the search results may be their primary concern.  No matter your focus, there ultimately has to be a compelling product that links all of these components together into a well-oiled machine.  Your search optimization may be the single greatest development in search algorithms in the 21st century, but, if your product doesn’t do anything useful for anyone, that’s not going to be worth much in the long run.

To my mind, functional, polished products are the true “trade secrets” that good companies have, and they aren’t the kind of thing that someone can just walk out the door with.  So, I’m not that worried about people stealing my ideas.

One Response to “Ideas Worth Stealing”

  1. 1
    Donny:

    Excellent observation, and one I wholeheartedly agree with !

Leave a Reply