For getting started I'd pick a project you are already using and are familiar with because your contributions don't have to be code in the beginning. You have valuable context & experience just from having used the code. You see things the active devs don't.
Then see what technology stack they are using and learn more about those. Read everything in the code repository. Maybe try building very small apps with the language to learn how programming works in general. If the repository lacks on documentstion, create it yourself incrementslly when you figure out how things work. That's very valuable for any project.
At some point start reading Issues and Pull Requests in the repository. It will give you a more complete picture as to what is needed and what is being worked on at the moment. Little by little you gain more knowledge and context and little by little you become a more valuable asset to the project.
Time in the market > timing the market