The day I decided to open my code

About 10 years ago, when I started programming(okay I started doing php 13 years ago, but we don’t talk about the dark ages) I remember reading about Open Source. I was curious. Why would anyone want to share their secret? I was young and the code I was making meant so much to me. It was written BY me. I was proud. Even though the code was bad. To me, it meant revealing the secrets, if a vulnerability was present, could be exploited. I didn’t see any advantages and did not understand the interest.

Stepping into sharing

Fast forward to a few years ago(maybe 6). My point on open source has changed a bit. I understand the concept and why people would do so. By then, I had a few time the occasion of posting on forums and helping other as well. When you have a problem, you find out quite fast that explaining the problem without showing some code, at least a Minimal, Complete and Verifiable example. I remember the first time I showed some code, I was scared and ashamed. I thought people would judge my code. God was I wrong. People were friendly, helpful. Telling me what was wrong, but also what was good and how I could make it even better. This was my first step into this world.

Open sourcing my code

In the last year, I took the decision of opening most of my projects. What has changed? Well for one, I realised that the hardest judge is always ourselves. Sure, there might come someone who will judge your code and treat you like nothing, but that’s the kind of people you ought to ignore. So I’ve decided to open the source of projects that dates of 3years ago, and maybe even further. The code is mostly awful, I was learning, there is so many bad practices and security issues. But it’s also the occasion for me to show the evolution of my knowledge through time. It’s also for me an opportunity to update old code and make it crossplatform. A lot of what I did was not crossplatform and mostly on Windows. Now that I know the power of CMake, I just have to update things. It’s also, and this is probably the most important part, the occasion to share code with friends and collegues, to get their opinion and feedback so I can not only learn and progess, but get better.

The advantages of open sourcing your code

There are many advantages to opening your code:

  • Learning
  • Feedback
  • Security
  • and more..

Like I previously said, it’s a fantastic occasion to get feedback from people and to learn. But what about security? How is it an advantage you might ask? After all, it might exposes security risk. Well the truth is, even if it’s not open, someone might try to break through you things. And the chances of him succeeding if there is a security issue are higher than you think. That is if you’re an interesting target. But let me tell you open sourcing your code for security is an advantage. Because if someone spot the security flaw, he can tell you, or even suggest a fix. There is more chance you’ll have help and support than problems.

So go ahead, open your code. No one will judge you, and it’ll only be beneficial.