This goes beyond just being able to choose when and how long to learn how to program because you get the help and guidance for your level of experience and can advance as fast or slow as you want. You might be really good already with one skill while completely new to another.
We’re all different and have different skills and some topics you will find just agree with you better than others. That’s perfectly normal. You can sign up for a specific class that meets your needs. And you can move to another class when you’re ready.
Have you ever met anybody who was an expert in everything? How about completely new to everything. We all have special talents because there are things that we enjoy doing more than others. Some people are really good at a lot of things but I’ve never met a software engineer who could do everything. Regardless of your level, you will benefit from multiple classes and projects.