Live data from Hacker News

Twelve Tips to Master Programming Faster

breckyunits.com

1–10 of 54 posts

Re: Twelve Tips to Master Programming Faster

#3
Great starter tips.

I've been programming for almost 20 years now (some of that in school), and just recently began exploring web programming (started looking at php over the summer).

I found the information helpful, even though I can code pretty massive simulations with complex algorithms in C++ for a desktop environment, I couldn't build simple ruby/rails apps. Slowly learning about the fundamentals of persistent web databases (migrations), http restful I/o, and many languages for data access and views on that data (HTML,php,JavaScript,java,scala/lift,ruby/rails,python/django, along with many APIs). This is probably going to take me more than 10k more hours to learn well.

Re: Twelve Tips to Master Programming Faster

#4
some more: unit testing - annoyingly rather handy, had a good argument about why it's better not to use it, well I use it, I lost that argument but gained a lot. design patterns open source projects - a great benefit to your skills, there's something that needs kicking for any level. learn why it's handy to use version control rather then just use it (tip - it's because if something borks can roll it back a lot easier) linux - not just learn it, know it. bash scripting, piping commands and expect all have saved me multiple hours rss - handy

Re: Twelve Tips to Master Programming Faster

#7
post #3

Great starter tips. I've been programming for almost 20 years now (some of that in school), and just recently began exploring web programming (started looking at php over the summer). I found the information helpful, even though I can code pretty massive simulations with complex algorithms in C++ for a desktop environment, I couldn't build simple ruby/rails apps. Slowly learning about the fundamentals of persistent w…

I don't know about that. Three years ago, my entire programming career had been spent in Swing apps and utility scripting. I only started on Rails to be able to sell my Swing app better, and only started to get into SQL, Javascript, and all the rest of the rabbit hole as my business (and day job) required me to. Thats, hmm, about 7 kilo-hours as an upper bound if you assume that all of my day job and business time goes into web programming, which is very, very far from the case.

Re: Twelve Tips to Master Programming Faster

#8
As to #6—software engineering, at a sort of medium level, is mostly object-oriented. At a high level, when talking about how to parallelize and scale, it's more relational, and at a low level, when designing algorithms, it's first very functional and mathematical, then when optimizing them, very imperative. OOP is only really done to figure out what you're building; once you know that, figuring out how you'll build it isn't necessarily OOP at all.

Re: Twelve Tips to Master Programming Faster

#9
Thank you. This comes at the right time for me. I have been trying to learn programming for a long time but i never get past simple console programs. I also suck horribly at math which is a major cause of embarrassment from middle school to college. Lately i am trying to make up for lost time by starting to learn again. Programming as well as mathematics. I can't afford to buy too many books. So i am relying on torrents/wikibooks/carlh on reddit for now. Progress has been excruciatingly slow and painful. But this gives me hope. Thanks a lot.

Re: Twelve Tips to Master Programming Faster

#10
This scares me. I can relate to the OP in that I denied my interest technology until my twenties until finally embracing it. Evidently, we're both looking to up our game and become better programmers. However, a few of his points are really... concerning.

"Great code is easy to read"

Not at all. JWZ's code challenges me; heck, some of the Rails code baffles me until I sit down and think carefully. A lot of code can be unintuitive to the uninitiated and still be great.

"Use github."

Seems awfully narrowly scoped. Using SCM is undeniably beneficial, but using it to become a "master programmer" seems a bit misguided, like becoming a master hammer swinger will make me a master finishing carpenter.

"Code is surprisingly more like English than like math."

Ruby? Very little code I've read would be understandable if read out loud.

"Learn Linux."

Well, maybe. OP must be a web dev who grew up on Windows (like me). I don't understand how memorizing a series of command line switches will help anyone master programming. While understanding pipes, regexes, ACL, etc... is undeniably useful, there must be better approaches than "learning Linux."

All that said, I must give kudos to the OP. I'd like to master programming, too. I have no formal CS education, I get lost when spelunking through big code bases, I need to "learn Linux." But it seems to me that a better approach is needed.

The most intriguing part of the post was this comment: "You will read and learn more from a good $30 paperback book than dozens of free blogs."

I'm really curious about this. Does this hold true for anyone else? Are books about design patterns really more beneficial than reading the jQuery (par example) source? Dozens of times more useful?

Post reply on HN