Open source by default
Using open source code in projects is a common thing. I do it. Most of us do. But what is "open source" by default? Well, I've heard about this for the first time at MCE Conf 2016 - "Open by default" panel. It's an idea to make software open by default and close it only if needed. There are many reasons to close it of course, but sometimes we do it unnecessarily.
While playing with my side projects I often found myself cutting corners because of the fact that I knew I was the only one who will have to handle generated mess. I was not afraid to do it, because I knew that sooner or later I will abandon the project and move to another one. New one. All of my old projects would just pile on my private repositories and eventually get deleted after some time.
That's why I decided to take the "open by default" approach. I think that it will help me to write better quality code. And prevent those "rushes" when I wanted to finish the side project asap. After all I think it's pretty hard to simply allow bad practices when doing something for yourself and disallowing them for other cases. "Practicing bad practices" is not good. Your practices are what defines you.
Despite some bad practices and rush at the end of the project, I've decided to open source an app that I've written some time ago - "Gdansk Numerek". App presents current state of queues in Gdansk's city halls. Why the whole app? I've started playing with some new things (It's a miracle I've finished the project). When you start doing something new, it's pretty hard to come back to some old code in a free time. Why playing with old, while you've got so many cool things to explore, eh? I know I'll have trouble maintaining the app, so if anyone comes from "Code for Poland" or "Code for all" community and decides to play with my code... That would be great!
Of course sharing the whole app is a very, very rare case, but you can always share some components or solutions that you create anyway when you build it. I think that changing my mindset on how I treat my side projects' will have great outcome. More modular code of better quality.
So... Fear not! Open source you code. Don't be afraid that you're not good enough, don't let your projects/solutions die lonely as you forget about them. There are so many fears that hold us from publishing our work and in the end we find out that they are not valid at all.
This article is cross-posted with my my personal blog.