Tuesday, April 7, 2009

Is Palm Going To Win Programmers Back with WebOS

Palm announced an early access program for developers to test-drive and provide feedback on the their Mojo SDK prior to its public release last week. According to what Mitch Allen described in his new book Palm webOS (O'Reilly, 2009), it seems like WebOS is a very interesting mobile platform. It provides multi-task (background application) capability that iPhone lacks, flexible notification system (Popup and Banner vs. iPhone's Popup only), and rich services (native on-device services and cloud services). I think supporting cloud services makes a lot sense. Because it not only widens the application rang that a mobile device can be used for, but also makes the mobile development far more easier. However, how all of these promises are going to work in reality? Is Palm able to deliver what they have promised? Is Palm going to win programmers back? Let's see.

Friday, March 6, 2009

Work On Development Tools - Part Two: UMLet or Modeler

Before reading Mike's comment on my previous post, I was playing around with UMLet, an open source Java application that also has Eclipse plug-in. I thought UMLet was an execllent tiny tool that can help me. It's simple, very easy to use. I can even export diagrams as PDF, GIF or PNG format. However, it is just TOO SIMPLE too fit my need. For example, it does not provides all the notations out of box, though you can add those notions by creating by yourself. This just seems extra work for me.

Mike Milinkovich pointed me to the Eclipse Modeler, which is part of an open source project called Amalgamation. This package is not small. It is about 78M. However, according to the project's web site, it is "A lightweight set of modeling technologies delivered as an Eclipse product that focuses on the needs of a modeling Practitioner; that is, it provides UML and BPMN diagramming capabilities."

The download and installation were both straightforward. Within a few minutes, I was able to create my own diagrams. The package comes with plenty of examples covering classes, components, activities, state machines, composite structures, deployments and use cases. Thank God for helping me to make decision of sticking with Eclipse. It couldn't be easier than using it's Eclipse plug-in. Thank you Mike. You save my time.

Let's go back to work.

Wednesday, March 4, 2009

Work On Development Tools - Part One: Eclipse or NetBeans

Both Eclipse and NetBeans are open source development environment. Because I have been working on Palm OS Developer Suite, which is based on Eclipse, it is by nature to stick with Eclipse to develop Mobile Go for J2ME. However, there are a lot of stuffs need to be done to get a complete environment for design, development, test and deployment.

First of all, I need a UML tool to model my software. I used Visual Paradigm for UML (Community Edition/evaluation copy) to design Mobile Go for Palm. I want a integrated tool to do my work this time. So I searched Eclipse's plug-ins. OMG, there are so many plug-ins. Which one should I choose? What I need is a tool that allows me doing diagrams. I don't really need auto code generation, reverse engine or CVS. I want it be easy to use, don't need to take days to install, configure and learn.

So, where is my baby?

Thursday, February 26, 2009

Redesign Mobile Go Using New Design Pattern

While I was learning Java programming these days, I also reconsidered the design of Mobile Go. Mobile Go for PalmOS is an self-motivated project without well plan and design in advance. It luckily came out as a good work. It works because I fully understand what I'm doing, and moreover, what I want as a Go player.

Three years after Mobile Go was born, I now have a bigger picture for it. It will be running on much more diversified devices. It will be offering more features. Ultimately It will probably be offering services other than just playing and observing games, such as pushed news, IM, problem solving champion, etc.

Can Mobile Go achieve these goals? I don't know. But I know it won't be there if I'm not going to do something for it now. That's why I have to redesign Mobile Go. I have to do it from scratch. In order to make Mobile Go platform independent and functionality expandable, a new design pattern is needed. Yes, that is MVC (Model-View-Controller) design pattern.

Monday, February 16, 2009

J2ME - Mobile Go's Next Platform

I have been looking for the next platform for Mobile Go since it was released for Palm OS in 2006. Windows Mobile and Symbian used to be my considerations. Due to my not-so-good experience of using Dell X30, I quickly dropped Windows Mobile and picked Symbian. After weeks of study of Nokia's S60, which is the most shipped Symbian-based platform, I unfortunately realized that Symbian was not for me. Not only because it is so difficult to start with, but also there is no touch screen support until recently.

Later, there came iPhone. I initially thought it might be a perfect platform for Mobile Go. Large screen, hight resolution, touch screen, multi task and 3G all make senses. However, I was wrong again. There is touch screen but no stylus support, fingers only. Don't forget we have to squeeze a 19 x 19 board in to the 3.5 inch wide screen. How can you place a stone on such a "LARGE" screen with your finger? Though I have figured out how to solve this issue, I was still not convinced to write a program for iPhone. Because the worse thing is that iPhone DOES NOT allow a third party application running on the background. It means if there is an incoming call while you are playing a game using Mobile Go for iPhone, the connection with Go server will be dropped and Mobile Go has to be terminated. Definitely, you are going to loose the game .

Another year passed. I was still looking for the right platform for Mobile Go until my wife got her BlackBerry Bold and I got my Sony Ericsson W910i recently. I didn't know Java platform can be powerful enough to drive BlackBerry to success. I learned most feature phones and a large number of smart phones support J2ME. BlackBery, Nokia's S40 & S60, Sony Ericsson's Java Platform all support J2Me. I believe many phones from other makers like Samsung, LG, Motolora and Lenovo, you name it, do support J2ME somewhat.

Why not give Java a try? I said to myself. So I began to setup a development environment last week. I downloaded and installed Eclipse, EclipseMe, BlackBerry's JDE for Eclipse plug-in, SonyEricsson's J2ME SDK, Nokia's S40 and S60 Java SDK. About a week later, I'm now able to build and run my first Java MIDlet "Hello World" on Sony Ericsson's both emulator and real device, and Nokia's S40/S60 emulators as well. Good start. I'll keep working on BlackBerry and build up my J2ME programming skills. There are a lot of things to learn, but it will be fun and I will make it.

Tuesday, August 26, 2008

Edition Comparison Chart


Broken Download Link Fixed

Due to the recent change of my IP address, the download link was broken. Thanks to one Mobile Go user who reported this issue to me via email. It's fixed. Please sent me email regarding any comment or bug report. Thanks.