

Find an open source project that’s coded in your language of choice that you both care about (edit – or that looks interesting to you, at least) and want to add functionality to.
Download a working copy, then, since you’re learning with this, pretend the repo doesn’t exist anymore and you’re on your on with your self-imposed assignment.
Figure out what functionality you want to add, start with changing or augmenting something simple, and figure out where that would go in the existing code, and make it happen.
See if you can manage to Google search your way past any errors you run into, preferably alternating between ai answers and things like stack overflow posts, only instead of copy-pasting the code that errors out (or the solution code you get from ai or posts) actually step through things and figure out what the “solution” code is doing differently and ask yourself why and how that makes a difference or has a different effect from the code that generated the error in the first place. Then decide whether it’s actually likely to fix the error or not. If you think it’s going to? Try using it.
If it works, make sure you understand why.
If it doesn’t, try to figure out why not.
Keep going until you have a working new feature.
Then try a more complicated feature.
After a few of those, try tackling some of the bugs in the repo.
A site that started as a forum for one particular class in one old (pre-dates WoW) MMO.
The population dipped a little when Facebook took off then nosedived again 6+ years later when reddit started getting super popular, but there are still a handful and change of us around with old friends dropping in to visit here and there.