Live data from Hacker News

What is the most effective thing you did to improve your programming skills?

stackoverflow.com

31–40 of 95 posts

Re: What is the most effective thing you did to improve your programming skills?

#31
post #19

One was to write a book about programming. Your programs literally have to be exemplary. It was interesting how much work that took.

I usually don't upvote pg's comments, because he could say "I like turtles." and get 1,000 upvotes, but pg's advice here is gold.

You should do this. You don't even need a publisher, you could approach your topic like Zed Shaw did with "Learn Python The Hard Way".

Or you could do a series of blog posts. You WILL get feedback and this will improve your skills.

Re: What is the most effective thing you did to improve your programming skills?

#32
There were 2 projects back in the university that made me improve my programming skills: building an OS (multithreading based on a DOS system) and building a compiler (using JavaCC).

In a different way, learning Lisp and Prolog, which basically widen your perspective.

Also, I have a question; most people say that they learn by reading good code, which I agree. Do you have any recommendation of a piece of code that you consider it has "something to teach"?

Re: What is the most effective thing you did to improve your programming skills?

#33
post #11

I wrote build scripts for my projects that tracked: 1. Syntax errors on compile (it was C). 2. Test failures. 3. Time of the run. 4. Lines of code. Then I used R to create graphs and reports that were generated periodically. About once an hour I'd go look at them and see what synax+failure levels were per line of code at that time. I'd then plot this as a run chart and start trying to find causes of my high defect in…

Have you tried delta debugging? http://en.wikipedia.org/wiki/Delta_Debugging

Re: What is the most effective thing you did to improve your programming skills?

#34
post #19

One was to write a book about programming. Your programs literally have to be exemplary. It was interesting how much work that took.

That's a good example of how much you learn by teaching. To paraphrase Richard Feynman - That which I cannot teach I do not understand.

Re: What is the most effective thing you did to improve your programming skills?

#38
post #19

One was to write a book about programming. Your programs literally have to be exemplary. It was interesting how much work that took.

One of the best ways to improve any skill is to exercise the skill in public; the more demanding the public the better. This is true of writing and of speaking and of most kinds of research. Advice like "get a mentor" or "work with the best" or "learn by teaching" is also a special case of this general principle. We become what our friends demand us to be.

Re: What is the most effective thing you did to improve your programming skills?

#40
Before you can learn programming, you must first learn programming concepts. This is why smart universities teach you how to do programming rather than teach a language alone. eg: You can implement a SQL JOIN query but do you understand what the SQL JOIN query does?

Otherwise, you may find yourself being stuck to certain languages (and functions!) which can be pretty bad. eg Using if then when a switch would be clearer and quicker. Or, applying indexes to every field in the hopes it'll make the database quicker. etc.

That said, I found the best way to learn a language is to do an (Extremely small!) side project for a certain area. eg eCommerce website? Pretend you only want to sell 4 items (2 per page) and attempt to make it pretty so you understand how designers design. And aim to understand WHY the code does what it does. (There are more ideas and projects out there)

If you're going to attempt a start up, I suggest learning frameworks and APIs. Both typically save lots of money and time until you become commercially viable to cost (by then, you should be profitable).

Post reply on HN