Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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?



If it's Head First Design Patterns, then yes. :P

In all seriousness, I highly recommend the Head First series of books. They read so much smoother than other large reference/learning books.

As for Design Patterns, the value in that was not that I learned any specific patterns, but rather that it got me to analyze software design in a systematic way rather than a "I like this" way.


> "Great code is easy to read"

Maybe it should have been "make it as simple to read as possible, but no simpler."?

>"Use github." >Seems awfully narrowly scoped

It is narrowly scoped. The thing I've witnessed with newbies and SCM, is that they are so intimated by it they never get in the habit of using it(until they go to a good shop that uses it). But it takes 1 minutes to sign up for github. And 1 hour of typing "git commit, git add, git init, git push" etc to master the basics. Then building upon that knowledge is easy. But just getting started with SCM is the hardest part, imo.

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

Kind of the same point as earlier ("clear as possible, but no clearer").

My linux advice was pretty weak, I got some good emails suggesting it should have been more specific, and I agree with that. I should have said "Learn key linux programs". pipes, regexes, vim, etc.

Great feedback, thanks!


I do agree that in terms of getting people excited about SCM, github is the way to go. And helping a dev enjoy SCM and getting them involved with the community through forks and patches certainly will making them a better programmer. So, fair point on that one.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: