It is most definitely humbling to learn new ways to compute that force you to reconsider what you hold true. I liken it to learning a human language and having it force you to learn another cultural viewpoint. You quickly learn that you have been in a filter bubble.
I can see with things like Idris and dependent types even more of the same of the whole, well I thought I understood computation to a minimal degree, here is another bit of it that totally changes how I view the world.
Doing more that scratching the surface requires a lot of work and focus.
I think, with the right resources (people, material), if someone dedicated themselves to learning programming/software development actively for 2 years they could become extremely proficient in it. Not masters across a number of different languages and paradigms, of course, but just very proficient in a few of them to the point where they could churn out good work/projects/ideas with it.
You need 10 years to be an expert programmer but what if someone is just trying to put together a prototype?
...reads like "You need 10 years to be a surgeon but what if someone is just trying to open up a patient?"
I think 10 years is pessimistic, 2 years feels about right, but I don't think the time is really the point of this page. You just can't rush learning, or expect to get a job after reading one of those books that sell a quick solution. It takes time, longer than you think it will, which is funny again considering how much I've experienced underestimating timelines in the past.