Son wants to be a computer programmer

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

PhatoseAlpha

Platinum Member
Apr 10, 2005
2,131
21
81
Javascript is a horrible starter language.

Javascript lacks fundamental concepts of most other languages - inheritance, interfaces, namespaces, explicit variable declarations, define variable scopes to name a few, and it's weakly typed to boot.

Actually, it's not horrible starter language - it's just a horrible language.


Really, if your goal is to learn programming it's hard to find a worse place to begin then the web. Far too many of the really important concepts just don't exist there.
 

max347

Platinum Member
Oct 16, 2007
2,335
6
81
Alice-
http://www.alice.org/index.php?page=what_is_alice/what_is_alice


Coming straight out of school (UNC, Fred Brooks anyone?), I'll say we mostly used Java, so thats what I would recommend. HTML isn't a complete waste of time, but it doesn't really teach how to program exactly.

While some of the older programmers on here will surely favor C/C++, it was really an afterthought in my studies. Not that it is not useful, but if he goes to school for it, he'll probably be doing everything in java nowadays. The profs will just say, do x y z, oh and in C, you would just do this this and this instead. In some of the higher level classes, they have us learn haskell, perl, ruby, and a few others, but java will get him the most mileage.
 

AyashiKaibutsu

Diamond Member
Jan 24, 2004
9,306
4
81
I'd avoid html as a start. It's not remotely coding and will start him out with the wrong mindset. Not that it'd be devastating to; I just see it as counterproductive as a start.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
What about learning HTML & Javascript? This way he could learn concepts related to programming and see some potentially fun effects of his code on his webpages.

Yeah, definitely javascript is programming, and maybe closer to BASIC than most of the other suggestions.

Edit: and actually I'm rethinking my knee-jerk reaction a bit. HMTL is not programming, but if a kid learns to create static web pages then maybe the desire to make them less static will serve as a draw into scripting.
 
Last edited:

trexpesto

Golden Member
Jun 3, 2004
1,237
0
0
Haha, this happens every time with this question. The OP is long gone and we are all nagging each other. NAG! NAG!

You can do a very quick AppEngine web app. The Android programming suggestion is cool especially if he has an Android phone.
And again, python is like java, but fun.
 
Last edited:

piasabird

Lifer
Feb 6, 2002
17,168
60
91
I dont think you can make a lot of money programming as an American. Learn networking and server skills and database. Programming can be a difficult field to get a job in.

This is just my opinion.
 

douglasb

Diamond Member
Apr 11, 2005
3,157
0
76
I dont think you can make a lot of money programming as an American. Learn networking and server skills and database. Programming can be a difficult field to get a job in.

This is just my opinion.

Depends what you consider "a lot of money", but I would say that based on existing data, your opinion is incorrect.

http://www1.salary.com/Programmer-I-Salary.html shows the entry level salary at just under $55K which isn't bad at all. The median expected salary for a typical Programmer III in the United States is $80,298. The median household income in the United States is $46,326. So you're talking about a job field where the entry-level average is almost $10K above the national average household income, and with some experience, you can make double that.

Maybe compared to a professional athlete or a rockstar, it isn't "a lot of money", but I think that the average American would consider a programmer's salary to be a lot of money.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
I dont think you can make a lot of money programming as an American. Learn networking and server skills and database. Programming can be a difficult field to get a job in.

This is just my opinion.

Programming is a difficult field to break in to, but once you're in it is not hard to get a job. In fact I don't feel like things slowed down very much at all through this whole economic downturn. I'm still seeing three or four new inquiries per day from NYC-area recruiters.

In terms of money, I don't have any data to back it up, but my sense is a programmer with current platform skills and ten years of experience will make more money than a system admin or network engineer with the same experience.
 

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
Download a copy of panda.
http://www.panda3d.org/

Then he can use python or C++ to program in and learn and actually see something accomplished with his work. The days of seeing "hello world" print on the screen and making a kid want to learn programming are gone. In my day it was something, but then we didn't even know what a mouse was and typing was taught on typewriters.
 

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
I dont think you can make a lot of money programming as an American. Learn networking and server skills and database. Programming can be a difficult field to get a job in.

