The 1st DoJa Application Contest
![]() |
I liked the opportunity of challenge given by the first Contest. Not only is it a chance to measure one's skill against all the other (non pro) programmers in the world, but also because it is a good occasion to get the best out of oneself. There is a lot of creativity needed to get something out of so little resource, a so spartan an API (relatively speaking, of course, no offense meant). After years of abstract API anesthesia, programmers can find a real challenge in mobile development, where they have to put their hands in the dirt (keeping the memory footprint low, drawing the interface by hand). The fact that the software follows the user wherever they go is another wonderful source of new ideas of application. In my case, getting to fit a dictionary that is normally several Mb large into a (relatively) was a delightful experience. I am still surprised it was possible at all, and I use it every day into the bargain.I hope others have found it useful. |
![]() |
The first contest sure was a lot of fun. I had a look at the other prizewinning applications, and they were really great. Maybe for the next contest, it would be nice to put even more entries on display afterwards, I'm sure there was more then just these three. Though I can imagine it would be difficult if a lot of work would be involved in making them suitable for a wide range of handsets. And it might open up some discussions about which application should have won. |
![]() |
The first contest was a great challenge for me, it was the first Doja applet I wrote with a "production and stable" release. I focused on usability and internationalization of the applet (available in French and English), and Sudoku was, at this time, very popular in France. This simple game is very "computive" and suite well for alogrithm and software design. So sad that the doja capabilities (such as memory size) was so restrictives because I could built a better written software (clearer, use Java objects and advanced algorithm) . If you look at the source code of this applet (wich is probably available somewhere (look at my webblog)) you would see some awfull hacks and some optimizations that would angry a real Java designer ! That would be my first advice for the new contest : don't try to write beautifull and well organized code because at one time, you will have a memory problem. Use "public" variables instead of accessor methods etc.... Don't hesitate to write long code in once functions instead of several classes and objects. A byte is a byte, and in Doja each bytes count ! A second advice is to try and test your code often. Change and re-factor your code soon end often to see if you can gain some bytes and some speed. If you have a scriptable production environement (like the Eclipse IDE), some scripts to build your applet will help you to find the rights optimizations in your code. Another advice is to share your code (the Doja website is a good place for that) and take a look to other people codes if availables. Exchanging coders point of view is a good thing to learn new way to code or how to made a simple (or complicated) task. One more advice (and maybe the most important of them) is the base idea of your game. Find an idea that could fit a mobile telephone device. Unlike a console games, you have 9 keys and a cursor to interact with the game. You should take advantage of this uncommon features. To enhance game experience, use vibrator and sounds. But the idea of the game must be simple and addictive (take a look at a Tetris game : a few KB of code for hours of gameplay !). Some games I would like to play on my Doja telephone are : a PacMan, and adventure games (on line) like Zelda, and a Puzzle Bobble clone (Frozen Bubbles was a very good games !). But think also to utilities applet : dictionary, tasks or courses list, a messenger, an applet to help me to compute my car petrol consumption ! I wish good luck to all contest users ! |





