One of the big killers of developer upskilling is unrealistic expectations.
The fundamental mismatch is that human brains cannot internalize new information as fast as many engineers would like.
This leads to a cycle of aggressive learning, burnout, forgetting, and spinning wheels.
Most people cannot realistically learn genuinely *new and unfamiliar* material for more than 1 hour a day, and even that is generous.
Your brain needs time for new information to sit in the background while it connects to prior knowledge.
Now, you can learn a lot more than 1 hour of *similar* information to what you already know, or 1 hour of *review*. For example, you could learn a new programming language in a weekend if it is close to one you already are fluent in.
If you are trying to learn Rust (for example), and you already know some of it, then it is possible to be productive for 3 hours struggling with it if you have a baseline. That's because a significant amount of the three hours is spent on review.
However, you cannot engage for a long time on a subject that is very far from what you already know. As an extreme example, think about trying to learn Russian if you don't even know the Cyrillic alphabet. Your brain will be cooked after 20 minutes.
The problem is that learning *similar* information doesn't feel as "fast" as learning *new and unfamiliar* material. Many developers place an expectation on themselves that they should be internalizing copious amounts of *new and unfamiliar* information because the space moves so fast.
But that is not realistic.
By *learning* I mean really engaging with the material, not passively consuming it (of course you can passively consume for more than an hour, but that doesn't get you far).