Categories
Game Development Miscellaneous Programming

Keeping Secrets

A few years ago I met my family for lunch after they’d taken off to get me a birthday present. During lunch I was making guesses about what they might have gotten me and my son said, “Well, we didn’t get you a ukulele, that’s for sure.” My wife and I busted out laughing and he didn’t get what he’d just done.

He was only about 9 years old, so you have to cut him a little slack — and that’s been the punchline for many family jokes over the years.

But birthday presents aren’t the kinds of secrets I’m talking about — you can keep those and not be a loser.

What I’m talking about is IP, or “intellectual property.” Specifically, when related to software.

I use a game development framework that requires my system to “phone home” when it compiles and at least some of my source code is sent to the company server to turn into byte code, compile, or something. Then it comes back to my system and finishes.

While I don’t know exactly what it’s doing on the back-end, I don’t really care — it’s what’s required in order for me to benefit from using that framework so I put up with the very minor hassle.

But recently someone wrote a blog post about how that’s so dangerous because the company could steal your code and use/sell it as their own. Ohhh!

Paranoia much?

First, the code you write is covered under copyright so you’re protected from a legal standpoint right off the bat.

Second, do you really think you’re so clever that someone wants to steal your code? Really???

Here’s a news flash. You’re not. I don’t care who you are and how great your code is, you’re just not that clever.

If you write code that does X, Y, and Z, me and a thousand (million?) other programmers can write code that accomplishes the same thing.

In the (almost) three decades that I’ve been programming I’ve run into two main kinds of programmers:

Secretive Sam – He comes up with a unique way to accomplish someone and holds it tight to his chest, not letting anyone catch a glimpse of how he does it. He keeps secrets because he thinks it gives him a competitive advantage — he can do something that nobody else can (he thinks).

Open Opal – She comes up with unique way to accomplish something and tells her programmer friends, sharing her code. They look at it and tell her how awesome she is — and then someone tweaks it to make it a little better and shares that back with Opal. Now her code is even better and everyone else benefits, too.

When it comes time to find a new job, look for new team members for a project, etc., Opal is going to be a much better catch than Sam. She has a network of peers to work with, and Sam has.. himself.

Nobody Wants Your Code

Worrying that someone is going to steal your code is such a psychic energy sink. Every programmer out there has more ideas and projects than they have time to work on.

And the idea that a company with VC money behind it and a multi-year plan for world domination would steal your code so they could make and sell their own apps is laughable. Do companies steal? Sure. But nobody’s going to put their company on the line for trivial things like source code for an app.

But maybe it’s a rogue employee and not the company itself who’s going to steal my code!

Remember what I said before? You’re not that clever, nobody wants your code (or my code). And *if* that happens then you can start yelling about it.

Until then, stop trying to cause trouble and get back to coding. Not every shadow is a boogeyman waiting to jump you.