I did attempt Hacktoberfest back in 2021, but couldn't approach it until late October (I ended up not reaching the goal).

This year I was aware of the event and prepared my schedule: time to participate properly!

I know open source needs hands-on all year round, the issue with being employed is that the focusing effect of a single events help you dig some time for it, and deliver something.

My Hacktoberfest 2022 final score My Hacktoberfest 2022 final score 😎

Selection policy

Picking up projects to contribute to was a bit tricker than expected, even when a well-endowed Contribution Guide was available.
Sometimes my idea just didn't click right or I couldn't really approach an issue, proposal or anything relevant on my own.
I ended up following a set of guidelines on my side, split into most preferred ✅, interesting ⚖️ and least preferred ⚪.

  1. Software I could use
  2. Small or early stage projects
  3. Languages: Rust, PHP, Bash.
  4. ⚖️ Mature and/or famous software. Approaching them could be a double-edge sword, because maintainers probably already have a lot in their plate.
  5. ⚖️ Non-code contribution. Tech-writing is an interesting skills, and being able to roll out a readable documentation is an important asset: I do exercise every time I can. 😉
  6. ⚖️ Languages: TypeScript or JavaScript. My opinion is still maturing about this language, plus I need to improve in using both.
  7. Translations. I just don't feel prepared enough to propose translations: I'm really unsure about a lot of things.
  8. Languages: Java, Python. I really need motivation to use these tools outside working hours.

I was aware this could cut me off from some projects available, my bet was that boarding those could be very time consuming and lead me to fail.

What I ended contributing to

aarty

🦀 - Rust 1st PR 2° PR

This one I love using: an image to ASCII converter!

The author was advertising this project for contributions in Hacktoberfest Discord server.

A simple software, well done and usable, it got me the occasion to apply some well-known programming pattern: Inversion of Control.

Rss2Email

🦀 - Rust 1 PR 2 PR

Project name explains it all: give a list of RSS URLs, get an email with the list of articles.

For Antonios, the project owner, the code was as important as the reasoning behind technical decisions and choices.
To me it was important to have another point of view on the learning process and how to communicate in this kind of topic.

composer

🐘 - PHP 1 test PR

If it happened for you to work in PHP in the last ten years, you know Composer by name.
It was interesting to find the repository tagged for the event!
🤔 Oh, they just had help-wanted on test & coverage tasks?

I know writing test can be tiring, even small ones, yet this one was interesting to see how they used the Generators to feed test data.

rust-av/ffv1

🦀 - Rust 1 failed PR

This one PR I failed 😢, after several attempts I stumbled in an upstream bug.
The upstream crate was in the rust-av project too, but I couldn't figure out a working fix.
I must admit I'm not skilled enough to contribute this crate.
I ended up closing my PR because the effect would have been breaking something.

tsparticles/404-templates

🟨 - HTML/JavaScript, 1 PR

After failing the previous contribution I was a bit down in the dumps.
I needed something to redeem myself.
With the month coming to a close and some PR pending, I decided to take advantage of the opportunity and work on an HTML+JS template, this project was for me!

The template gallery missed something seasonal and October-related, this made a good occasion to unfold some 👻 🕸 🕷️ 💀 Spooky Time !

Spooky Template! I find amazing how much free resources we have nowadays

90% of my work was tuning out the particle library, pick a nice themed font and follow the issue guidelines

🔨 Nailed it! 👍

Conclusion

Phew! I ended writing a lot of stuff, and wanted to record the event for myself.
Could you read this far without me boring you? Wow! 😯

I hope everybody experience was interesting and satisfying as mine was 🏆.