The most annoying thing when learning to program is that experienced programmers take your bullet points for granted -- and don't explain them well / don't explain them at all. But grokking those bullet points has a significant material impact on your ability to pick up the actual language itself later on.
The same is true when you're experienced -- programmers often say that programming is easy, which is because _syntax_ is often easy. It's the mechanics of how everything fits together that is difficult, and is often overlooked as a concept.
This was the point of the question :) To see what questions we need to ask if we're designing a software development environment in 2021. It may well be true that the current paradigm is sufficient: I was just curious what else came up.
I've been thinking for a while that a (sort of) mix of the two would be worthwhile.
1. Personal knowledge bases seem to be high friction (have to manually add information and requires consistency).
2. Google is leaky, you search for something, open a bunch of tabs, and then probably just close them all. What happens when you need that info again?
I was thinking that a dashboard built on top of Google search would be helpful. Something that keeps a note of what content is related to the search I made, and keeps a record / makes it easy to retrieve again later.
(Yes I know the manual effort involved in documenting what you learn is beneficial).