• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

best way to teach yourself how to program?

Status
Not open for further replies.

Joe

Member
ok i got this idea for a calculator but its nothing crazy. its just basic addition/subtraction/multiplaction/division but with a twist i guess you could say.

which is the easiest/best language to learn to do something like this and what are the best resources on how to teach yourself how to make something like this?
 

Pochacco

asking dangerous questions
Java is pretty easy imo.
If this is long-term (meaning you wanna become a masta programma one day..) then you might wanna lay out the foundations first and learn about simple logic, basic algorithms, pseudo-code, etc.
 

Joe

Member
how about something without a GUI? like manually inputting numbers into a command prompt? what would be best for that?
 

Joe

Member
what the hell is lex/yacc? im reading all these pages and i have no idea what it is or how to get it.
 

gofreak

GAF's Bob Woodward
Where are you going with this? Would you like to seriously get into programming?

Java was my first language, and I think it was a nice introduction to programming. Download the Java SDK from the Sun website, and get this book: http://www.amazon.com/exec/obidos/t...sociatin/103-0780346-2301453?v=glance&s=books

Earlier editions would serve you well and may be cheaply available new or second hand. I definitely recommend this route if you plan to take this somewhere.
 

iapetus

Scary Euro Man
Don't make me kill you, gofreak.

There's a 'not' missing from the title of that book. Deitel and Deitel are no-good hacks who don't have a clue about Java, or were as of the last time I looked at that book (around third edition, IIRC) - they may have got a clue for more recent editions, but I wouldn't take that risk. Pick up the Sun Java Tutorial (also available online) instead. I've also heard nothing but good stuff about Bruce Eckel's 'Thinking in Java' - also available for free download online.
 

gofreak

GAF's Bob Woodward
Ah, I didn't know Eckel had a java book - I'll have to look that up if the C++ one is anything to go by.

I only used Deitel because it was the standard text on my java course in first year and I found it reasonable at the time for starting off.

I'd always use a number of books to reinforce understanding of a subject, but I'm thinking he'd only want one to start with. Aside from Eckel, is there a universally well received "learning" book for Java?
 

iapetus

Scary Euro Man
Not that I could name - back when I taught Java it was all custom course material (and as much as I dislike Deitel and Deitel, it can't even begin to compare to the dross that was the Java training material of a certain big company that I shan't mention for fear of legal action). The print version of the Sun Java Tutorial would probably be my recommendation for a dead-tree book on the subject, though I'm sure there is something better out there.
 

marko

Member
Joe said:
what the hell is lex/yacc? im reading all these pages and i have no idea what it is or how to get it.

Heh, if you are new to programming, using/figuring out lex/yacc is hardly easy, even in the easy case of a calculator. Fact is, any way you look at it, if you are new to programming you will have to put some time in to learn, and what your overall programming goals are would help decide how to solve the problem.
 

NohWun

Member
Joe said:
how about something without a GUI? like manually inputting numbers into a command prompt? what would be best for that?

I'd still suggest old school: C

(Assuming you've got Windows, go to www.cygwin.com, run setup, and click on the "developer" package. If you've got Linux, you've already got a C compiler.)

The nice thing about C is that it's close to machine level, so once you know it, you get a better understanding of how computers work.

Of course, that's also the not-so-nice thing about C.

As far as learning C, just google for C tutorial. I'll bet there's lots of good ones.
 

Azih

Member
In terms of ease of use, probably PHP, or at least Perl, but to get started you'd need either an already set up webserver or some level of unix knowledge.

So.... overall go with Java, go to sun.java.com and go through the tutorial. It'll hold your hand through the installation process and through writing the first few basic programs. And it doesn't throw you into GUI stuff off the bat. Plus Java is widely used so you're building transferrable skills.


Coding in PHP is still easier than falling off a log though.
 

NohWun

Member
Really, just start anywhere. It doesn't matter. Once you learn one programming language, it's easy to pick up others. The fundamentals are the same.
 

slayn

needs to show more effort.
bah, classes teach you shit.

all CS classes have taught me, coding wise, is that professors and TA's are stupidly anal about unneccisary and irritating commenting that doesn't help anyone.
 
Good commenting practice is the singlemost useful skill you can have for modern team-based software development. I wouldn't hire a programmer who has a hissy about commenting.
 

NohWun

Member
Learn the basics of programming by yourself.

From school, you should learn (1) advanced algorithms, (2) good software design practices, and (3) how to work well with others.

There's lots of ground to cover. Having your own start makes school a lot easier.
 
I demand about the same code/comment ratio. Chances are, you won't be maintaining that code, and I don't want new bugs showing up because Joe Contractor can't figure out what the hell you were copying into a VOID double-pointer buffer.
 

shuri

Banned
You have no idea how idea how commenting is important in a work environnement. Also having some guilines for variables, structures and so on.

Last place I worked, I wanted to behead jihad-style the retards who coded the project I was suposed to resume.

No comments, obscure variable names, bizzaro style.
 

iapetus

Scary Euro Man
There are worse things than no comments. One piece of code I've been working on recently featured comments cut and pasted from other methods without changing them, so that every method in the class claimed to do the same thing - which was a piece of functionality that had been removed from the class anyway. Doh.
 
Status
Not open for further replies.
Top Bottom