Get the Bjarne Stroustroup book on C++, its pricey but a great resource, also I have a few other books that are useful, like problem solving in C++ by addison weasley and someone else
Get the Bjarne Stroustroup book on C++, its pricey but a great resource, also I have a few other books that are useful, like problem solving in C++ by addison weasley and someone else
Well C++ is like THE' language right?
I would like to get into game development, but the idea is if that falls flat on its face then C++ is a strong language for all sorts of things. See rather do that than rush into an actual game development course and find myself screwed at the end.
I will try to pick up more languages as I go along though.
Have to chime in again with my negative views..
Games programming is some of the most boring programming I have come across in my 3 years of Uni. I actually was on Game Programming for a semester and had to swap to computer science as it was so dull and in my particular university, badly taught imo.
It's a good plan to have something to fall back on though. As long as you focus on object orientated languages you should be pretty much good for any modern language.
If you want to do games stuff do C++
also learn an API like OpenGL (could do directx but its more closed) and try a few tutorials for it
Have a look at:
Flammable Penguins 2.0: Different by Choice
It's a site one of the girls on my course has made, she is very good at programming and has experience.
Also if you want to do games look at a game specific stuff, there are things you will need to learn like optimising a time critical operation and multithreading that will not be so important in other areas. Also you may get to look at console programming
(I am working on the Gamecube on my course at uni currently)
Game development courses are not necessarily the best route to take at all, there is debate within the industry over how well they can actually teach game development itself as well as the quality of their teaching for the more traditional material.
C++ is no longer as big as it once was. Most software development seems to be for business internal usage, and java or C# is often used for these. What matters more is understanding the underlying principles, so that you can quickly pick up any given language.
Edit: finlay666 mentions console programming. From what I understand of it, this is mainly low-level hardware interaction type stuff. This is another reason for a CSE based course, as their view of such things is generally highly transferable and microcontroller work is still in high demand.
It does depend on the content obviously
Teaching how to make fancy graphics is pretty pointless, learning how a compiler works is useful though as it shows understanding of the system and how to make the best of it.
C++ is still quite big in games having spoken to Dr. Andrew Perella of Eutechnyx, and they are using more scripting languages now such as Python, but it is a new concept for the industry AFAIK
I was referring more to the content of Richard Bartle's rant, rather than on the appropriateness of various aspects of programming being on a course.
And yes, C++, C and assembler will never stop being important for games programming purposes, given the need for speedy code. However alternative roles within the industry favour LUA and python, and some companies do actually base all their work within Java (although these are very rare).
Well the use of Python was being a scripting language it means they do not need to re compile every time they make a change in development, which is a huge time save on a large project, especially on debugging
Yeah, content hugely matters, I have had one game design module, the rest of it has been practical stuff, C++, assembly stuff, compiler and computer systems info on learning how it all works, working on a console and plenty of maths.
TBH I would rather go down the route of tools programming as the maths side of it is more interesting to me, I'm just getting rather irate that the company who should have called back 2 weeks ago (after I was told they would call me back when I called them) haven't
also that Microsoft have been quicker putting me through the employment cycle than they have, especially as MS is a lot larger and had far more applicants
I'd go out on a limb here, but have a look at inq jobs or something and find 10 jobs that want LUA? or 10 that want Python.
You'll find more mention F#.
Personally i think that we will move away from procedural languages like C++ even for games, so that we can have a mostly statless and immutable functional language that can be intrepreted for many cores. I wouldn't be surprised if enthusiats had PCs which reported 16 CPUs within the next two years (8 cores, each with SMP say).
By having a language which allows you to express your problem in an inheriently stateless functional fashion, will allow it to be simply scaled, with good performance gains, accross many threads.
Python is an intresting language, but i wouldn't recomend learning it ahead of C++ if your wanting job prospects. Not too mention languages which are easy to program badly (Delphi, VB etc) pay consideredably less than C++, Java or C# (C# is just a license to print money in the finance world atm, i know only one person who's not been able to double their B+B in the last 12 months with C# been their main skill).
On the C# note, its worth saying that MS bought in such a range of people to design the language (which is C incremented, incremnted ++++ = # gettit?) its a truely wounderful language which has stolen shameless many ideas from C++, Delphi and the Functional programming world as a whole. Its also easy to pick up (yet quite hard to master). I'd highly recomend considering learning it.
throw new ArgumentException (String, String, Exception)
or go with C# or Java as a 1st 'propper' language (no disrespect to the VB guys). Much easier and basically the same syntax.
msdn.microsoft.com (Visual studio express is free and probably the best IDE out there)
java.sun.com
plenty of books out there to teach you the ropes.
as far as uni courses do I did a postgrad MSc IT course at Teesside uni many moods ago and it was fully funded by the european social fund and very good.
I got my first programming job from it and 10 years on am still in the industry although not writing very much code any more
Most courses seem to go for java as a teaching language. Probably as it's easy to dive straight into the object oriented stuff and it comes with good documentation.
I'm doing a mostly java based OU degree at the mo and teaching myself C++ on the side, and I can see why teaching java would be significantly easier. Plus you can make your phone do fun stuff.
I also learned the basics of C# before i started, and to be honest there's a lot of overlap - learn one and it won't take a vast amount of work to pick up the others.
If you're sure you want to do C++, assuming you're pretty good with visual basic, I'd recommend getting a copy of Accelerated C++ by Andrew Koenig + Barbara Moo.
It's a quite dense book which would might confuse someone completely new to programming, but if you have some prior knowledge it's a good way to rapidly get up to speed. They do explain everything clearly, just not over and over again :-)
They also go a bit beyond the basics right from the get-go, for instance the first time you come across while loops (chapter 2) they're talking about using invariant conditions to prove that your program is correct. Not anything super-advanced or revolutionary there, but the sort of thing that tends to get dumped in the name of simplicity from most teach yourself programming books.
Basically i enjoyed it as they don't treat you like an idiot, just someone that's ignorant of C++
Anyway, that's enough advertising.
One of my uni lecturer despises OO as the work of the devil, he doesnt see how good it can be in C++, and how you can leave it out if you want to.
Java, for games it's not that huge, but can be useful.....however C++ to java (I understand a 1st years work better than a 2nd year java student can understand mine) is IMO a better transition
And the offer for the disk for C# XNA is there if you want it to the OP
...but definitely, definitely do some C++ at some point, as it'll really force you to think about the way the actual hardware is doing stuff (having to manage memory usage yourself is a formative experience, I would say), as opposed to leaving that level of hard work up to the mysteries of the garbage collector. I think you're going to do this anyway, so I'm prating pointlessly, but meh...
QFT - that immutable word pops up more and more often. It's definitely an idea to keep your eye on the procedural world, and, as such, I present the following link:Originally Posted by TheAnimus
A taste of Haskell (tutorial)
This is a link to a couple of videos (and the accompanying slides) given by a chap called Simon Peyton-Jones, entitled "A Taste Of Haskell" - I'd highly recommend it to anyone wanting to explore the language. If you've any sort of mathematical background I recommend it even more highly, because the syntax of it, if you're anything like me, will make you extremely happy.
Has he ever tried to build software in a commercial environment with a team of 5 or more programmers without using OO?
C++ is essentially OO cludged on top of C so it gives you the raw power of C and the ability to get nice and intimate with those memory registers and garbage collection BUT it also gives you the niceness that is OO. The best of both worlds. I still find that for most purposes it's quicker to build reliable apps that perform more than fast enough for end users in C# (or Java to a lesser extent).
Has anyone seen any research lately on what languages are being asked for in job adverts?
Whatever you choose have fun with it
There are currently 1 users browsing this thread. (0 members and 1 guests)