Hi Mike - thanks very much for your wonderfully thorough/informative reply. I see that there are more than a few reasons not to begin work on an Android port/rewrite!!!
I have a couple of points though...
1. If Android becomes the dominant platform - then generally users would not be buying an Android device because it runs Pleco, but instead they are more likely to buy Pleco because it runs on Android. I think this is very different to what you have now. Many of your users have bought devices solely to run Pleco or at least it has been a major factor in their choice of new device. I'd be interested in the breakdown actually:
- % Users who bought Pleco to run on a device they already had
- % Users who bought a device just for Pleco (maybe they have a separate device for phone calls etc)
- % Users who bought a new device heavily influenced by Pleco's requirements - i.e. they would have bought something very different had they not bought Pleco.
Personally, I fall into the last category. I'd imagine that not so many people fall into the first category simply because not many people own Palm, WM devices.
Have you looked much into selling a Pleco Device???
2. Technical - Isn't Java the lingua franca these days? Querying a database - SQL? I think the iPhone also supports Java. But point taken - its a huge rewrite and combine that with the risk of Android flopping, its probably not worth it.
As a software developer myself, I tend to develop in the higher-level languages like Java and, more recently, actionscript/flex (which I hate!). Most of my code can pretty much run on any device with little modification - because most devices run java and flash (ok, maybe many mobile devices don't run flash but they probably will do later). As a consumer, I try to buy devices that don't lock me in too much - so no iPhone for me.
But, sure, if its relatively easy to port to the iPhone then why not!
BTW - Is there anything you could do using Flash/Flex/AIR???
3. Business - Its quite reasonable to assume that, had you not ported to WM, your sales would have gone down. Certainly eventually. As less and less people use Palm , your business would be moving more towards a device-selling model (like an electronic dictionary) wouldn't it?
Hardware Fragmentation - I'd be interested to see how the Android Market allows you to filter applications based on requirements for things like touch screen, screen sizes, keyboard etc. I saw that Android Market takes a 30% cut, although none of this goes to Google, instead to carriers and admin/billing fees. I wonder what stops people finding an app there and then, instead of buying there, going to the software company's website to get the app for a 30% discount???
Generally, I think the whole hardware thing is more of an issue for customers who buy a device because of Pleco. If they already have the device (or were going to buy it anyway) they can just try out the demo and then buy if it works and they think its worth it.
4. Personal - I know what you mean. Its a bit like refactoring. Sometimes I've spent weeks refactoring something and you just finish up with the same thing (feature wise) and that can often lead to question whether it was worth it. Personally, when I have code that I know needs refactoring then I feel much more comfortable with that code after refactoring, knowing that I can run happily with it for a good period of time to come. Otherwise I feel like I'm going further and further towards a dead end when I have to back out and refactor anyway. Maybe thats where the analogy breaks down - because I don't think for one moment that iPhone or WM are dead ends (for the foreseeable future).
Ok, that's enough from me. Don't feel you have to answer any of this - its just my drivel!
Here is something I found interesting:
http://www.pbs.org/cringely/pulpit/2008 ... 05500.html
And here is another blogger's take on the above:
http://www.crunchgear.com/2008/10/24/cr ... -is-dying/