Monday, January 29, 2024 - 10:49
  • Share this article:

You’ve been in the software industry for quite some time, right?

I was a developer in some capacity for well over 30 years at ExxonMobil. I retired in June 2023. I spent a lot of time at ExxonMobil working in the polymer science lab. I got started working on infrared spectroscopy and using my IT skills to process spectral data. I also spent eight months at a small telecom company early in my career. I did a lot of C++ work and in telephony applications there, which was a nice learning experience, though I ended up going back to ExxonMobil. 

Along the way in my career though, I got more and more interested in Java. I started the Garden State Java User Group in 2001. Of course, Java was under the auspices of Sun Microsystems at that point, and it wouldn’t be much later until I first got involved with open source. 

How did you first get involved with open source?

I didn’t really make my first plunge into open source until 2018. By that point, I had the years of service that I could retire, and I was looking around to see what else I could get involved with. I’ve done a lot of database work in my career, and I really do love it, so that’s something that has interested me. 

My first point of contact was experimenting with a Micronaut script, but it didn’t work. So, I did the usual process of submitting a pull request, which was accepted. Then, in 2020, the user group got involved in the MicroProfile project. I’ve been interested in MicroProfile since around 2016. I was really intrigued by how the project started with three JSRs and evolved with cloud-related specifications developed by the Java community. By 2020, the user group finally had the funds to participate in the MicroProfile Working Group. From there, I first got involved with the Jakarta NoSQL specification before getting involved with the Jakarta Data specification. 

My interaction with open source was really both from a user and contributor perspective. Like many people, I tried using something, it didn’t work how I wanted, so I started contributing to fix that. But I also just wanted to help out and feed my passion for database work. 

What has that experience been like?

I started contributing in 2020, and by 2021 I was a committer on both projects. It’s been quite a rewarding experience. It’s very satisfying to be a part of a team, even just to the point of attending the meetings. When you do get to put a release out there, it’s a great sense of accomplishment. 

Plus, it’s a great opportunity to learn from people with different skill sets. One of the really nice things about working in open source is that you work with such a huge variety of people, all of whom have their own specialty. And not too many open source projects happen in a vacuum, and certainly the Jakarta EE ones don’t. Working with other vendors working on compatible implementations has been very interesting, and they’ve had lots of good input on how we can improve things, especially the documentation. 

What have your biggest challenges as a committer been?

Honestly, the main one is time. I figured once I was retired, I’d have more time to work on things. But you can always figure out how to fill a day. I committed myself to a lot of other projects, and the reality is that it’s a lot to juggle. 

And if you’re already working full-time, it’s important to recognise that being a committer is a significant time commitment. Fortunately, for many companies, giving their developers time to contribute to open source projects during working hours is pretty common. But it’s not always going to be the case. 

Any advice for someone considering getting more involved with open source?

There seems to be a bit of a misconception or myth that becoming a contributor means you have to commit code. That’s far from the truth. 

First and foremost, documentation is a hugely important part of any project and a great area for a budding contributor to help out. There are a lot of little things as well. For example, my first open source contribution was just fixing a script in Micronaut. 

So, if you want to get started, go to the GitHub page for a project you’re interested in, have a look at the issues, and see what interests you or what you think you could help with. Even just familiarising yourself with the GitHub process for submitting pull requests is a good step towards contributing or even committing someday. 

Open source is great for learning. It’s something I’m happy to be a part of, and I think it’s a very important component of software development.

About the Author

Michael Redlich

Michael Redlich

Michael Redlich is the lead Java editor at InfoQ, the founder and co-director of the Garden State Java User Group, a contract developer advocate and technical writer at Payara, and a member of the  Jakarta EE Ambassadors leadership council.