Closed and open source: Making it work within a company

When I arrived at Cubyn, about 3 months ago, I discovered something that is now pretty usual for me: we’re using Github.com. Nothing unusual, pretty much any start-up I’ve been around these days in Paris is either using Github or Bitbucket.

What I did not expect, though, was checking the repos to see that we had PUBLIC ones. And somewhat lengthy ones. In a company? What is going on?

Someone must have made a mistake.

My code is valuable and there is no way I share it.

Companies like to think that their code is valuable.

It is time spent by developers, after all, and like everyone says: time is money. Moreover, we wouldn’t like any of our competitors to take a peek at what you’re doing and grab that sweet technological advantage you’ve built over time. And what if someone discovered a security hole in our API?

Make a module, save a developer

Now, let’s think this all over, but with the direction Javascript is taking as of 2016. With the arrival of CommonJS and Require as “standards” of the specification, every single thing in our app works as a module. Or tends to. But that’s definitely what you should aim for.

It’s no legend: writing the same logic twice is a waste of time. And you know what’s funny with modules? They, most of the time, represent such a tiny bit of logic that it is reusable if done right, in another code.

Working with modules, as a developer makes you more valuable in the long run. And furthermore, means that you managed to take out the business logic out of the code.

Okay. Now what?

Without knowing you solved two major problems with open sourcing some of your codebase.

  • You made it modular and therefore reusable for anyone else.
  • You took out the business logic, and therefore safer against competitors.
DO YOU REALIZE WHAT YOU JUST DID?

It’s good for you. And good for everyone.

But the real interest lies in the fact that ANYONE can now make your code better. And funny thing: you can most probably reuse the changes that someone might contribute to your code.

And given that your code is used by someone else, they might find bugs inside, security holes, or whatever grinds your gears.

There, we had 3 issues, and having open-source in mind when writing code actually solved them all! And there are many companies out there doing just the same: Twitter, Facebook or Google. Bigger companies can do it, why can’t you?

What are you waiting for?

Create a NPM account and publish all these sweet little modules! You’re bringing more ammo to the Javascript community and to the biggest public package manager in the world: npm.

Check-out Cubyn’s public npm repository or our Github account and give us feedback. We like it when you fork us :)

Like what you read? Give Valentin Roudge a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.