DEV Community

Jonas Brømsø
Jonas Brømsø

Posted on • Updated on

Blog post: A Little Hacktoberfest Fairytale

This afternoon something wonderful happened, that I want to share with you.

I am a user of a open source project named: docker-compose-wait. The story about how I use it and why I will save for another post. Anyway I use an older version of the project, which is a shell implementation, the author has since ported the project to Rust and I have stayed on the old implementation, simply because it did what I required and I felt safer with a shell implementation.

When I use open source projects for work or they hold special significance I often sign up for notifications on the project in question - I had done so for docker-compose-wait a long time ago and practically forgotten about it, once in a while
a mail would tick in, I would skim it and the delete it, often I would go to GitHub an unsubscribe, when a project would no longer be of interest or the communication would not hold value any longer.

Yesterday an issue ticked in, somebody requesting a new feature, a pretty basic one, but a new feature nonetheless. The maintainer responded positively to the request and informed that it would be accommodated when time permitted.

I have been playing around with Rust lately, following some online video tutorials and are working on a pet project of mine where Rust seems to be the perfect fit for an implementation.

For no apparent reason I reopened the issue, scanned the repository and source code and it struck me

I think I can do this

With the online tutorials I got my Rust toolchain set up, so forking and getting the docker-compose-wait project set up, was a walk in the park. And after some coding a and back and forth with the compiler I got a working solution and I sent of my PR.

A few hours later I received a response, a positive response requesting some changes to the test suite.

I played around with the test suite a bit and got it to work quite fast. I then ventured to try to extend the test suite and I ran into some issues with tests and concurrency so I backed-off commented out the problematic code and described my observation, committed and pushed.

And now my contribution is a part of the upstream project.

A few things that made this possible are:

  • A positive and welcoming attitude
  • A very well structured code base making it easy to navigate and understand

ufoscout you rock!

Top comments (2)

ben profile image
Ben Halpern

This is awesome!

jonasbn profile image
Jonas Brømsø • Edited

Hi Ben,

Yeah it was a very nice experience and quite the confidence booster.

The Rust community in IRC (#rust-beginners on Mozilla servers) are also very welcoming, I have frequented them on occasion with questions, when trying to get my head around some of the stuff I am experimenting with when trying to learn Rust.

One of the important takeaways is also on how you write and structure your code for consumption and contribution. The lower the barrier, the higher the success rate I guess.