Live data from Hacker News

Ask HN: What programming language should I teach my little brother?

news.ycombinator.com

101–110 of 119 posts

Re: Ask HN: What programming language should I teach my little brother?

#102
post #51

Earlier quoted context omitted.

Let's keep rehashing how a language creates terrible code and how none of it has anything to do with the guy sitting in the chair pushing buttons. Seriously, can we just nuke this argument?

I'm not sure that this "please think of the children" argument -- the one which asserts that the sight of PHP will forever warp the minds of children and risk turning them into script kiddies, or Blub programmers, or crack addicts -- can be nuked. It's really old. People were apparently using it when I was thirteen -- except that the guilty party back then was not PHP, which was more than a decade in the future, but…

As an occasional reader of The Daily WTF, I don't think it's fair to say that this sort of thing never hurt anyone.

Every language that has been around for a while has its own culture and traditions. The culture of PHP is a better reason to avoid it than the language itself. I spent a lot of time un-learning habits I picked up from languages like PHP and BASIC. I suspect I would know a lot more now if I had started with Smalltalk[0] and not had to waste as much time un-learning bad habits.

[0] Python wasn't around then

Re: Ask HN: What programming language should I teach my little brother?

#105

Earlier quoted context omitted.

BASIC will scar him. You might as well go with ruby or python, you get the same facility and start off with an extensible paradigm.

Why? I thought BASIC is very good to teach basic programming concept such as Loops, line-by-line execution, etc. Really, for a beginner, one must have that kind of mindset.

Those are very imperative concepts and while imperative programming is good for some things, a language that teaches and allows for higher-level programming is probably a good idea. Languages like Python and Ruby allow functional and object-oriented programming which are becoming more and more common.

Re: Ask HN: What programming language should I teach my little brother?

#106
post #71

There's lots of good advice here, and I've upmodded the ones I agree with. But, really, it doesn't matter. Anything that lets him create something is good. Some people here are concerned about "best programming practices" and learning certain lessons. He's 13. Just let him play, and if he likes programming, he'll continue learning.

I've heard several people say that when people start with PHP (or [insert language here]) they develop poor programming habits. Learning PHP or whatever else first could be the difference between becoming a casual programmer and a serious hacker.

Re: Ask HN: What programming language should I teach my little brother?

#107
post #20

Earlier quoted context omitted.

Seconding Ruby, just for _why's guide. I've never read anything that makes me so immediately enthusiastic about coding, and it still has that effect when I reread it. I wish I'd known about that as a kid.

Also consider Hackety Hack from _why. It is very involving, giving step-by-step instructions and crystal-clear explanations (like TryRuby). http://hacketyhack.net/reality/

I played with it a while ago. Not too shabby. Seems perfect for a 13 year old. It's fun and it makes it easy to make something happen.

Re: Ask HN: What programming language should I teach my little brother?

#108
at 13 your brother need not worry about memory leaks :) Just let him start with C.

More importantly you should concentrate on what can be done with code(e.g. create a blog, automatically search from library of congress or wikipedia, create a graph of his favorite football team etc etc).

People get hooked when they accomplish something...bothering about language or the finer nuances like memory leak etc can come later.

Re: Ask HN: What programming language should I teach my little brother?

#109
An ideal programming language for absolute beginners is the one that doesn’t force them to worry about underlying computing structure(e.g. memory management). Instead the language should teach the fundamental principles of programming (like control statements and the concept of subroutine) in a simple environment that is free of complexities. I would recommend either Karel (http://en.wikipedia.org/wiki/Karel_(programming_language)) or Alice (http://www.alice.org/).
Post reply on HN