This is just my opinion.


Depends on the area. Learn programming for things like ARM and you can find more job offers than you can answer.
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
If you already have Ubuntu running, why not start him off on bash scripting? Have him write a shell script that will send him a daily reminder e-mail to do his homework, or automatically reboot his PC at 3 AM.

Besides, it will teach him some Linux administration skills, which are probably even more valuable than programming skills in the US now.

After that, teach him some HTML and then give him a REAL programming language like Java to learn.
 

todpod

Golden Member
Nov 10, 2001
1,275
0
76
Haha, this happens every time with this question. The OP is long gone and we are all nagging each other. NAG! NAG!

You can do a very quick AppEngine web app. The Android programming suggestion is cool especially if he has an Android phone.
And again, python is like java, but fun.

I am not long gone just got caught up, been a long week. I need to let him read this an see were he wants to go a lot of interesting suggestions. I don't think I will be much help. I kinda wish he did have an android phone but he don't and he doesn't get one till I do and that isn't happening for some time. Keep suggesting and I will keep reading and trying to learning. Thanks again
 

Krioni

Golden Member
Feb 4, 2000
1,371
0
71
Programming is a difficult field to break in to, but once you're in it is not hard to get a job. In fact I don't feel like things slowed down very much at all through this whole economic downturn. I'm still seeing three or four new inquiries per day from NYC-area recruiters.

In terms of money, I don't have any data to back it up, but my sense is a programmer with current platform skills and ten years of experience will make more money than a system admin or network engineer with the same experience.

I can speak from knowledge at my place of employment.

Entry level developers make about $15K-$20K more than an entry level network admin/engineer. A good developer with about 10 years of experience can expect $80-$100k, depending on the company and their skills. I know this for certain because I manage 12 of them. ;-)

Also, the market for developers is quite strong, at least here in the southeast.
 

trexpesto

Golden Member
Jun 3, 2004
1,237
0
0
..
Also, the market for developers is quite strong, at least here in the southeast.

What vertical? Heath care?

IMO the best "programming" thing shell scripts illustrate is the power of symbols (variables). That is a worthwhile lesson, but you could get it somewhere else.
I like the design, the way seemingly trivial utils can combine to do so much.
 
Last edited:

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
I can speak from knowledge at my place of employment.

Entry level developers make about $15K-$20K more than an entry level network admin/engineer. A good developer with about 10 years of experience can expect $80-$100k, depending on the company and their skills. I know this for certain because I manage 12 of them. ;-)

Also, the market for developers is quite strong, at least here in the southeast.

Unix shell scripting can also teach you how to use if/then/else decision making statements and for/while loops as well.
 

Krioni

Golden Member
Feb 4, 2000
1,371
0
71
I have to throw out there that C# is a great language, shares common ancestry with other "C" based languages and has great free tools available. VIsual Studio Express it very nice.

Obviously, it's MS so it's made to run on Windows based environments.
 

Doppel

Lifer
Feb 5, 2011
13,306
3
0
That MIT Scratch link looks really interesting, though I've not heard of it before.

Something with a comprehensive user interface you don't need to worry about that can do more than just run console programs is where I'd point him. You can do a lot with Visual Basic 6 even though it's a good 12+ years old and it's gotta be very cheap to get if not free. Otherwise Java or VB.NET. With those he can rapidly create a program that gives him an interface within which he can interact.
 

douglasb

Diamond Member
Apr 11, 2005
3,157
0
76
He is 13, I have programed a little Basic and Cobol when I was in college. We are running ubuntu. Anything simple to learn for him, is Basic still around anywhere, to just give him a taste of what it is. Thanks

For those of you who keep suggesting Visual Basic, C#, and the other "Visual Studio" languages.
 

Krioni

Golden Member
Feb 4, 2000
1,371
0
71
For those of you who keep suggesting Visual Basic, C#, and the other "Visual Studio" languages.

There are some options for writing .net code on Linux. Mono is one such option. However, good point because it does somewhat limit you.