Sign in to follow this  

What path?

This topic is 3046 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, Over the last few years I have been interested in the field of programming/game development and hope to someday pursue the path through collage and so on. I am 17 and going into my junior year at high school and lately I have started to work on programming/game development. After browsing through forums and the internet I came up with the general idea that learning Python as my first language would be best and using it with pygame. So over the last few days I have been doing this and working hard and progressing slowly, but my main questions are these. 1. Should I continue down this path and stay steady? 2. Will these be applicable in the future, such as will I ever use these again? 3. Should I just choose a new system/path to follow that will benefit me more? 4. Any advice on things to do after this/or the new system I have chosen? All comments/pointers are welcomed, My over all plan is to one day become a game programmer if that helps at all, Thanks in advance!

Share this post


Link to post
Share on other sites
@Tom
Ok thanks but could you elaborate more?

1. Why should ? stay down this path? What are the advantages and disadvantages of it?

2. Yes it is relevant, Will I be using the skills I learned from these programs in future programs/games I create? And is python becoming more popular or less?

3. Explained in 1.

4. The FAQ does not have any personally opinions and that is what I am looking for. Like what languages after my first one.

Thanks again in advance!

Share this post


Link to post
Share on other sites
Quote:
is python becoming more popular or less


Not really something you should be asking yourself when you're still learning. You can do everything with python. And I mean it, you can do -everything- with python.

Want to build a webapp? There's Django.

Want to build a 3D game? There's panda 3d.

Want to build a complex numeric application? There's numpy.

Want your application to have a little added speed? There's psyco.

You can even do functional programming with python, which is something a lot of multi-paradigm languages can't do.

That said, two things:

1. Python is dependent on the C++ libraries it uses, and the best way to solve certain bottlenecks is to re-write your code in C++.

That really isn't saying much. That's like me telling you you should learn assembly to solve bottlenecks in C. This is something which is highly unlikely at your level. You will not be building any 3D engines, or anything else which is resource hungry.

Attempting to learn C++ at this point would over complicate your learning process. Attempting to learn assembly would utterly destroy it. It'd be like asking you to juggle chainsaws while you still haven't gotten oranges down.

2. C++ is the primary language used in professional game programming.

You probably already know this, but read this article: http://scientificninja.com/advice/choosing-tools

At this level you need to concentrate less on the language and more on your style. You need to learn proper design paradigms, modularity, and other programming concepts which are language agnostic. Most importantly, you need to learn to enjoy programming. Python will allow you to learn these things without letting the syntax get in your way.

Attempting to get the most out of python will also teach you best practices about resource handling. I.E. If you only create the objects you need, and constrain their lifetime properly, the garbage collector will love you.

Allocating something to memory and using it in a thousand places, is always a lot faster than allocating it a thousand times and using it ten times. This is useful not just for Python, but also for C++, Lua, C#, Java, and most other languages.

Bottom line:

Stick with python, enjoy making cool stuff while you can, you can worry about C++ when you start your CS degree.

Share this post


Link to post
Share on other sites

This topic is 3046 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this