This week, I have been on the lookout for some larger fish to catch, that being doing one thing larger than I did earlier than.
My open supply journey to date has been doing roughly easy issues, as a way to get to know the neighborhood higher, and get my instrument data up proper. So, now that I’m pretty assured in myself (when it comes to Open Supply contributing) and my expertise, it’s lastly time to get working tougher.
What sounds extra excellent in my case than implementing a brand new function as an alternative of fixing a visible bug? Precisely! So, my preliminary plan was to search out myself a difficulty that required to write down new code, as an alternative of fixing the prevailing stuff. It was time to search out one thing to work on.
Venture and challenge
After looking for a few hours, I discovered a difficulty that appealed loads to me.
It was in a repo known as Wego Overseer, which seems to be a Discord bot for a particular neighborhood. Chat bots have at all times been one thing I wished to attempt, and this appeared like an ideal alternative!
The issue itself was about implementing a chat ballot function that might be completed through emoji-reactions underneath a message. This felt to me like one thing I’ve been looking for, difficult my expertise and never as simple as my earlier contributions.
My plan for implementation
Earlier than leaping proper into coding, I should study the mission and perform some research concerning the instruments it makes use of, akin to Discord.js, knex, and Objection.
First issues first, I should set it up domestically and get it operating. Then, I am going to take a look at it a bit to sense the best way it really works.
After establishing, I’ll learn by way of documentation on the instruments I’ve talked about earlier than. As soon as I get a hold of how they’re used, I’ll attempt to design my answer, i.e. how the ballot creator UX will really feel, how the ballot will appear to be, what logic it will likely be utilizing as a way to present ballot outcomes, consider different particulars, and many others.
After my answer is trying good on paper, and I’ve a sense of easy methods to implement it, I’ll begin coding. I’ll attempt to create a brand new command first, after which steadily attempt turning it into how I designed it.
Hoping it goes properly!