Page 1 of 4

Beginning programming

Posted: 29 Dec 2008, 22:28
by TheBigPK
So, I got a gift card for Barnes and Noble for xmas and I want to get a book or two to kick off serious programming for myself. Initially, I wanted a book on C++ but most of them seem to be pretty basic; they'll show me how to read and write the language in general but I didn't find much in the way of practical use. I'd probably use it to make something similar to this macro program which could probably be a ton better, build a spring game (I already pretty much have the coding part of that down though), mod something else, or eventually use it for a job somewhere.

I already know my way around basic C++ syntax along with HTML, php, Javascript, and CSS. So, where did you start off (I'm already a junior college but not for CS, this would be for a hobby)? What kind of things do professional programmers actually have to make, etc?

I figured someone here would know as I think a few of you have programming jobs.

tl;dr: Recommend a good book for a programming noob that you may have read.

Re: Beginning programming

Posted: 29 Dec 2008, 23:04
by smoth
the seemingly pointless exercises are pointless beyond learning the language and structures. if you find most of the books too elementary I advise you to find a data structures book or just get to writing bits of opengl in some tutorials to walk you through that shit so you can halp spring maybe?

Re: Beginning programming

Posted: 30 Dec 2008, 02:36
by SwiftSpear
OOP languages are very different than web script. If you were to follow the traditional university CS path, you'd teach yourself a high level language like java or C# first, and then once you're familiar with that you'd work backwards into C++. C++ is complicated because of it's interaction with the machine at a low level. Even when you have a solid understanding of OOP rules and structures, C++ will always find ways to confound your efforts. If you're dead set on C++ and you think a tutorial book will be too simple, a referance manual is probably the best buy, but you better be damn serious about being familiar with the syntax because it's going to be really frigging hard to teach yourself the ins and outs of the language without a fairly established pre existing knowledge.

Honestly, I'd personally probably recommend you grab a book on either java or C# (java is the way to go if you want to code web apps, but the .net programming environment you get to use with C# is just worlds ahead of anything you get with java. C# also has better performance so it's better for basic games). An expertise in either C# or java will make learning C++ alot easier if you ultimately decide you do want to (they are all basically syntactically and structurally identical, there's only a few key differences you learn when moving from any one of those languages to another)

Once you have any OOP language down, decide weather you want to hobby around with games, or hobby around with something else. If games are your thing the next step is either learning directX or learning OpenGL. Either of those are fucking monsters to fully comprehend. If you don't care so much about gaming web coding is probably going to be more potent, learning networking structures and stuff like that really opens up your mind in terms of cool things that can be done with coding.

If I had the B&N gift card, I'd try to find a C# OpenGL book, that's what I'm playing with right now, and while it's a mind trip most of the time, it's alot of fun too.

Re: Beginning programming

Posted: 30 Dec 2008, 11:59
by TheBigPK
Cool, thanks a ton; really helpful posts :-) . I'll have to go see what they've got for C#.

Re: Beginning programming

Posted: 30 Dec 2008, 14:04
by FLOZi
Python is also fun :-)

Re: Beginning programming

Posted: 30 Dec 2008, 16:35
by Peet
I strongly suggest you pick up a CS textbook rather than a "Teach yourself X in Y days" or anything of that sort. I was brought up on Java Software Solutions, by Lewis and Loftus. Remember that it's not a language you're trying to learn at the start, it's the fundamentals and principles that you apply to any language.

Re: Beginning programming

Posted: 30 Dec 2008, 20:49
by TheBigPK
Well I'm going to B&N right now, I'll see how their selection looks for CS stuff, too. I might be able to get one of each :P.

Re: Beginning programming

Posted: 30 Dec 2008, 22:07
by Panda
I've heard that PERL is good for web page design, but most people that I know of don't use it.

B&N is cool! I want to buy a bunch of their Biology books, the neat little bookmarks and trinkets that you find at the check out isle, browse the art and philosophy books, check out the manga, and go to the music preview stations. There's a 2 story B&N in Baton Rouge, LA with a coffee shop in it.

Re: Beginning programming

Posted: 31 Dec 2008, 19:17
by TheBigPK
Aye, B&N is pretty cool. Wish my university library had the same atmosphere lol; except the place was absolutely packed yesterday.

I ended up with C# 3.0: A Beginner's Guide by Herbert Schildt. Took a long time reading through a few of the C# books and comparing C# to java/C++ with my noob skill level and chose this rather boring book over a less complete, but a bit more entertaining, one written by a guy not long out of college. It's got questions at the end of each chapter to test what you've learned and seems to be similar to the way my professor taught a web design gen ed I learned a lot in. And I'd rather have a good reference than a nice read in this case i think.

I'll let you guys know how it goes if you want, thanks for the responses though :), much appreciated.

Re: Beginning programming

Posted: 31 Dec 2008, 23:38
by SwiftSpear
Cool, if you have any questions, or just general stuff you want to chat about, feel free to PM me.

