Week 5 - Writing This Post at 2AM Because I'm Yet to Discover My Exciting Open Source Project
Getting started
By looking through the evaluations, I realized that, to avoid wasting my time, I need to start with the most obvious requirement I have set for a project and work my way down to the least crucial. So, I first look for projects that use languages I already know and can freely use. Then, I make sure the project either truly excites me or, if it’s not super thrilling, at least offers clear benefits (I think either scenario is fine). After that, I usually head straight to the issues tracker to check out the labels; this, I’ve found, is the quickest test for how friendly the community is and what kind of work they expect contributors to do. Finally, after checking If the last closed request was more than a month ago, I note that and decide whether I should keep this project close to my heart or move on.
Once I have five projects noted down, I dig deeper: how often do the core contributors respond? In what manner? Do they have a communication channel? Maybe even a separate one for beginners? Are there issues I could actually help with, and do I even want to work on those? That’s the point where I start doing all the detailed research we talked about.
Excitement
I think my heart will guide me to choose something I might never use in real life, but that just sparks my excitement because of how the community and the topic are approached. Sure, Pandas or Pygame sound like amazing projects to work on (I know Python, and they’re super useful and welcoming), but they don’t exactly thrill me. However, now that I think about it, if I actually got involved, I’d probably find them more interesting—no matter the topic..now I am so confused..but nothing solves dilemma better like actually keep exploring!
Struggles
The biggest challenge will be not falling into a loop of constantly searching for a “better” project. We’ve already heard of stories about students running into core contributors who just stop merging PRs, or finding out they can’t really solve any of the issues successfully, or ending up in a toxic community. I am considering using the “Optimal Stopping” algorithm from Algorithms to Live By by Brian Christian and Tom Griffiths to help me make a decision.