To help myself and others understand better the qualities of good code and deficiencies of a bad one, I have started a new blog called Wonders of Code. The question is, is this something that can trully help us improve our understanding and thus skills?<p>The idea is to take a piece of code, point out some noteworthy improvement opportunities - preferably in relation to the general principles of clean code, such as DRY, SRP, readability etc. - and rewrite it in a (presumbely) better way and explain the new qualities.<p>You might want to check out some of the 3+1 code studies already published at WoC to see what I mean: http://wondersofcode.wordpress.com/.<p>I have two questions:<p>1) Is this something worth doing, something that can really help us - and especially the juniors among us - become better programmers faster?
2) Do you have any tips and ideas for how to make it better and more effective?<p>Thank you!
Looking at other people's code (and I mean more experienced programmers of course) always helped me to learn best-practices, patterns, etc. Also if you does not understand something (why is it there? why is it written that way?) it is very good to ask the guy who wrote it down about his purpose - maybe both of you can learn from these situations.<p>Also this kind of "learning" is very useful in the future - you can understand other people's code faster or recognize problems by looking at the code.<p>I think your idea is worth doing and I would encourage you to keep working on it; I am sure I will recommend it to my friends too.
I would always encourage any form of education, coding included.<p>The way I learned how to code was to play with pre-written pieces of code myself.<p>1. I would say to myself... I want to see if I can write a loop to print out a message.<p>2. Then I would go and google for the code.<p>3. Copy and paste it into my own file, and change it to do what I want.<p>I'm willing to bet that most of the hackers on HN learned how to code this way. That's why we call ourselves hackers right?<p>I guess this is similar to your approach but in a more controlled environment?
hi Jakub, definitely worth doing. In terms of making your blog more efficient, how about putting the code examples side by side (looking at your Python/MongoDB API snippets)? I know it's visually probably a bit harder but I guess it makes pros and cons etc more obvious. Just my two cents...