It is decent certainly, but nothing very ground breaking (imo) which is what "wizard" would imply. In no field of endeavor I know do we call people "wizards" for mere competence. The term is (imho) reserved for people who do ground breaking things / display astounding levels of competence/performance. Iow, someone isn't a "wizard" musician just because he knows his scales.
You express this much better as "their code accomplished really new things, as opposed to finding better ways to do old things"). May be we just understand "wizard" differently, which is completely all right.
"Norvig wrote some good books, but I never really got the sense of how he approaches a problem from them, although I did like the AI stuff quite a bit. "
How I learn from such examples is (1) I read the writeup to get a basic idea (2) I write my own version (in python for the spelling corrector example) and (3) see what differs between my version and the "wizard"'s.
Specifically to answer your "I never got an idea of how he approaches a problem from them"
Firstly, I wasn't speaking of Norvig's books but his code.
But let us speak of books- Have you read Norvig's "Paradigms Of Artificial Intelligence Programming"?. The whole book is essentially Norvig programming "blow by blow" finding mistakes and reversing design decisions and so on. I found it very useful to get some insight about his thinking and programming style.
Also Norvig does have some interesting thoughts on how to code in http://norvig.com/luv-slides.ps [postscript] where he talsk about how he iterates between an english description of an algorithm and (lisp) code till he gets it right.
All the people I mentioned (PG, Norvig, Carmack, Torvalds) are top level programmers (vs being people who make living from selling - in one form or another - programming methodologies telling other people how to code)and have publicly available "wizard level" code to learn from.
Robert Martin does write publicly available code - as does Kent Beck with Junit- so all due credit to them but most other agile "gurus" know jack all about coding at least as evidenced by their publicly available code. That said, I don't find Martin's code to be particularly inspiring as compared to the other people I mentioned. I find Martin's code to be competent but not "wizard level". I agree that this is largely a subjective judgment. YMMV.
As I said in my earlier post, I largely agree with your original point.
It is decent certainly, but nothing very ground breaking (imo) which is what "wizard" would imply. In no field of endeavor I know do we call people "wizards" for mere competence. The term is (imho) reserved for people who do ground breaking things / display astounding levels of competence/performance. Iow, someone isn't a "wizard" musician just because he knows his scales.
You express this much better as "their code accomplished really new things, as opposed to finding better ways to do old things"). May be we just understand "wizard" differently, which is completely all right.
"Norvig wrote some good books, but I never really got the sense of how he approaches a problem from them, although I did like the AI stuff quite a bit. "
I learned quite a bit from his python code, specifically some of the AIMA code, and also his spelling corrector (http://norvig.com/spell-correct.html) and sudoku solver (http://norvig.com/sudoku.html).
How I learn from such examples is (1) I read the writeup to get a basic idea (2) I write my own version (in python for the spelling corrector example) and (3) see what differs between my version and the "wizard"'s.
Specifically to answer your "I never got an idea of how he approaches a problem from them"
Firstly, I wasn't speaking of Norvig's books but his code.
But let us speak of books- Have you read Norvig's "Paradigms Of Artificial Intelligence Programming"?. The whole book is essentially Norvig programming "blow by blow" finding mistakes and reversing design decisions and so on. I found it very useful to get some insight about his thinking and programming style.
Also Norvig does have some interesting thoughts on how to code in http://norvig.com/luv-slides.ps [postscript] where he talsk about how he iterates between an english description of an algorithm and (lisp) code till he gets it right.
All the people I mentioned (PG, Norvig, Carmack, Torvalds) are top level programmers (vs being people who make living from selling - in one form or another - programming methodologies telling other people how to code)and have publicly available "wizard level" code to learn from.
Robert Martin does write publicly available code - as does Kent Beck with Junit- so all due credit to them but most other agile "gurus" know jack all about coding at least as evidenced by their publicly available code. That said, I don't find Martin's code to be particularly inspiring as compared to the other people I mentioned. I find Martin's code to be competent but not "wizard level". I agree that this is largely a subjective judgment. YMMV.
As I said in my earlier post, I largely agree with your original point.