   what to do now?
  ok so this C++ primer plus book that I ordered came today and I havent decided whether Im gonna open it and attempt to learn c++ instead of Python, or send it back, get back my 40 bucks, and continue to learn python. I was reading through some forums today where people either said "I would never attempt to code a game entirely in Python", and others said said how great it was. I know that Im just beginning and will not be creating games for a while, I just dont want to really learn python well only to find out... Ohh crap i cant make decent games in this language for whatever reasons now i have to go and learn c++ anyway before i can get into game development. I know im probably being annoying with this decision and making it more complicated than necessary.. its just that im so unbelievably confused and I wanna do whats best for myself ;)   
  Although I am no expert I have programmed off and on for a long time dabbling around in different languages and Ill tell you this:It is better to start with an easy language, you get to do more faster. Granted Python may not have the power of C++ BUT as a programmer you will learn many languages.Think of it this way: Say you were going to build a car. C++ is like assembling every single piece by yourself with blueprints. Python is more like having several large pieces factory made sent to your house to put together.Both are a challenge but dont you think it would be easier to start putting a car together with the factory pieces then learn to create the pieces yourself?That may not be the best analogy but you can see where I'm going. I would learn something easier before you delve into something harder.   ;  I add that my biggest regret was not sticking with a simpler language and learning it completely first before going off to C++ (Although I started with assembly, then C, then VB, now C++ lol)   ;  What is a "decent game"? Have you checked to see what games people have made in Python? Do they qualify as "decent"?Lots of people say lots of things. Do your research. Google is your friend.   ;  I suppose that you should also ask yourself wich kind of games you're going to make: c++ gives you high control on the instructions and the memory layout of your data structures, and this can help when dealing with cutting edge graphic or the like, but I belive that this wont be your first game so untill you need every single clock cycle from your cpu and you know how to get it, then using other languages like python should be ok.And I am a c++ programmer, I only used python a feew times and I didn't liked it much, but a lot of people say it is wonderful, so it is a good choice.   ;  If you are to choose between these two languages as a first, then I would say python is easier to start with.  If you learn one language well, then picking up other entirely different languages becomes easier so I would worry less about having to switch at a later date.  Depending on what you want Python may meet all your needs.C++ definately has more complexity to it.  To the beginner I think there can be much misleading and distraction with C++, although it is totally feasible to start with it as the path has been trodden already.  Just harder.Even better advice would be to arm yourself with a C# compiler and if you are focusing on learning to develop games, then follow up on learning C# by working with XNA.   ;  All I can say now is you aren't likely to hear of someone posting about building an RPG game in a week with C++ but I know of several where it was done using Python and C#.An RPG in a week, starting from scratch? How hard could it be?developing a game from the ground up in four days.You always hear of people around here saying they are starting an RPG in C++ but never see or hear anything more since they are probably still busy programming it-LOL!I'm serious I've been programming a while and you know how many C++ games/tutorials I've posted here? 0Python I got at least 1 I did a while back - Pygame easy as py;  my 2c... learning an 'easy' language rather than a 'hard' language I think is akin to reading a 'for dummys' book compared to an encyclopaedia.  Sure the for dummies may seem a bit like wearing a nappy and training wheels, but for someone starting fresh it is perfect as it can all be covered and a general understanding and ability gained from it, whereas trying to study an encyclopaedia would be like drowning in a sea of babble and techno-wtf.  If you start with the easy option theres no reason you can't then move to a more robust/'difficult' one.  All languages are somewhat similar to each other, it's just that some give plenty of hand-holding whereas others will let you knife yourself in the head and hand you the knife to do it.   ;  I might be going a complete different way here as most answers but I would recommend to go straight for c++. I did the same thing when I started out and its hard but its really worth it. Once you understand the core concepts of a programming language like c++, it will be much easier for you to learn python in a grasp. Learning c++ alows you to think more about the machine you are working on and learns you that you that you need to be carefull with the resources you use (learns you to optimize). If you start at a very high language like python you are probably going to have the idea that you don't need to optimize and that everything is speedy. Also you probably learn the basics of the stack etc which can make you understand more about all programming languages.Actualy it all depends on what you want to do with your knowledge. Let me give you a few examples: 1) I want to program my own operating system : Learn c++,asm (both real and not real)2) I want to program for banks etc : learn Java and Cobol. (Cobol because old apps at banks still use it.3) I want to program for noteries, lawyers,dentist etc : learn some very high language like c#,java etc.4) I want to program simple casual games that are browser based: flash,java5) I want to program modest casual games or hardcore games :  c++,asm (and the SSE registers),hlslMy point is it all depends on what you want to do and from what I think you want to do I would go with c++ and maybe learn asm afterwards if you feel the need for it. I also recommend starting out with a lower level api like directx for rendering and building your own components on it as you learn. Later you can use other engines but it helps you understand what its all about.But hey, maybe I am just old fashioned :DCheersPonl   ;  If you feel that python is somehow 'tainted' by not being as complex or dare i say it as 'professional' as c++ then maybe you should consider that python is arguably a more powerful language than c++. The problem with c++ and c++ programmers is that having spent so long in mastering the complexities of a complicated language it seems they exhaust some capacity to be able to look sideways and see deficiencies in their own working knowledge. If this seems to be overstated - well its a general observation that applies to myself as much as anybody else - and is something i work on daily as a paid programmer at trying to correct. I will avoid giving technical details but in general python is more powerful at simply capturing what it is that you want to do as a programmer - and this is the reason that most will state that it is more productive. Simply put, you can implement more complicated design, more simply in python than you can in a language like c++. Rather than trying to evaluate the merits of both languages - an idealistic or purist approach to aim for might be to learn both python and c++ - then write the low level stuff in c++ and then the high level stuff in python. A two tiered use of languages in modern applications is very common - take Microsoft Office for example which is COM based and scriptable although written in c++. Likewise many/most games. Also if it's lippman's c++ 'primer' - well I learnt c++ straight from this text but cannot recommend it. learn python and design patterns and at least in my opinion you would be far ahead in doing productive stuff.