Tbh this seems to be implementing a demo of something he had complete understanding of prior.
Yeah, he was at Google at the time (https://norvig.com/resume.html) so he was probably involved in the original development of the thing he was making a demo of.
He's definitely smarter than me with that CV but this particular project doesn't seem like some insane productivity achievement.
Yes - Dr Norvig is exactly the type of expert I would often engage to figure out difficult problems. Ask him how to configure a Nomad cluster and he would likely say "What is a Nomad cluster do?"
Writing and debugging production code is a different skill set. Finding the optimal algorithm is useful but not the same as releasing it into the wild which may require maintaining backwards compatibility, work arounds for bugs in other code or hardware bugs that can no longer be fixed at the foundry - the list goes on.
The vast majority of work programmers do 10X or otherwise is not greenfield where you get to pick the programming language you have 10K hours of experience using, the best hardware or an unlimited budget of money and time.
Now I would consider Dr Norvig a 10X educator. That program demonstrates how a decent knowledge of algorithms and math can take a relatively complex problem and make it tractable.
Just because he's brilliant at writing green field code to solve problems like this one, doesn't imply he's incapable of producing production code when required.
Never meant to imply that he could not. He is a far more accomplished programmer than myself. Simply pointing out that he is an expert and his skill set is unique and in someways quite specialized. He may be considered 10X in his domain - maybe not so much outside of it. Programmer/Software Engineer are broad terms.
I use his sudoku solver design to learn new languages and as an example of intrinsic versus accidental complexity.
Uncle Bob tried and failed to use his own strategy of many small functions to solve sudoku. There’s been a lot of Trough of Disillusionment talk about him lately. My impression of him is that he’s got the right code organization idea but for the wrong reasons, and so his ends often don’t justify his means. It’s a common pattern in software to guess the wrong reasons why something works, and then overfitting to the wrong reasons.
This is not a 10X programmer. A 10X programmer delivers the same amount of functionality in 1/10 the time.
For me the first 10x programmer that comes to mind is Peter Norvig. This spell checker he wrote in a single flight remains a work of art:
https://norvig.com/spell-correct.html
Very few programmers would come up with something so concise and elegant yet powerful in such a short amount of time.