Open Source for Fun, Learning, and Kudos

Reflecting on my career, and advice on getting started

Glynn Bird
Aug 31, 2017 · 5 min read
Askeroids still works! If you have Java and a Unix-like environment with “make” installed, give it a try.

Consumers of open source, but contributors to none

As time went on, the company (and more broadly, the rest of the world) moved from closed-source software with restrictive licensing to free, open-source software developed by the community. Open-source wasn’t a philosophical choice for my employer in the 2000s, it was an economic one.

The future is open

Today things are different. The tech giants of IBM, Microsoft, Google and the like embrace open source not as a means to shave a few lines from the balance sheet, but as a way of shaping software collaboratively. IBM offers open source products “as-a-service” — Apache CouchDB, Redis, MongoDB, MySQL, Postgres, ElasticSearch, RabbitMQ, Apache Kafka, Apache OpenWhisk, Apache Spark, RethinkDB, ScyllaDB, Hyperledger — but more than that, it employs people who commit work to such projects.

The evolution of my GitHub activity.

Open source – your first PR

Developing open-source code can be extremely rewarding.

Open source – your first project

You might then want to open-source a project of your own. It could be an app, a library, or a command-line tool. It could be a fork of an existing project, with additional features that you need, but are not aligned to the direction the original project is going.

  • Is it currently maintained? When was the last commit? Is this a one-person project or a team effort?
  • Does it have a set of automated tests?
  • Is the license suitable for my needs?

Open source – health warning

If your open source project really hits the big time, then you may need to prioritise your own health over the that of the project. It is impossible to maintain everything you write forever. Don’t be afraid to deprecate projects which are now irrelevant or are too time-consuming to deal with.

GitHub as a CV

Hopefully, you will be able to look back at your GitHub profile as a scrapbook of your software development history, and others can view it as a living, breathing “CV”. There’s even a tool to turn your Github profile into a résumé.

  • Does the code they contribute indicate experience in the skills you are looking for?
  • Do the written exchanges (issues, pull requests, comments, and documentation) indicate the cooperative, respectful team player you are looking for?

When one door closes, open a pull request

The difference between today and when I started my career is stark. Sharing your code and collaborating well on other people’s projects is one of the best ways to stand out professionally. So get involved, and may it lead to bigger and better things for both you and the projects you work on.

IBM CODAIT

Things we made with data at IBM’s Center for Open Source Data and AI Technologies.

Glynn Bird

Written by

Developer @ IBM. https://glynnbird.com

IBM CODAIT

Things we made with data at IBM’s Center for Open Source Data and AI Technologies.