Re: Beginning programming

Posted: 01 Jan 2009, 13:54
by Dragon45
http://www.brpreiss.com/books/opus4/html/book.html
That's the full version. There is also a version for Java another for Ruby, and another Python IIRC, and many other languages. Memorize that book.

Re: Beginning programming

Posted: 01 Jan 2009, 22:36
by SwiftSpear

Re: Beginning programming

Posted: 03 Jan 2009, 10:31
by imbaczek
i suggest clrs once you've learned enough of any language. (the R in CLRS is the same R as in RSA, in case you wondered.)

Re: Beginning programming

Posted: 03 Jan 2009, 11:31
by Forboding Angel
Panda wrote:I've heard that PERL is good for web page design, but most people that I know of don't use it.

B&N is cool! I want to buy a bunch of their Biology books, the neat little bookmarks and trinkets that you find at the check out isle, browse the art and philosophy books, check out the manga, and go to the music preview stations. There's a 2 story B&N in Baton Rouge, LA with a coffee shop in it.
Well before there really were "Dynamic" languages for the web, about the only way you could really do it was with PERL (other than a hacky lot of html + iframes and bad javascript, but really even that stuff wasn't dynamic as we know it today). PERL is a tough language to conquer. I learned it, hated it, and unlearned it the moment php hit the scene. I don't think anyone in their right mind truly cares for PERL, but there may be some people out there that live or die by it :p

It's kinda dated at this point to be honest. Of course it has it's uses, but nearly everything could be done as well if not better with a combination of php and some other language.

For example, iirc the annihilated.com forums were PERL based, which is the first time I remember seeing discussion boards of that exact sort (meaning pretty much exactly what nearly everyone uses now, e.g. vbulletin, invision, phpbb, myupb, and a host of others). I'm sure they existed, but I don't remember seeing them anywhere else. Most of them used a "Discuss" sort of setup which was clunky slow and difficult for beginners to use.

Not sure why I said all that... I suppose to say that PERL is sort of a dead end afaik, and as far as real programming goes, c# (which will teach you to be lazy) then c++ (big boys), but then again, regardless of what I think I know, I'm probably the last person you should take advice from concerning this stuffage.

Re: Beginning programming

Posted: 04 Jan 2009, 03:27
by Panda
Forboding Angel wrote:
Panda wrote:I've heard that PERL is good for web page design, but most people that I know of don't use it.

B&N is cool! I want to buy a bunch of their Biology books, the neat little bookmarks and trinkets that you find at the check out isle, browse the art and philosophy books, check out the manga, and go to the music preview stations. There's a 2 story B&N in Baton Rouge, LA with a coffee shop in it.
I don't think anyone in their right mind truly cares for PERL, but there may be some people out there that live or die by it :p

I'm probably the last person you should take advice from concerning this stuffage.
I had a professor at school who used to really like PERL. He was an older professor, so I guess that might be why he liked it so much. As far as languages go, I prefer C++, but I don't think it's a good idea to get too attached to any certain language. I don't generally do programming and only know a pretty good bit about it because I used to like to hang out in my school's robotics lab, make cute robots, have taken quite a few computer science classes, and hang out with a lot of programmers. But, I guess that if someone really wanted to get into programming, they shouldn't limit their language choices or be inflexible in such a rapidly changing industry.

I, on the other hand, want to make a cute, robotic creature (Like a Tardigrade). It would be neat if I could get it to be close to being anatomically correct or use it to demonstrate some process. :( However, buying materials for that kind of thing is expensive even if I think it's really cool to collect stuff that looks like it was taken from an alchemist's lair full of electronic and/or Biological teaching materials.

Re: Beginning programming

Posted: 08 Jan 2009, 23:44
by Forboding Angel
Well to be honest, you have the best person to ask that I know of, sitting right next to you :-)

I know he's not much into web stuff (tho iirc he picked up php in practically no time), but yar, if there's someone who would know the in's and out's of all of it...

./me points at smoth

Re: Beginning programming

Posted: 08 Jan 2009, 23:50
by smoth
meh, you would have a time with the locomotion. the way tardigrades move with the 6 legs is really graceful and robots seem to move very stiff. If you gave the claws a tardigras has it would make a great back scratch tool though.

Re: Beginning programming

Posted: 09 Jan 2009, 02:50
by Panda
Yea, I used to like to mess with a robotic arm that was in my school's lab (I used to be a robotics technician.) and it's movements weren't very smooth. It is difficult to get a robot to make smooth movements.

As far as PERL programming goes, there's a class being taught at my university on PERL programming and bioinformatics, so apparently it's good to use when it comes to dealing with biological data.

Re: Beginning programming

Posted: 09 Jan 2009, 03:12
by Dragon45
some of the responses in this thread are making my mind cry tears of pain

if you have no idea what you're talking about, please, please shut up

Re: Beginning programming

Posted: 09 Jan 2009, 03:12
by Dragon45
AHHAHAH DISREGARD THAT I SUCK TITS