I don’t optimize for optimum productivity I optimize self-care. For example: I am very protective to get good sleep every day. If I don’t, I feel miserable and I don’t have energy left at the “sides” of my workday to do anything for my own joy. My preferences are probably not applicable universally (depends on your chronotype for example). I get most learning done in the morning. Lately I got into the habit of waking up early (which comes naturally, if you take care of a your evening routine), reading a challenging book for 45 minutes, and then head out for a 5 km run. Self-care, for me, also means learning something new, preferably every day.
Why am I telling this, and how is it connected to your question about growing as a developer? I didn’t use to have this focus on my physical and mental wellbeing. I went straight for the goal of being a “rockstar developer”, someday. My focus (and ambition) has shifted as I got older. I started to realize (and hoped) that my ability to learn and grow as a developer was really limited by this mental en physical basis.
I like to learn from the bottom up. For example: I started to get fomo after everyone started talking about AI, so I followed one of those beginner AI courses. At least now I have a basis.
A while back I bumped onto the book Designing Data-Intensive Applications which kept me going for a few weeks, to learn about databases, in a way I never knew before (I think I got the suggestion on this forum).
Right now I’m going through this fantastic book Crafting Interpreters, that teaches to build a programming language, from the bottom up. I got the urge to get into this rabbithole, after being frustrated not being able to follow all the fuss and discussions around the exciting development in the gleam language (which I got introduced to at FOSDEM last year).
I have other “big” challenges queued up (e.g. going through the classic SICP, solving the Mazes for programmers book with LiveVIew, like @angelikatyborska did here, and reading the long list of good books I have accumulated over the years).
Keep in mind that I don’t have a formal education in CS, so building a compiler is not something that was in my curriculum
I go where my interests lead me. That suits me best. I only have the energy to learn when I’m well rested, and I have mental energy to spare. That takes some good habits (sleep, physical activity, decent food, maybe some meditation, etc.), and a bit of discipline. But also a lot of experimentation about what works best in your situation.
It’s not all as idyllic as I write here. Not all days are like I described above. And there are many days I feel overwhelmed, without having done anything substantial to forward my learning. But this slow but steady style of improving suits me best. I’ll never be as productive as José and Chris. But I enjoy the path forward very much.
PS: I seem to have pasted a lot of references in my reply, which might be overwhelming. That was not my intend. On the contrary. About three years ago I didn’t know anything about most of those things. The references are just meant to be an eclectic collection of things I find interesting myself. YMMV.