On predictive text

Here is a funny quote from the comment on predictive text (think: T9) in the discussion about Android and mobile devices on Slashdot:

Predictive text helps a bit but sometimes it gets things so ducking wrong that I am sure the people who program it are a deliberately unhelpful bunch of ducking aunts.

Maybe I should adopt some sort of predictive text plugin for WordPress for those times when I feel like swearing…

On the nature of old things …

Here are some assorted points that will hopefully come together once I am finished writing them.

  • My mobile – Sony Ericsson P910 – looks very old and much used.
  • I got it second hand as a temporary solution.  I have feeling like it was three month ago or so.
  • Via “On this day” section of the sidebar, I am reminded of this post.
  • The biggest problem with this mobile was the broken keyboard.  A few month ago, I took it off. Now I use virtual keyboard via touch screen.
  • The second biggest problem with this phone that I had, was stylus.  I had only one and I lost it.  For a few month now I’m using just my finger.
  • I’ve heard about “temporary being the most permanent”.
  • A Polish colleague of mine once noted  that most people in Poland drive  very old cars. “A car of 25 years old is like brand new“, – he said.  He was only half joking.
  • I am looking for a new mobile phone to buy. I am not in a hurry.
  • Google Android stuff sounds very cool, and it will have a lot of future, and I will have one of those.  But they aren’t available yet.
  • iPhone is available.
  • So is BlackBerry.
  • I am not in a hurry.  By the time I will make my mind and decide to do something about my phone, probably Androids will be all over the place.

Yes, I am very slow sometimes.  But even if I am taken out of equation, like with those cars in Poland, there is one argument, which is very very simple, but is very very hard to overcome – “It works“.

Java chapter in Android story

Blogosphere keeps providing more and more insights into the Google Android story.  As I mentioned in my previous post, Android platform has a lot to do with Java.  In fact, many people consider the level to which Java is integrated into the platform to be the “big news”, unique and all.  Here is a quote from Simon Brocklehurst’s post titled “Putting The Android SDK In Perspective” (read the whole piece, it’s very good):

Android has integrated the Java platform deeply into the phone. In other words, it’s a native application platform for Android phones. No-one has done this before, and it will allow new types of application to be developed (Google has set aside $10M to give away to developers to stimulate development of such software – I hope young entrepreneurs use this opportunity, some great little companies could be started by following this path). It should be noted that Sun’s forthcoming mobile OS platform, JavaFX Mobile, is based around almost exactly the same concept.

After I read the last sentence, I realized that the story is even deeper than I thought.  Google is jumping into competition with Sun, using Sun’s own Java technology.  How is that possible?  Sun was never known for its generosity.  Did it suddenly change?  And what about Microsoft, who invest heavily into both Java and mobile industry?  How did they let this happen?  And what about all those licenses, alliances, and competition?

Google Blogoscoped has an insightful post titled “How Google Android Routes Around Java Restrictions” which explains a few things.  Here are a few quotes to get you started:

Sun released their “free java” source code under the GPLv2 to both win the free software crowd and capture peripheral innovation and bug fixing from the community. For the java standard edition (aka “the cat is out of the bag”) there is an exception to the GPLv2 that makes it “reciprocal” only for the Java platform code itself but not for the user code running on it (or most people wouldn’t even dare touching it with a pole).
But such exception to the GPLv2 is not there for the mobile edition (aka “where the money is”).
This brilliant move allows Sun to play “free software paladin” on one hand and still enjoy complete control of the licensing and income creation for the Java ME platform on mobile and embedded devices on the other

Dalvik is a virtual machine, just like Java’s or .NET’s.. but it’s Google’s own and they’re making it open source without having to ask permission to anyone

Android uses the syntax of the Java platform (the Java “language”, if you wish, which is enough to make java programmers feel at home and IDEs to support the editing smoothly) and the java SE class library but not the Java bytecode or the Java virtual machine to execute it on the phone (and, note, Android’s implementation of the Java SE class library is, indeed, Apache Harmony’s!)

So, here we are: Apple makes the iPhone, incredibly sweet, slick and game-changing and yet incredibly locked. Google makes Android and not only unlocks development abilities on the mobile phone but also unlocks millions of potential Java mobile programmers from Sun’s grip on it.

This is fascinating stuff.  Even if a bit technical for non-IT audience, still fun to read through…

Android – open source mobile platform

Engadget covers Adroid – Google’s open source mobile platform.  With pictures and videos.  I was very impressed and interested after the first video.  By the second one I almost had a nervous breakdown – it’s so cool.

There were plenty of talks about gPhone lately.  People were speculating how cool the device would be, and how it will line up with Apple’s iPhone, and things like that.  Once again Google was above the expectations.  Instead of just another device with some nifty features, it delivered a whole new world.  Hardware, SDK, documentation, and application stack… They even appeal to developers to start playing with the platform (instead of jumping around like a crazy monkey they allocated $10,000,000 USD to reward developers of the most innovative applications).

The system seems to be sweet on every level.  There is plenty of hardware power.  Optional 3D acceleration.  Touch screens.  GPS.  And more.  The operating system is Linux based.  The core things are implemented in C and C++, which gives it this extra bit of robustness.  The upper level is very much Java oriented, which, if I want it or not, is a very popular and powerful programming language used by many developers.  With this, I suspect, the quantity and quality of applications will blossom.

The system is built with expansion in mind.  It’s pluggable on every level, and although complex and with many components, is pretty easy to understand conceptually.

With Android being released and hardware catching up, I believe we are entering a new age of computing.  Mobile devices and networks will be the primary commercial development focus for the next few years.  And, although being far from the mobile industry, I am very very exciting for these times to come.  Even if just a user…