I love programming, but I really love working on open source software. Nothing beats being able to point to something your friends use and say “I made that”, “I fixed that”. I love the idea of shared human effort being combined to produce something huge that affects the whole world. I love being able to point to a tiny, tiny part of it and saying “I did that”. I love that if something doesn’t work quite right, or my use case wasn’t considered, I can just fix it. I love that I don’t have to hope enough people shout about something for it to get onto a strategic roadmap and be prioritised and then maybe months later the change will appear. Software wants to be free, and only through interoperable free software can the really exciting advances come.
That’s not to say that there isn’t value outside open source software. There is. Proprietary software can be useful, change people’s lives, make a real difference in the world too. I write proprietary software full time, and I belive in the mission of my employer and I know that I really am helping people with my work. But only open source software has this potential to go in entirely unexpected directions, to be remixed, composed, combined and moulded to create things the authors never imagined. Proprietary software, by definition, wants to act in the interests of its owners. Open source software wants to act in the interests of anyone who wants to use it. Proprietary software is about money. Open source software is about freedom.
So, I want to work on open source software, but it’s not an easy thing to do. Like so much good in the world, it’s not easy to justify to Capital in the short term. Even though Capital has benefited hugely from it in the past, and even though Capital depends on it being sustained into the future.
I really want to work on open source software though. And to do my best work, it needs to be sustainable. I need to find a way to make my living from this work. This work that I know is hugely valuable, and yet so difficult to sustain. It’s not going to be easy, but I’m determined that I’m going to make this happen.
So I’m setting myself a goal.
Three years from now, I want to be working less than full time on proprietary software, and be doing some amount of regular work on open source for which I am paid.
It’s a deliberately broad goal, because there are a lot of ways this could be accomplished. It could be time dedicated by my employer for me to work on open source software. It could be my full-time job. It could be crowdfunding. It could be something I can’t even think of at this point. But having the goal is important, because I have something to guide me. Having the goal makes it feel like something I can do, and that I can take concrete action towards.
I really, really want to work on open source software.