GP2X What Language Do You Think I Should Learn?

Which language should I learn?

  • ASM

    Votes: 0 0.0%
  • C(of some kind)

    Votes: 0 0.0%
  • Python

    Votes: 0 0.0%
  • other

    Votes: 0 0.0%

  • Total voters
    0

OMars

Well-Known Member
Joined
Jul 31, 2005
Messages
1,088
Website
Visit site
Well, since everybody is scaring me with the statement, 'ASM is a hard first language.', I want to know, should I keep learning ASM or learn another language? simple as that... :)

P.S. What language is fastest to learn but still good for games and emus? :blink:
 
Last edited by a moderator:
Learn C++, and learn some SDL so that you can start to write games early on.
And it was me that scared you with that statement, but anyway the thing is writing a whole program in ASM would be very hard and a waste of time, if it was a large project like a game or emulator.
 
For a first language that you can develop gp2x stuff in, I'd recommend python or fenix. There's no reason you shouldn't aim to learn C, assembler, etc, but if you don't know how to program anything, I think you should start with high level stuff then build up (maybe that should be down :) ) to low level stuff as you start to get more comfortable.

With python or fenix, you should be able to get things to run on the GP2x quite quickly, and a lot of the things you learn will help you when you come to look at other languages. Don't bite off more than you can chew.
 
It's not impossible, but the simple answer there is no.

Do you think you can write an emulator as your 'hello world' program? If you want to learn to program, you need to take the initiative - go and learn things for yourself, starting off with very simple programs, then moving on to simple games or utilities, then on to more complex things. By that time you'd be able to judge what you should be attempting.

There's no way you can write something like an emulator without going through a lot of stages of learning, whatever the language.
 
I just meant is it possible, and will it be as good as other languages..........
 
Python and Fenix will be the easiest to learn. c/c++ will take you some time to learn. c/c++ will give you more power/control but that will increase the work you have to do to make it. ASM increases it further. It's really up to you, but I would recommend starting with fenix or python.
 
Here you go. Get cracking, I expect a Dreamcast emulator by next week!

Seriously though, if you study every night and read the book and the SDL documentation you may be able to create Pong in a month or two. Game programming is one of the hardest fields (emulators are even harder) and it can take years before you finally "get it".
 
I can't imagine having taken on my emulator project in ASM, or indeed Python. C/C++ gives the programmer the ability to harness the power of the machine to an acceptable level whilst still allowing a good level of productivity. Hell, it's only taken 3 years to get to where i am with Legacy :D

Having said that, I imagine C/C++ being something of an undertaking to learn from scratch, especially in the context of GP2X development where the debugging options are limited.
 
I asked in different forums about learning a language late last year & decided on python.
Here's why..

one of the easier to learn as a first language.
Python code can work with most of the other main languages. U can learn C/C++ after python & use python code in the C/C++ programs & vice verse.
U can install the python software on pretty much any operating system for building your programs.
Good for small or large programs equally.
no porting needed when u want to use the programs u write on another operating system.
A lot of the bigger internet companys are asking for python coders (e.g Google), if u ever want to take it up as a full/part time job.
Produces cleaner code than a lot of the other languages.
Python programs run quite fast & very stable.

Found this ebook for begginers the other day if u want to take a quick look.

Good luck whichever u choose :D

***EDIT***
Spellin mistakes :angry:
 
You should definately go into C.
It's not that hard to learn. But you have to exercise as much as you can!

Try whatever you like to try, but finish it! Iron every warning & error out.
It's amazing.how far I got within a few weeks.

C is also one of the most portable languages, there's nearly no platform without a C compiler...! GCC exists for a lot of platforms, even GP2X =)
 
Out of the three I think you should learn Python as a first language.

I've seen people put off programming for life by trying to learn C first. It's very powerful, but rather hard if you're new to programming.
 
Something that struck me from rereading your posts is that you seem to be assuming that you'll always be programming in the language you start in. I hope that doesn't turn out to be the case - being able to program in multiple languages is a very useful skill, it broadens you mind, and increases the quality of your code in whichever language it's written, as you take inspiration from idioms from other languages.

By that token, your first language ought to be one that's simple to learn (Python!), even though C++ is generally considered more suitable for serious game programming. Of those advocating C, I wonder how many really learned it as a first language. You'll benefit hugely from being able to learn the basic principles of game programming without worrying about stupid low-level details like memory management, which the computer is quite capable of doing for you if you use the right languages.
 
Asm is an easier language to learn than any other and you learn how a processor actually works. (I once worked with a university graduate who had trained in C++ and could not be persuaded that a bit only had two states.)
If you have started learning asm stick with it until you have a good understanding of it. I wouldn't actually recommend trying to develop anything large in it but it will give you an understanding that will serve you well when learning/using C.
In my opionion C is the language to learn because it is least restrictive, but more important is learning how to structure a program. Once you understand how important design and structure are, the actual syntax of a particular language is the least of your worries.
In essence any language will do because you are learning how to program, whatever the language you use. I would avoid game making languages like fenix if you want to have a useful skill on your cv at the end of it all. (And they tend to be pretty slow and glitchy).
 
Thanks so much guys! :D I think C wins the poll, so I'll start working on it... :)

P.S. Could I learn to port programs and apps by, say.............summer time? Just want to know! :D
 
P.S. Could I learn to port programs and apps by, say.............summer time? Just want to know! :D
Depends on how much work you put in. It is definitely possible. Obviously if you want to port stuff with any ease on the GP2X learn SDL as well as C(++).
There are some SDL tutorials here that once you have enough C will get you upto speed, on SDL.
 
Last edited by a moderator:
Back
Top