Best programmaing lang. to delvelop platform game for cell phone?
#1 Members - Reputation: 122
Posted 12 November 2007 - 11:26 AM
#4 Members - Reputation: 122
Posted 13 November 2007 - 05:10 AM
I know there is Flash light; I was wondering if using a program like that would make life easier or if I was better programming it from scratch.
Are there any good resources for code?
#5 Members - Reputation: 122
Posted 29 November 2007 - 12:17 AM
Quote:
Original post by dukes
The teacher has suggested Processing which is meant to be easy but he is happy with us using whatever we feel comfortable with.
I know there is Flash light; I was wondering if using a program like that would make life easier or if I was better programming it from scratch.
Are there any good resources for code?
Hi, im into pc/online/mobi flash games and appln development. I suggest you to take J2ME for ur development. As flash lite will not support most of the global handsets.
-Basker
#6 Members - Reputation: 148
Posted 29 November 2007 - 12:55 AM
If this is the case then you'll probably want to choose what is easiest for you to get your head around. I've never heard of "processing" for mobile development but J2ME can be a little complex if you have none/very little programming experience. However if you've previously used Java or C++ or even C# then J2ME will be simple.
Another thing to ponder might be what other people in your class will use. If you use the same language as them you can be sure that you'll be able to get help/bounce ideas off the other students and basically work as a team, where as if you choose something different you'll be on your own.
I just did a quick search on processing and it sounds like it would be a good idea. It sounds fairly high level which will mean you can focus on creating the game instead of fiddling around with low level details such as how to organise your game data which you will have to do with a general purpose language like J2ME. So that would be my suggestion, and since your tutor suggested it you can be fairly certain that others will use it too AND your tutor obviously knows something about it too. So help will be out there.
#7 Senior Moderators - Reputation: 4722
Posted 29 November 2007 - 01:23 AM
Quote:
Original post by dukes
For Uni I have to create a game for a cell phone. The resolution is something like 400 * 600
My tutor has suggested a simple language called processing.
Processing would get my vote as well. I haven't used it for a cell phone, but it is a great little language to run up quick graphical demos.
#8 Members - Reputation: 100
Posted 29 November 2007 - 02:11 AM
With computing projects usually the focus is on how well you design the game / application, so your get more marks on the design document rather than actual coding.
To be honest, you have too much to focus on with your project and processing is a good choice as it's simple to learn and it offers alot of functionality at your disposal.
#9 Members - Reputation: 164
Posted 29 November 2007 - 04:52 AM
This is why so many "games graduates" come out of college and ain't got clue one how to actually write a game.
For a cell phone there are only 2 langagues in current use, J2me and BREW...pick one depending on your target phone and just get on with it. No one is going to give a damn about your use of clever programming lanauges on your college projects list. They will give a damn that you wrote a game in a langauge that's in common use and actually got it finished.
#10 Members - Reputation: 122
Posted 29 November 2007 - 10:01 AM
I did a module in C# last year so I have a basic idea of how things work. I spent a day last week playing with J2ME but there were lots of different programs and weird files so I think I am going to give processing a go. My only issue is that there are not as many resources for Processing as there are for J2ME but I`m sure I can knock something up.
To reply to Homers Pal; I think the module is meant to be about learning playability concepts and working within constraints. The reason he suggested Processing is because a lot of us are more into modeling and animating with 3DS Max. I do agree with your point that Universities churn out many unemployable people (especially in regards to game design courses), lets hope I am not one of them.
#11 Members - Reputation: 148
Posted 29 November 2007 - 10:32 AM
Quote:
Original post by Homers Pal
Why would your tutor suggest that you write a game ina language that is simply not used in the mobile gaming industry?
This is why so many "games graduates" come out of college and ain't got clue one how to actually write a game.
For a cell phone there are only 2 langagues in current use, J2me and BREW...pick one depending on your target phone and just get on with it. No one is going to give a damn about your use of clever programming lanauges on your college projects list. They will give a damn that you wrote a game in a langauge that's in common use and actually got it finished.
Why would he suggest Processing? Obviously because the class is more about design than it is about software development. There is nothing wrong with using a language that isn't used in the mobile gaming industry, unless you are specifically there to learn about how things are done in the mobile gaming industry.
Quote:
They will give a damn that you wrote a game in a langauge that's in common use
I highly doubt that in a class where the tutor himself has suggested an uncommon language that they would give higher weight to those who went against his advice just to use something that's common. It's obvious that this isn't a commercial application but an educational exercise in creating a game. So compatibility is a non-issue.
#12 Members - Reputation: 481
Posted 29 November 2007 - 10:42 AM
Quote:
Original post by Homers Pal
They will give a damn that you wrote a game in a langauge that's in common use and actually got it finished.
I have to disagree with you here. In my experience as far as looking at past projects go, they are not usually concerned with the language as much as they look at how the project was run and what was the end result. In the end it's not going to be your past projects that will land you a job it will be how you answer the interviewers programming related questions.
#13 Members - Reputation: 164
Posted 29 November 2007 - 11:49 AM
Pointless, and misguided. I want only to know they are capable of the job that's being considered.
What employers want to see is good C (BREW) and J2me skills when hiring cell phone developers. Its perfectly possible and indeed highly desirable to demonstrate good design paterns and structured thought, in either of these languages so why not teach students these skills in the languages they are going to use when they graduate.
Additional langagues are always fun to learn and do sometimes creep into the developmetn tool chain, but its not something I've seen activly encouraged during work/training time at any company I've been in. Learn non-commercial stuff in your own time in the hope it might be useful later. Telling the HR manager you've written a simple cell phone game in a language he's never heard of and has no intention of using will mark you as an unsuitable candidate.
What I'm annoyed about most here is the tutor is simply not considering the commercial needs of the industry he/she is training people to enter.
We've seen several examples of studio heads (David Braben in particular recently) making their feelings clear on the poor quality of graduates that are coming out of these course, lacking basic skills and understanding of the commercial realities of the industry.
If they're being taught languages they'll never use in the workplace, it's no wonder
#14 Members - Reputation: 148
Posted 29 November 2007 - 01:36 PM
Quote:
Original post by Homers Pal
Having been in a position previously where as head of development at a mobile comapny, I have hired coders for mobile game development, I can tell you, without hesitation, I'd have no interest in what other languages they developed a cell phone game on! Its an irrelevence in the workplace that the graduate did some fancy programming languages on a platform that wasn't even designed around it.
Pointless, and misguided. I want only to know they are capable of the job that's being considered.
What employers want to see is good C (BREW) and J2me skills when hiring cell phone developers. Its perfectly possible and indeed highly desirable to demonstrate good design paterns and structured thought, in either of these languages so why not teach students these skills in the languages they are going to use when they graduate.
Additional langagues are always fun to learn and do sometimes creep into the developmetn tool chain, but its not something I've seen activly encouraged during work/training time at any company I've been in. Learn non-commercial stuff in your own time in the hope it might be useful later. Telling the HR manager you've written a simple cell phone game in a language he's never heard of and has no intention of using will mark you as an unsuitable candidate.
What I'm annoyed about most here is the tutor is simply not considering the commercial needs of the industry he/she is training people to enter.
We've seen several examples of studio heads (David Braben in particular recently) making their feelings clear on the poor quality of graduates that are coming out of these course, lacking basic skills and understanding of the commercial realities of the industry.
If they're being taught languages they'll never use in the workplace, it's no wonder
Programming language may be of high importance to you but I'm currently working in mobile development and I got this job by presenting a small demo game written in C++ and had openly never used J2ME at all, and rarely played with Java. Getting into J2ME was a breeze, not only because it's similar to C++ but because I understood how a game worked, how each piece needed to cooperate with every other piece. The language used is a trivial detail.
I don't think you have enough information to judge what this tutor is trying to achieve. You don't even know what the subject is. All you know is that a class exists where the students have been asked to develop a game for a mobile phone. This could be a straight computer science course, it could be a design course. Hell maybe it's a "get to know your mobile phone better!" course.
Secondly if you assume it's some kind of mobile game development course you have no idea how far into the course the students are. You don't know what has previously been presented, what prerequisites there are or where the course will lead in the future.
I see no problem with using a lesser known, high level design language being taught at some point in the course, as many people here would attest to, starting something like C++ or Java without knowing basic design paradigms and structured thought can be a right royal pain in the ass. Starting off high level and working your way down is a far better way to learn as it introduces you to higher level concepts before you deal with the inner workings of such concepts.
If the focus is to learn to make a game then use Processing or something high level. If the focus is to learn J2ME then use J2ME.
#15 Members - Reputation: 388
Posted 29 November 2007 - 01:41 PM
That said, use whatever the hell you like. Just understand that in the industry J2ME, C (BREW), and C++ (Symbian platforms) is most prevalent.
#16 Members - Reputation: 164
Posted 29 November 2007 - 11:16 PM
Quote:
Original post by instinKt
Programming language may be of high importance to you but I'm currently working in mobile development and I got this job by presenting a small demo game written in C++ and had openly never used J2ME at all, and rarely played with Java. Getting into J2ME was a breeze, not only because it's similar to C++ but because I understood how a game worked, how each piece needed to cooperate with every other piece. The language used is a trivial detail.
I don't think you have enough information to judge what this tutor is trying to achieve. You don't even know what the subject is. All you know is that a class exists where the students have been asked to develop a game for a mobile phone. This could be a straight computer science course, it could be a design course. Hell maybe it's a "get to know your mobile phone better!" course.
Secondly if you assume it's some kind of mobile game development course you have no idea how far into the course the students are. You don't know what has previously been presented, what prerequisites there are or where the course will lead in the future.
I see no problem with using a lesser known, high level design language being taught at some point in the course, as many people here would attest to, starting something like C++ or Java without knowing basic design paradigms and structured thought can be a right royal pain in the ass. Starting off high level and working your way down is a far better way to learn as it introduces you to higher level concepts before you deal with the inner workings of such concepts.
If the focus is to learn to make a game then use Processing or something high level. If the focus is to learn J2ME then use J2ME.
You showed them something in C++...fine, given that there's not a huge learning curve going from C++ to Java, you will have proved to your employer you at least understood one the core languages and how to use it to develop your game...I just don't think you'd have been as successful if you'd shown a game written in processing language during your interview. Now be honest...would you?
You may see no issue with using lesser known languages, but I do...and lets be 100% honest I'm not alone in that view. If I were still hiring graduates I'd want to know they could come in and do the job from day one...not have to spend a month or more teaching them the core languages they'd need to function in my company, yes a little hand holding is needed for new recruits, but not a complete education after a degree level course.
Yes C++ can be hard....yes it can be a pain in the arse...but the OP already said he'd done a C# module last year...LAST YEAR!!! So he’s been studying at least a year and in that time he should have been exposed to J2me or C++ and learned it, but he hasn’t, he looked at J2me and found it daunting…???? I mean..why??
Java is not an especially hard language to learn, particularly if that’s something you are focusing on for several weeks, J2me even less so due to the inherent usability of the toolkit, so I don't think it unreasonable to expect students to get to grips with it early on in their studies and have mastered it within the 1st couple of semesters.
That would give them all the basic design paradigms they'd ever need.
It’s been said that learning new languages is trival to an experienced coder…yes that’s quite right, because experienced coders have assimilated that ability to understand how programming languages function and knows that all languages are basically different ways of doing the same thing…..so why not ingrain that ability early on, it’s a skill that comes quite easily once you’ve mastered and used a programming language and you’ve got past that “I get it” point.
The fact is we have students doing game development courses in the UK, lasting 2 or 3 years and they come out of it unable to code, that’s just farcical.
Its not hard to learn to program. it really isn’t, C/C++ and Java have around 20-30 simple command words to learn. The complex stuff like inheritance and polymorphism become easier to understand as you start to find you need to do things to implement your code..the simplest way to learn to code is simply to do and do again until you get to that “I get it” point.
With good tuition it takes only a couple of weeks to learn the basic of programming, further tuition and study and APPLICATIION (that’s the bit that’s often missing) should mean they’d be competent coders inside 2-3 months. Yet 3 years later, a helluva lot of them leave college with no ability to code…but can tick boxes saying they did a C# module, modules on design paradigms, modules on the history of games development and wrote a cell or PC game in an obscure language they’ll never use outside of college….
But C++ and J2me ability…”ermm no, we looked at it but found processing language easier to work with for our course work”
There’s the door kid, don’t let it smack you on the arse as you leave!
Good grief…..does no one really worry about this?
Put it another way…faced with two applicants for a programming job, one who’s been learning to code at home in his bedroom for 3 years, and has several demos showing his developing skills over that time, lots of crappy programmer art but clearly an understanding of C++, Java and whatever languages he picked up for fun and used along the way…
Or a freshly graduated with honors student and his processing language cell phone game, who did a C# module and knows who Shiggy is, but found j2me a bit daunting, and considers his 3 years a uni as a good grounding for his new career in games for which he’s got the bit of paper that say’s he’s qualified
Who do you think I’m going to hire?
Stop defending these ridiculous courses and start getting angry about them, make a change people!
#17 Members - Reputation: 100
Posted 30 November 2007 - 01:07 AM
You say that processing is not used in the mobile industry, processing was developed using Java and as a result the syntax is similar to Java.
Computer science courses especially at Uni mostly focus on design methodology, it really doesnt matter what language you use as the design principles will be the same, instead of getting bogged down with the language, use a language that is simple so you can concentrate on design. Design is the most important consideration for any project, if you have poor design skills, then there is no way on earth your project will be developed into a good product.
I understand your concerns, and I also agree that uni students should really know a 'commercial' language, such as Java or C++, but if they focus on the planning side more, learning a language will be easy as they would have developed decent planning / design techniques which will go hand-in-hand for learning.
#18 Members - Reputation: 164
Posted 30 November 2007 - 02:37 AM
Quote:
Original post by soulcast
Homers Pal, I respect your opinion but if it was a 'commercial' application then, yes, J2ME would be a good choice, but this is not the case for the project.
You say that processing is not used in the mobile industry, processing was developed using Java and as a result the syntax is similar to Java.
Computer science courses especially at Uni mostly focus on design methodology, it really doesnt matter what language you use as the design principles will be the same, instead of getting bogged down with the language, use a language that is simple so you can concentrate on design. Design is the most important consideration for any project, if you have poor design skills, then there is no way on earth your project will be developed into a good product.
I understand your concerns, and I also agree that uni students should really know a 'commercial' language, such as Java or C++, but if they focus on the planning side more, learning a language will be easy as they would have developed decent planning / design techniques which will go hand-in-hand for learning.
It really doesn't matter what Processing was developed from and how similar it is to Java, C++ or whatever...its NOT (to the very best of my knowledge) used in any commercial way...it is therefore a pointless thing to learn if you are intending to work in the commercial sector.
I'm all in favour of learning design methodology, in fact its the one area that college coders have over home coders...BUT you can and should learn design methodoloy in more useful and practical ways by using a target language you are going to end up working with in your post uni career. It makes more practical sense to know how to design a game in C or Java than it does in SimpleLanguageIllNeverUseInRealLife v2.0
All languages are easy when the foundations are set correctly(back to my "I get it" point)...if you apply yourself and have a decent tutor who tries to explain how its done C++ is not that hard.
I'm sick of people beating on about how hard C++ or Java is to learn then see them take incredible detours of extreme effort to learn something simpler only to be forced by commecial pressure to finally learn C++ as its the language of choice in games development.
No one expects a student to be a master of C or Java, but it's not stretching things too far to expect them to learn 20 or so basic commands and write simple programs to get them deveeloping their skills by doing and add to that during their time on the course.
If I had my way, I'd ban any uni from teaching anything but C++ in the 1st semester, once they've mastered that with a few months of proper tution and application they can take what they've learned there and apply that to practically any language needed.
The point of Univesity degreees is to train people to enter industry with skills that can be used for the benefit of the commerical sector...knowing how to write a phone game in Processing Language has no commecial benefit.
Being unable to program in eitehr of the 2 mainstream languages, has no benefit
Most of these courses are a shambles, a total shambles.
#19 Members - Reputation: 1360
Posted 30 November 2007 - 02:48 AM
Quote:
Original post by instinKt
Programming language may be of high importance to you but I'm currently working in mobile development and I got this job by presenting a small demo game written in C++ and had openly never used J2ME at all, and rarely played with Java. Getting into J2ME was a breeze, not only because it's similar to C++ but because I understood how a game worked, how each piece needed to cooperate with every other piece. The language used is a trivial detail.
I don't think C++ is at all like Java, but I agree that a decent programming experience is sufficient to take something up like J2ME. Perhaps most importantly because the platform and functionality are so limited, there's really not much language specific things to learn. Besides the majority of the work consists of porting anyway.
Quote:
Original post by instinKt
I don't think you have enough information to judge what this tutor is trying to achieve. You don't even know what the subject is. All you know is that a class exists where the students have been asked to develop a game for a mobile phone. This could be a straight computer science course, it could be a design course. Hell maybe it's a "get to know your mobile phone better!" course.
Secondly if you assume it's some kind of mobile game development course you have no idea how far into the course the students are. You don't know what has previously been presented, what prerequisites there are or where the course will lead in the future.
One of my first assignments in an engineering course at university was to construct a suspension bridge using nothing more than spaghetti and low quality glue. I know most infrastructure isn't build from large amounts of pasta, but it gave me the necessary insight into the behavior of structures and materials.
Quote:
Original post by trojanman
The bigger issue when it comes to mobile development is not the language but the runtime itself. Getting acclimated to slow performance, low heap, and dirty tricks you have to perform to get the game to run on all handsets really is something that is more important than the language in use. Sure, using a language fit for mobile development is important, but understanding the necessity of the platform is far more important. It is trivial for a skilled programmer to get use a new language, but it is far more difficult trying to get a console developer who is used to little limitations to create a good portable mobile game.
But that's just what it is: tricks. Any monkey can learn that. These a great examples of knowledge you should pick up in your work environment. Platforms and requirements change all the time, and it shouldn't be given a high priority in education. That said, learning about how CPU's or garbage collectors operate in general, would be something useful (although even that is questionable in J2ME: the high level language and the heavily sandboxed environment don't give you much control anyway, and can differ per device).
If it's all about tricks, I suppose we have to learn people to dump all your code in one ore two classes or to always use public variables instead of accessors. I would vouche for such an institution.
Quote:
Original post by Homers Pal
You showed them something in C++...fine, given that there's not a huge learning curve going from C++ to Java, you will have proved to your employer you at least understood one the core languages and how to use it to develop your game...I just don't think you'd have been as successful if you'd shown a game written in processing language during your interview. Now be honest...would you?
Did he say he wanted to make demo to accompany his resume?
Quote:
Yes C++ can be hard....yes it can be a pain in the arse...but the OP already said he'd done a C# module last year...LAST YEAR!!! So he’s been studying at least a year and in that time he should have been exposed to J2me or C++ and learned it, but he hasn’t, he looked at J2me and found it daunting…???? I mean..why??
Just because they both have a "C" in their name, doesn't mean the are practically the same.
Quote:
Its not hard to learn to program. it really isn’t, C/C++ and Java have around 20-30 simple command words to learn. The complex stuff like inheritance and polymorphism become easier to understand as you start to find you need to do things to implement your code..the simplest way to learn to code is simply to do and do again until you get to that “I get it” point.
I am afraid that this very attitude describes what could be the future when schools will fail to teach about the logic behind programming and patterns, and go straight for the syntax. The number of "command words" in a language is totally irrelevant. I imagine you would interview a potential employee by asking them to list fifty key words in less than three minutes?
Whether programming is easy or not depends on skill and talent. I am a terrible cook, but it doesn't mean cooking is rocket science.
#20 Members - Reputation: 164
Posted 30 November 2007 - 04:04 AM
Quote:
Original post by WanMaster Quote:
Original post by Homers Pal
You showed them something in C++...fine, given that there's not a huge learning curve going from C++ to Java, you will have proved to your employer you at least understood one the core languages and how to use it to develop your game...I just don't think you'd have been as successful if you'd shown a game written in processing language during your interview. Now be honest...would you?
Did he say he wanted to make demo to accompany his resume?
All college/uni graduates include their course work in their initial resume's..its all they have to show that they can do the work, it's therefore very important, as indeed is their home produced work and stuff they do for a hobby.
Quote:
Yes C++ can be hard....yes it can be a pain in the arse...but the OP already said he'd done a C# module last year...LAST YEAR!!! So he’s been studying at least a year and in that time he should have been exposed to J2me or C++ and learned it, but he hasn’t, he looked at J2me and found it daunting…???? I mean..why??
Quote:
Just because they both have a "C" in their name, doesn't mean the are practically the same.
No I know that, I'm having to be over simple for brevity, but learning the basic syntax of old school C will give you enough tools to get your first hello world program running in just about any langauge. C++, Java, Lua,Haskell et all are all toally different but they also have much in common that a basic syntax will help...how you use these languages to best effect comes with time and practice, I'm not disputing that.
Quote:
Its not hard to learn to program. it really isn’t, C/C++ and Java have around 20-30 simple command words to learn. The complex stuff like inheritance and polymorphism become easier to understand as you start to find you need to do things to implement your code..the simplest way to learn to code is simply to do and do again until you get to that “I get it” point.
Quote:
I am afraid that this very attitude describes what could be the future when schools will fail to teach about the logic behind programming and patterns, and go straight for the syntax. The number of "command words" in a language is totally irrelevant. I imagine you would interview a potential employee by asking them to list fifty key words in less than three minutes?
Whether programming is easy or not depends on skill and talent. I am a terrible cook, but it doesn't mean cooking is rocket science.
I'm perfectly in favour of teaching the logic behind programming and design patterns, as well as program flow, CPU workings and everything else...what I'm against is making the basic tools of game development into a black art that must never be tackled until you've become a proper jedi master..Its not that hard.... Get the sudent on an compiler and get them writing code using those basic 20 commnds that are shared with C C++ Jave and half a dozen other languages...When thy come up against something they can't handle...Show them how the language allows them to handle it in different ways, and let them add to their undestanding by finding and overcoming limits in their knowledge.
Learn by doing..I've taught dozens of programmers over the years, some of them went on to become highly techincally guys, the 1st baby steps have to be how to use a basic list of commands correctly..Use the languge you are going to use in the real world. Have it taught well and easily, and stop force feeding desing paradigms down students throats before they even understand how to make a screen object move around.
There's too much cart before the horse, you don't need to know OOP to write a game, you don't need to know a lot of things, you just need to know how to move data around, then once you have that, you can be shown better faster cleaner ways to do it. In my experience students who "get it" early on, accept and excel in the actual design side of things much quicker because they're able to use their fledgling coding skills to evaluate design concepts..
And no, I'd expect someone I'm interviewing to be able to explain what there code was doing rather than how commands it used, I'd expect their demos to be clean and easy to read, functional and working.I'd expect the interviewee to have a good grasp of the language I want him to use in the job, and most important I'd want him or her to be able to show me that they understood how their code worked....I can't rattle off 50 keywods, I don't see that is any indcation of anyones ability...shoing me where they'd used a few in interesting and unexpected ways...now that'd be interesting.
Yes skill and talent are crucial, I'd add a degree of aptitude for the discipline is also needed, and often lacking, but skill and talent are no use if you don't have the basic understanding and tools embedded in you.
I agree about the cooking, but even as a terrrible cook the more you do it, the better you'll get, you'll learn from your mistakes, the same with rocket science its only daunting at the start...you're not going to make a better omlette by using simpler frying pans or cooler gas flames...just learn to set the temp right, mix the eggs properly and you're there.






