Beginning programming
Moderator: Moderators
Beginning programming
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.
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
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?
- SwiftSpear
- Classic Community Lead
- Posts: 7287
- Joined: 12 Aug 2005, 09:29
Re: Beginning programming
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.
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
Cool, thanks a ton; really helpful posts . I'll have to go see what they've got for C#.
Re: Beginning programming
Python is also fun
Re: Beginning programming
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
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 .
Re: Beginning programming
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.
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
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.
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.
- SwiftSpear
- Classic Community Lead
- Posts: 7287
- Joined: 12 Aug 2005, 09:29
Re: Beginning programming
Cool, if you have any questions, or just general stuff you want to chat about, feel free to PM me.
Re: Beginning programming
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.
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.
- SwiftSpear
- Classic Community Lead
- Posts: 7287
- Joined: 12 Aug 2005, 09:29
Re: Beginning programming
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.)
- Forboding Angel
- Evolution RTS Developer
- Posts: 14673
- Joined: 17 Nov 2005, 02:43
Re: Beginning programming
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 :pPanda 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.
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
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.Forboding Angel wrote: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 :pPanda 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'm probably the last person you should take advice from concerning this stuffage.
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.
- Forboding Angel
- Evolution RTS Developer
- Posts: 14673
- Joined: 17 Nov 2005, 02:43
Re: Beginning programming
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
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
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
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.
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
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
if you have no idea what you're talking about, please, please shut up
Re: Beginning programming
AHHAHAH DISREGARD THAT I SUCK TITS