I've struggled charting my path towards new skills. I have two problems; one of which is specific and the other more general.
With so many new tools, approaches, niches... how do you decide which is worth learning? The greatest constraint with continuous learning--is time. I worry about wasting mine on tech that lacks stamina. What's your selection process?
I also believe tech needs to reexamine its base despite most participants looking continuously forward. To this end, I'm reinventing my web stack to better understand the aggregate system through its indvidual systems. How might you prioritize effort on a project of that scale without first knowing where efficiency gains can be found?
Basically, it's a problem of unknown unknowns. How do you chart your path forward in an unfamiliar setting?
I frequently use the same languages I use at work, for instance I do a lot of Javascript/React at work so if I wanted to make an SPA I would not screw around with Typescript or Vue but stick with what I am familiar with unless there is a really good reason. ("Write some boring program in an interesting language or framework" is a way to get burned out writing boring programs.)
My process for side projects involves a lot of thinking about things that are possible today that other people aren't doing so I can make a demo that people see and think "I never saw that before", so it is not a matter of "learning technology X" but rather "to accomplish A I will knock down whatever barriers are in the way which will involve selective learning about X, Y, Z, etc...
For instance I got interested in making printed red-cyan stereograms
https://en.wikipedia.org/wiki/Anaglyph_3D
because my son found some good examples, made some with a Nintendo New 3DS, proved that it worked, asked around on dpreview about getting a better camera, got
https://us.kandaovr.com/products/qoocam-ego
wrote my own image processing software in Python using PIL, made prints some that succeeded, made more that failed. Studying the failures I found out that the color management system that all the printing vloggers tell you to use gets in the way because it blends a little bit of red into the green to make the green primary a little more yellow to conform to the sRGB standard but the extra red leaks into the wrong eye causing ghose images. Fortunately I had already debugged this kind of problem w/ high color gamut monitors that do they same thing and made a test pattern which I made some prints with different color management settings until I really understood what was going on.
(Note, this is something you won't learn out of a book or reading web pages. If I search for "color management stereograms" the first relevant result I see is myself talking about these problems on HN.)
I am going through the same process with huggingface transformers, I already have a text classification demo running with older technology so I know when the model gets 55% AUC it sucks because another model already gets 72% AUC. From day one I am not thinking about "how do I train a good model?" but "how do I train a good model reliably?". I am a professional software developer, not a "data scientist" who cosplays at adding value to their organization. So even at an intro level where I barely know what I am doing, starting with the starter examples, I would feel like a failure if I just got it to work once in a Jupyter notebook, as soon as possible I try to "close the circle" and get that model running every day inside my RSS reader. A deeper understanding will come later.