Blank Posted October 6, 2006 Posted October 6, 2006 (edited) I want to start to learn how to program and eventually be able to get a job programming games and crap. I have the time for this as a hobby. Does anybody have advice as to what tutorial books or whatever I should buy? What is the industry standard nowadays? Is the world round? Do you like Dandelions? Edited October 6, 2006 by Blank
alanschu Posted October 6, 2006 Posted October 6, 2006 As far as I know, the standard for games development is still C++ I have heard nothing but fantastic things about a textbook called "Effective C++" and "More Effective C++" but I don't know how introductory they are (I've been meaning to pick them up, but haven't had a chance). The one we used was Big C++, and it definitely gets things started nice and slowly.
Kaftan Barlast Posted October 6, 2006 Posted October 6, 2006 (edited) What Ive found to be bothersome about programming is that you need to be so awfully clever. As you all may know, I had my brain replaced with a monkey due to an accident and since then I ..you know the rest. Edited October 6, 2006 by Kaftan Barlast DISCLAIMER: Do not take what I write seriously unless it is clearly and in no uncertain terms, declared by me to be meant in a serious and non-humoristic manner. If there is no clear indication, asume the post is written in jest. This notification is meant very seriously and its purpouse is to avoid misunderstandings and the consequences thereof. Furthermore; I can not be held accountable for anything I write on these forums since the idea of taking serious responsability for my unserious actions, is an oxymoron in itself. Important: as the following sentence contains many naughty words I warn you not to read it under any circumstances; botty, knickers, wee, erogenous zone, psychiatrist, clitoris, stockings, bosom, poetry reading, dentist, fellatio and the department of agriculture. "I suppose outright stupidity and complete lack of taste could also be considered points of view. "
Diamond Posted October 7, 2006 Posted October 7, 2006 I want to start to learn how to program and eventually be able to get a job programming games and crap. I have the time for this as a hobby. Does anybody have advice as to what tutorial books or whatever I should buy? What is the industry standard nowadays? Is the world round? Do you like Dandelions? <{POST_SNAPBACK}> Just my (somewhat random) thoughts on this (in no particular order): You need some more things apart from tutorials and books to be a good programmer. At least, all good programmers I know possess them: Genuine interest in technology Interest to take things apart and understand how they work (they ask "Why" questions more often than "How to" questions). Discipline and interest to practice Some mathematics background (not necessary, but it helps) If you are serious about programming, the best way to learn it is to go to a college or university. Of course, if you are determined enough you can do without it (that's what I used to think before going to uni), BUT it is very very useful regardless of whatever self-taught people say (that's what I think now, approaching the end of my CS degree). Uni will teach you essential concepts that you didn't even know exist, and, most importantly, it will teach you how to learn effectively on your own. Last note: it is a good idea to practice a bit and decide if you really want it. I used to teach junior programming course (TA), and I observe that most people enroll in the course because they play computer games (mostly WoW) and think that if playing games is so mush fun, developing games would be even more fun; about ~30% drop out or fail the course, because it was too hard, boring, tedious, not what they wanted, or it required too much commitment. ~20% pass the course and decide not to do any programming courses ever again.
Kaftan Barlast Posted October 7, 2006 Posted October 7, 2006 Yes its the same here(game development University) 40% of the programmers dropped out in the first year. Mostly because they werent prepared and didnt know the basics, but also because they also lacked the drive to learn. DISCLAIMER: Do not take what I write seriously unless it is clearly and in no uncertain terms, declared by me to be meant in a serious and non-humoristic manner. If there is no clear indication, asume the post is written in jest. This notification is meant very seriously and its purpouse is to avoid misunderstandings and the consequences thereof. Furthermore; I can not be held accountable for anything I write on these forums since the idea of taking serious responsability for my unserious actions, is an oxymoron in itself. Important: as the following sentence contains many naughty words I warn you not to read it under any circumstances; botty, knickers, wee, erogenous zone, psychiatrist, clitoris, stockings, bosom, poetry reading, dentist, fellatio and the department of agriculture. "I suppose outright stupidity and complete lack of taste could also be considered points of view. "
alanschu Posted October 7, 2006 Posted October 7, 2006 Enrollment plummetted at my school after the dot com bubble burst. The last remnants of it graduated over the past two years, and now there's concerns with enrollment.
Gorth Posted October 7, 2006 Posted October 7, 2006 You need some more things apart from tutorials and books to be a good programmer.At least, all good programmers I know possess them: Genuine interest in technology Interest to take things apart and understand how they work (they ask "Why" questions more often than "How to" questions). Discipline and interest to practice Some mathematics background (not necessary, but it helps) :(" Lets see... 1) Definitely 2) Definitely 3) :"> 4) :ph34r: I suck at math, yet I've been able to make a living as a developer anyway. Regarding 3 & 4, I've found that being creative and having a vivid imagination can often make up for lack of discipline and math skills. Something I look for when recruiting new developers. Even better if you have a burning passion for something besides the development skills, like AI, Math, Physics, Image processing, games design etc. Something to apply your developer skills to. @Blank: Tough question. You say, you can commit to this about as much as it being a hobby. That sort of rules out a few things. Considering the place you are posting, it is a safe bet that you have an interest in games ? One possible starting point, just to get acquainted (Sp?) with basic programming paradigms (like starting to thing in decisions, branches, repetitions, algorithms in general), is to pick a game with a decent scripting language. Could be c-robots, could be Neverwinter Nights, whatever you prefer and sit down and write simple scripts. The "secret" behind programming is the way you think, analyse and model your world within the structures of the language you are working with. If you have a natural flair for languages, even better. A computer language is not that different from a spoken language when you have describe a something with the available vocabulary “He who joyfully marches to music in rank and file has already earned my contempt. He has been given a large brain by mistake, since for him the spinal cord would surely suffice.” - Albert Einstein
Blank Posted October 7, 2006 Author Posted October 7, 2006 Thank you guys very much. And keep it coming if anyone else has input.
Blank Posted October 7, 2006 Author Posted October 7, 2006 I've looked around and I'm tentatively planning to purchase a book called, "C++ A Beginner's Guide," by Herbert Schildt. Does anyone have experience with this book or author?
Maria Caliban Posted October 8, 2006 Posted October 8, 2006 Gorth: "You say, you can commit to this about as much as it being a hobby. That sort of rules out a few things." I know many people who put more passion and energy into their hobbies than they do in their work or relationships. "When is this out. I can't wait to play it so I can talk at length about how bad it is." - Gorgon.
@\NightandtheShape/@ Posted October 8, 2006 Posted October 8, 2006 What Ive found to be bothersome about programming is that you need to be so awfully clever. As you all may know, I had my brain replaced with a monkey due to an accident and since then I ..you know the rest. <{POST_SNAPBACK}> It's not so much a matter of being clever as much as a matter of thinking about problems in an abstract yet logical manner, also helps if your memory is good. Not everyone programs in the same manner, some folks will plan things and follow set patterns. Most of what I write is organic, it just grows from a thought, kinda like a picture would I suppose, I generally rework it all afterwards, and naturally improve it, think of it as a sketch, before you paint. I consider coding an art, while others consider it simply to be a matter of logical operations to fulfill and said function. Coders sound alot cleverer than they are, this is due to the fact we hate designers due to there ineptness and over creative flare LOL, just kidding. We(coder) are very lonely people LOL. "I'm a programmer at a games company... REET GOOD!" - Me
Gorth Posted October 8, 2006 Posted October 8, 2006 Gorth:"You say, you can commit to this about as much as it being a hobby. That sort of rules out a few things." I know many people who put more passion and energy into their hobbies than they do in their work or relationships. True. Although, a hobby is sort of supposed to be something you are passionate about, otherwise you wouldn't do it of your own volition. But then, in hindsight, the same could possibly be said about work and relationships. It's all about priorities and the time/energy available for your various pusuits I guess. “He who joyfully marches to music in rank and file has already earned my contempt. He has been given a large brain by mistake, since for him the spinal cord would surely suffice.” - Albert Einstein
Blank Posted October 8, 2006 Author Posted October 8, 2006 (edited) Also, I looked at the "Effective C++" book and it looked like it would be too complicated for a beginner. Though, if I became good, it would surely be a good reference, but for now it isn't what I'm looking for. Edited October 8, 2006 by Blank
@\NightandtheShape/@ Posted October 8, 2006 Posted October 8, 2006 Also, I looked at the "Effective C++" book and it looked like it would be too complicated for a beginner. Though, if I became good, it would surely be a good reference, but for now it isn't what I'm looking for. <{POST_SNAPBACK}> http://www.amazon.com/C%2b%2b-Programming-...6787239?ie=UTF8 ^ good book, I still occasionally refer to this book, help me learn the syntax in a few days. C# is also interesting, try ;looking at visual C# express and XNA, that's a fun place to start. "I'm a programmer at a games company... REET GOOD!" - Me
Gorth Posted October 8, 2006 Posted October 8, 2006 When I started on Windows programming, I think I got my basic Windows familiarity from a series of books from Sams, called Visual Basic in 21 Days or so. Unfortunately, I don't have it anymore, so I can't give exact references to it, but I do remember it as being quite "gentle" on people starting out with Windows applications. I wouldn't be surprised if they had a C++ book in the same series. “He who joyfully marches to music in rank and file has already earned my contempt. He has been given a large brain by mistake, since for him the spinal cord would surely suffice.” - Albert Einstein
Loof Posted October 9, 2006 Posted October 9, 2006 My recomendation would be to ignore C++ for now. Even if most games are written in it, it's not the best language to start learning in if you have never coded anything before (to many ways to do the same thing). I would instead recomend that picking an easy to work with higher level language (my personal favorite at the moment is python). It will be much easier to pick upp the basic princaples and concepts in such a language then it would in C/C++, and once one has programmed a while picking up a new language becomes a trivial problem that can be overcome in a week or two. C++ may be an exception to that timelimit since it so damn huge, but even if it takes longer then a few weeks to learn once you get down to learning C++ it will still go an order of magnitude faster or so then if you started with it.
mkreku Posted October 9, 2006 Posted October 9, 2006 (edited) All the programming courses I've read for the last several years on my university have been in Java. It's not because the language itself is particularly fast, effective or useful, it's because it is a high-level language that's easy to maintain, easy to get an overview of and it has extensive documentation. To be a coder, you need to learn a way of thinking that's very unnatural for humans. You have to learn to plan ahead (don't know what it's called in english, but you basically sit and draw squares, lines and circles on a paper to figure out how the different objects will work together). And lastly you'll have to learn the syntax and read the documentation of the language you're supposed to use. If you can manage that, you just need to do it more. My basic flaw is that when I get home, I have absolutely no desire to code in my spare time. That's how I know I'll never be a programmer for a game developer: the time and effort it takes to be on the cutting edge of technology is time and effort I just don't want to commit. Other than that, I think I'd make an excellent game programmer Edited October 9, 2006 by mkreku Swedes, go to: Spel2, for the latest game reviews in swedish!
@\NightandtheShape/@ Posted October 9, 2006 Posted October 9, 2006 (edited) All the programming courses I've read for the last several years on my university have been in Java. It's not because the language itself is particularly fast, effective or useful, it's because it is a high-level language that's easy to maintain, easy to get an overview of and it has extensive documentation. To be a coder, you need to learn a way of thinking that's very unnatural for humans. You have to learn to plan ahead (don't know what it's called in english, but you basically sit and draw squares, lines and circles on a paper to figure out how the different objects will work together). And lastly you'll have to learn the syntax and read the documentation of the language you're supposed to use. If you can manage that, you just need to do it more. My basic flaw is that when I get home, I have absolutely no desire to code in my spare time. That's how I know I'll never be a programmer for a game developer: the time and effort it takes to be on the cutting edge of technology is time and effort I just don't want to commit. Other than that, I think I'd make an excellent game programmer <{POST_SNAPBACK}> Having used both Java and C#, I'd take C# any day of the week, you can get into actual games coding very quickly with it, it's great for n00bs. Edited October 9, 2006 by @\NightandtheShape/@ "I'm a programmer at a games company... REET GOOD!" - Me
alanschu Posted October 9, 2006 Posted October 9, 2006 Heh, how often are UML diagrams actually used in industry?
Plano Skywalker Posted October 12, 2006 Posted October 12, 2006 I've never programmed for pay but I have for school and hobby and I work in the IT field. Anyway, if you are looking to get your feet wet, might I suggest setting up an ASP.NET web server and fool around with web scripting in ASP.NET (using either VB or C# as your language). By starting off with web scripts, you can focus on basic programming principles (including the use of objects and namespaces) but not have to deal with things like memory management right away. VB.NET is just as robust as any other language and yet its simple, intuitive language format is very unintimidating.
metadigital Posted October 16, 2006 Posted October 16, 2006 Might as well start with Visual BASIC as VB.NET (i.e. Visual BASIC.Net) ... BASIC stands for Beginner's All-purpose Symbolic Instruction Code, after all. OBSCVRVM PER OBSCVRIVS ET IGNOTVM PER IGNOTIVS OPVS ARTIFICEM PROBAT
@\NightandtheShape/@ Posted October 17, 2006 Posted October 17, 2006 Despite BASIC being for beginners I would still recommend C#, which is often seen as being rather close to BASIC. "I'm a programmer at a games company... REET GOOD!" - Me
Tigranes Posted October 17, 2006 Posted October 17, 2006 I learnt basic when I was 7, I remember it was pretty horrible. Though it still gave me some satisfaction when I could create basic mathematical applications. I'd say that starting with C++ isn't as difficult as it might seem. I picked up one book, some NWscript guides (yes, I know NWscript is different), and combined specific toolset script knowledge with fundamentals and how-things-work from the C book, and was able to do quite a lot of stuff. Standing on crutches, of course, but it did get me interested and I plan to do the same with NWN2, though hopefully with a bit more structure. I couldn't even go out and say "I know C" to anyone, though, really - but even then, it was obvious that if you're willing to stick it out and go thorugh the hellish bug-checking and trial & error, try to understand how everything works and fiddle, it's not too difficult. Let's Play: Icewind Dale Ironman (Complete) Let's Play: Icewind Dale II Ironman (Complete) Let's Play: Divinity II (Complete) Let's Play: Baldur's Gate Trilogy Ironman - BG1 (Complete) Let's Play: Baldur's Gate Trilogy Ironman - BG2 (In Progress)
Plano Skywalker Posted October 17, 2006 Posted October 17, 2006 there is also a school of thought that says a beginning programmer should start with PASCAL and then move to DELPHI (which is object-oriented PASCAL). PASCAL was designed with instruction in mind and is very clean in structure. However, since C# is essentially a blending of better aspects of Pascal, Java, and C (and retains the very "clean" structure of Pascal), one might argue that C# is the best beginner's language, all told.
metadigital Posted October 17, 2006 Posted October 17, 2006 [it] was obvious that if you're willing to stick it out and go thorugh the hellish bug-checking and trial & error, try to understand how everything works and fiddle, it's not too difficult. <{POST_SNAPBACK}> :D I remember distinctly trying to decipher my previous weeks' C assignments at the class as soon as a week later, and confirming my conclusion that it was FAR easier to write a new programme from scratch. there is also a school of thought that says a beginning programmer should start with PASCAL and then move to DELPHI (which is object-oriented PASCAL). PASCAL was designed with instruction in mind and is very clean in structure. However, since C# is essentially a blending of better aspects of Pascal, Java, and C (and retains the very "clean" structure of Pascal), one might argue that C# is the best beginner's language, all told. <{POST_SNAPBACK}> You are correct, and Pascal is a good way to learn modular programming. I hated it at the time, though, I remember distinctly (though that might have been the lecturers and not the curriculum). As long as no-one suggests Modula-2. OBSCVRVM PER OBSCVRIVS ET IGNOTVM PER IGNOTIVS OPVS ARTIFICEM PROBAT
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now