I Want To Be A Programmer.

Does beavith have it in him?


  • Total voters
    43

beavith

Member
Joined
Aug 10, 2009
Messages
162
Age
29
Location
Mankato, Minnesota....USA
Being a computer programmer is something I have taken a great deal of interest in over the past year or so. I love computers, math, and solving problems, and I honestly think this is something I would like to do with my life. I'm only 15, but this is something I really want to learn how to do, and the only problem I have is, I don't know where to start. Nobody I know in real life is a programmer, or anything even close. I searched the interwebz for guides and what not, and really, none of them seemed too promising.

Then I realized. I'm a member of a site with some REALLY top-notch people.

So I'm coming to you for some help. Whether it be how to get started, things I should just know, tips, ANYTHING. I really would appreciate some help, and who knows, maybe I'll get good and help with some projects here on gp32x.

Thanks again, Ethan.
 
You should probably start with Python, since it doesn't require compiling, and you can do really simple data structures stuff without getting confused by syntax.
I don't know if the Windows version of Python comes with a GUI of any sort, but try downloading it and then following any kind of Python tutorial you can find.

Then probably you could move on to Code::Blocks for C++ or something. You can of couse start with C++, but you might learn basic concepts faster in Python since you don't have to set up a compiler environment.

It's difficult for me to recommend things since Windows has a terrible command-line. If by chance you are running a Mac, you might consider programming on that instead since OS X has some of the same Unix features as Linux, like a command line that isn't horrible.

Edit: Also, this reminds me of the Pokemon theme.
 
It depends on what you are wanting to program I suppose but I'd go straight for C/C++ with SDL and/or OpenGL.
When I was very young (preteen or early teens) I played around and learned a bit of BASIC on a Vic-20 and CoCo 3. I made several simple little demos with sprites and static backgrounds. Nothing major.
Later (late teens, early 20's) when I got a bit more serious about game development, I started studying C/C++ from internet tutorials and I bought a book or two. I picked it up without too much trouble without much of a coding background.
Honestly, I can't say how long that took though. Looking back it didn't seem like it took very long but it could have been years LOL!
If there is anything I can help you with, feel free to PM me ;).
 
I think the key to success is to have a goal that you constantly work towards, like "make a space shooter game" or "code an app that does todo lists". You will likely give up on your initial plan along the way, but it's good to have an actual target at the beginning, until you realize that you were too ambitious and you need to work on simpler things first.

Languages don't really matter, anything will do even Basic. If things don't work out with the particular language you picked, try a different one, though expect to need a couple of months until you'll get really comfortable with anything.

Once you get a little more accustomed with things, download some simple opensource programs and start changing little things in them, that will help you on a lot of levels.

Good luck :)
 
lulzfish said:
Edit: Also, this reminds me of the Pokemon theme.
I wanna be the very best
Like no one ever was
To code them is my real test
To optimize them is my cause

I will travel across the web
Searching far and wide
Teach myself to understand
The power that's inside

Programming!
Gotta code 'em all--
It's google and me
I know it's my destiny
Programming!

Ooooh, you're my best language
In a world of inefficient code
Programming!
Gotta code 'em all--
Our cpu's so true
Our compiler will pull us through

You teach me and I'll teach you
Programming!
Gotta code 'em all!
Gotta code 'em all!

(okay, no more)

...

Yeah, sorry, I really couldn't resist.

/off-topic

Whatever you do, don't start out with java. I decided to start with it because it was the only course my school offered in programming. Let's just say I'd make a different decision if I went back. I've started learning python when I've got extra time, and it's just much much better to start out with. Not that anyone's recommended java, but just my two cents. Also, best thing to keep in mind is that these types of things take time to learn, a lot of it. You can't just pick it up in a week or something (well, maybe if you're a genius or something, I know I'm not). So if you feel overwhelmed by how seemingly better everyone else is at it and wonder if you'll ever be that good, just remember that they've probably just been doing it for a long time, and that you'll reach that eventually too. Dunno if that helps, but there you go.
 
Last edited by a moderator:
As has been stated above - Find a starting point (language) and then look for a "for dummies" or similar styled book..

They're actually pretty good if you're only JUST starting out. Some of them are also pretty funny.

JAVA is good to know - generally Java can be used everywhere and on mostly all computers.
 
Green tea Press offers a couple of free books for download at: http://www.greenteapress.com

Check out their "How to Think Like a Computer Scientist" books available for python, java, or c++.
 
Oh yeah, definitely agree with Java. Java is good to know, eventually, but it has a lot of things that "help" that can give you bad habits.
Imagine your car had a camera that could detect a stop sign and automatically come to a dead stop regardless of what you were doing to the gas pedal. Fine so long as you always use the same car, but if you have to drive a car without that feature you'll just run the stop sign and wonder why your car allowed you to get into such a terrible accident. Then you'll blame the manufacturer for creating such a faulty vehicle, the other driver for being where you wanted to be, the county for building a road that even needs stop signs, and a nearby passerby for not signaling to you that you needed to slow down.
I believe the best way to learn how to program is to start with C, learn the fundamentals, realize there are easier ways of doing things, and move on. I liken it to learning to drive in a car with manual transmission, and then driving an automatic. If you're serious about it and have an analytical mind, learning the basics of C shouldn't take more than a month at about an hour per day. Then move on to something like Python.
Specifically, make sure that pointers and memory manipulation is in your curriculum somewhere. I've met so many programmers that don't understand how memory is laid out and that there are consequences to doing things in certain ways. "Why is this crashing?" "Because you're running past the bounds of memory" "Memory has bounds? But this machine has 14 free gigs of RAM!" "I hate you so very, very much"
 
