I’m currently sitting in a RJUG presentation about programming for the Android (Google) phone. As part of the talk, the presenter passed around his “Development” phone, which is basically a G1 without the service contract. There is a lot to like about Android, but in many ways it seems like it’s not really polished.
For instance, holding the “Development” phone and my iPod Touch shows that animation (including scrolling lists) seems jerky on Android compared to Apple. The Android version of the bubble level app just jumps to the final position, rather than sliding there.
Android’s run time environment seems very powerful and it can do a lot of things that you can’t do on the iPhone. Like background processes and interprocess communications. But the things it can do that iPhone can do, it looks like it would be harder on the Android.
I’d much rather do Java on Eclipse than Objective-C (a seriously weird language) on Xcode (an IDE that I still don’t like). On the other hand, I don’t think I want to manually create user interfaces in XML rather than using InterfaceBuilder. (On the gripping hand, maybe somebody will write a decent interface builder for Android, fix the stuttery scrolling and make non-ugly widget set.)
Sigh. Why isn’t there one perfect SmartPhone instead of a couple that are half-way there?
If you’d rather be doing Java then…do Java. Isn’t the whole point of coding on your own time to make things you enjoy? Otherwise it’s just work you don’t get paid for.
And as for the perfect smart phone thing, I think this will shake out very similar to UNIX/Mac OS. Mac OS had the details right but UNIX had the infrastructure, and while you can fix the details(Ubuntu) you can’t fix the infrastructure(OSX).
I’m not getting your point about the Unix/Mac OS thing. Apple *did* fix the infrastructure – by moving to a Unix base for OS X, they did in one year what the Linux community hadn’t been able to do in 10, and which they *still* haven’t done 5 years later: make a consistent, user friendly, beautiful and powerful OS.
Which gets back to another complaint about Android: the widget set is UUUUUGGGLY. Featureless square buttons and text entry fields that look like Xt widgets from 15 years ago. Come on, if you want to crack the iPhone market, the thing can’t look like you’ve been living in a cave for the last decade. And because the default widget set it ugly, each app is going to make their own “improvements”, which will lead to your Android being a mish-mash of inconsistent and clashing styles.
Which I guess answers your question about why I’d develop for the iPhone instead of Android – the programming is harder, but the result is better.
If Apple means to be serious about iPhone as a SMART phone and not just a phone with games they have to realize that the contacts and calendar are critical to the smartness and the current state with no API access to even READ the calendar is a fatal flaw. At present I’m finding I have to maintain two calendars, one that syncs between google, lotus notes and the blackberry, and another one that is standalone in an iPod application for task management I got addicted to when it was on the Palm. Even if I could bring the iPod into the sync universe of the master calendar I still have to run a 2nd one for the application since it can’t read from the flipping native iPod calendar app.
So, you want to find out how many people are offended about your statement on linux?
Some people value freedom, and free as in “free lunch” may not be part of the original linux design but it sure it a nice thing.
When the oil price was high last year, my brother was very happy he has a facility for heating his house with wood with he (by some strange local law) he can collect freely at no cost less than a mile from his home. His kids surely prefer a heated home to a freezing cold home.