Hi Anu! I'm glad you enjoyed it.
I'm not contributing to open source, so take my perspective with a grain of salt, but I'll still answer your questions.
Q: Could you share a practical roadmap on how to start contributing effectively — like what should be the first steps after finding a repo?
A: I'd start by defining what "effectively " means. Previously you mentioned that "I’ve tried contributing multiple times before, but I often felt lost and couldn’t stay consistent". What is your overall goal? What do you want to achieve? Gaining experience? Building something? Your overall goal shall guide you as a compass, and you may measure "effectivenes" as how much your actions advance you towards it.
Q: Also, how do experienced contributors usually understand large codebases
A: Previously, you just learned them over time. Now - you can ask AI to explore the whole repo and sum it up for you. For example, take another look at my demo where AI makes an article for immich repo - you could alter that prompt and build a CONTRIBUTING.md that will outline what the codebase is, what patterns contributors should follow, what steps should they take to contribute, and etc. This exploration could be your first step. What is nice about open source, is that it's mostly hosted on Github, and it provides you a lot of AI tools (many of which are free) OOTB. Generally, with experience you'll see that there are common patterns and architectures in software, and tech stack itself is just a set of tools to implement them. Once you get to that point you'll be much faster in grasping new codebases.
Q: and stay consistent while contributing?
A: This fully depends on your goals. The best routine is such that you can keep doing, so define your goals accordingly. Start with small steps that you'll be able to measure as success, and grow as you get more confident.