Ask HN: What specific techniques do you use to improve as a programmer?
How do you all make an effort to learn and avoid repeating coding errors? I'm thinking about starting a running document where I will catalogue things that I get stuck on and how I overcome them, in an effort to crystallize new knowledge and logical thinking.
How do you get better?
6 comments
[ 3.3 ms ] story [ 29.8 ms ] threadOther resources that were helpful for me as well
Books:
Courses: Open source: Q&A sites: and of course most coding related articles here on HNedit: SICP has an online course at MIT OCW:
http://ocw.mit.edu/courses/electrical-engineering-and-comput...
it might cover a lot of things you know, but I think it's a must have for every developer out there.
2. Make an effort to use what you have learned from past experiences to write better code in terms of usability, efficiency, readability, maintainability, etc.
3. Read Code(good ones). Sometimes, looking at other people's code allows you to have a fresh perspective about coding style.
4. Contribute to open source. It will help you immensely in understanding what it takes to write code that others can read and maintain.
5. Help others on sites like stackexchange.
2. Create new projects as often as possible.
Take part in different kind of apps. Small web apps, big and complex web apps, simple mobile apps or more complex mobile apps. Each of these will teach you on how to think and organize your work. Try learning different programming languages for example Clojure, python, ruby, javascript, C#, java and haskell. You don't need become an expert but each language will teach you a different way to tackle problems. Another thing that I've found useful is looking at other people's code. Github and the thousands open source projects there, make this super easy. Learn what you should do and what you should not.