I'd recommend something like http://www.purebasic.com/ too.

Excellent for quickly seeing results while learning how programming works. Also has a good support forum.

Don't let people put you off basic, it is excellent when used for the right things.
 
craigix said:
I'd recommend something like http://www.purebasic.com/ too.

Excellent for quickly seeing results while learning how programming works. Also has a good support forum.

Don't let people put you off basic, it is excellent when used for the right things.
Isn't it really hard to move from basic, onto more complex languages? At some point I have to move to something like C++....right?
 
Last edited by a moderator:
beavith said:
craigix said:
I'd recommend something like http://www.purebasic.com/ too.

Excellent for quickly seeing results while learning how programming works. Also has a good support forum.

Don't let people put you off basic, it is excellent when used for the right things.
Isn't it really hard to move from basic, onto more complex languages? At some point I have to move to something like C++....right?

Yes and horribly painful too as you'll have to un-learn everything craigx taught you so why not jump to the head of the class, start with C and save yourself some grief.
 
Last edited by a moderator:
Yea, my vote is to start with Python. C/C++ are both great languages, but they can get in the way of learning the basics of writing code. Python concepts will also translate well into other languages.
 
Any language (more or less) will do for learning. If you watch out for a few gotcha's, even Javascript (the language run in most web browsers) can allow for fairly elegant program design (see Douglas Crockford's writings, videos for a detailed starting point).

It hardly matters where you start because if you're serious about making a career out of programming, you will spend the rest of your working years learning: new languages, new API's, new tools, new paradigms, etc. Learning additional languages is never a "waste" but simply another tool in your belt.

Personally I would recommend starting out with something with as low a barrier as possible. Python, like BASIC, Ruby, Javascript, and others, is an interpreted language that doesn't require you to worry about memory management right away. I.e., a great starting place. Speed (interpreted vs. compiles languages) isn't nearly the issue now as it was in years past. And Python even has a few different options for you to get into OpenGL programming if that interests you (e.g., for games).
 
There are two types of programmer, ones that are good at it and ones that can do it, the ones that are good at it are demented, the more demented they are the better they are
So you got to ask yourself, Am I Crazy enough to be a programmer?
 
Sphinxter said:
beavith said:
craigix said:
I'd recommend something like http://www.purebasic.com/ too.

Excellent for quickly seeing results while learning how programming works. Also has a good support forum.

Don't let people put you off basic, it is excellent when used for the right things.
Isn't it really hard to move from basic, onto more complex languages? At some point I have to move to something like C++....right?

Yes and horribly painful too as you'll have to un-learn everything craigx taught you so why not jump to the head of the class, start with C and save yourself some grief.

Balls. You're just going to put him on a learning curve so hard he will be put off, and when I moved from Basic to C it took me about 10mins to learn the difference. Once you can code in any major language it's piss easy to pick up another, so why not start with an easy one?

(and I can code in ASM, C, Perl, Basic, Pascal, Java etc. etc.)

What I found the most fun for a challenge was Z80 ASM, I used to love that (Gameboy, Arcade emu), but I think he should start with something like Basic and move on to other languages later.

Depending on what he wants to do, Basic might be all he needs.
 
Last edited by a moderator:
craigix said:
Balls. You're just going to put him on a learning curve so hard he will be put off, and when I moved from Basic to C it took me about 10mins to learn the difference. Once you can code in any major language it's piss easy to pick up another, so why not start with an easy one?

(and I can code in ASM, C, Perl, Basic, Pascal, Java etc. etc.)

What I found the most fun for a challenge was Z80 ASM, I used to love that (Gameboy, Arcade emu), but I think he should start with something like Basic and move on to other languages later.

Depending on what he wants to do, Basic might be all he needs.

I agree Craigix 100%. Thats why every computer school/degree diploma follows that same path as well. I started with GWBasic on the Vic20 in High school and in University they went with pascal next. Second and just about every year after was more focused on C.

Man I miss those days :( . I haven't been programing in about 10 years though and not enough time anymore. I do hope I can get back into at least a little again. Maybe I'll have to retire first :D
 
Last edited by a moderator:
craigix said:
(and I can code in ASM, C, Perl, Basic, Pascal, Java etc. etc.)
What did you think if objective C? And if you don't mind me asking,(not to be taken harshly), should I stop holding my breath for Wizzley Presto?
 
Last edited by a moderator:
Maybe we're old and outdated but so were (edit: some of) the languages when I was learning them:

Basic
Pascal
C
C++ / Java (Univ switched mid degree)

Now I'm messing around with a lot of scripting languages for web development at work. Javascript is now a breeze and I'm mainly using PHP, The background I got worked out well I would say, however I honestly need to get back to some "real" programming.
 
Back
Top