Android is going to be huge
Android is going to be larger than the iPhone, by far,
for exactly the same reasons Microsoft Windows beat
Apple the last time a new platform emerged.
I can’t stress how significant Android will be to the
future of computing. Some very well connected and
experienced people have suggested the mobile
computing platform (smart phones if you will) will be larger than the PC
industry. I believe it.
So I bet in a few years time Android will be larger than iPhone and in 10 years
it will have 80% market share and be part of an industry larger than the PC
industry.
If I was a software developer today I’d be focussing entirely on the mobile
platform (and that includes the mobile web-based platform). Oh, I am a
software developer...
The iPhone is a better product, in almost every way, than an Android phone
right now. Let’s be honest here Android is simply a copy of the pioneering
work Apple did (they always get copied, just like Windows was a poor copy of
the Mac). For the last 2 years phone development by all the leading phone
developers from Nokia, Sony, Palm to Microsoft and Google, has been just
copying, or playing catch-up with Apple. Of course they are all trying to
improve the benchmark set by Apple, and I'm sure in some ways they will
improve upon it (not much point in playing the game if you can’t improve
things).
So why will Android be so significant? Because it’s good product (probably
better than any other mobile platform, iPhone (and perhaps the Palm Pre)
excepted), and it’s free to phone manufacturers, just like MS DOS was (as
good as) free to early PC manufacturers. Apple keep things to themselves. It
has been argued it was the wrong decision for Apple in 1984 not to license
the Mac OS, and it lost them the world. It will do the same again.
But all credit to Apple, they really are the world's greatest gadget and
software innovators around, and one of the greatest hardware designers as
well.
Bad Robot
Android is actually crap. It's a broken robot.
‘Hang on, you just said it is going to be BIG, in capitals no less’ I hear you
say.
Ah yes, but big doesn’t mean good. Just look at Windows. Back when it
counted the Mac was better, and Windows merely adequate. But ‘adequate’
was all that was needed when it was a cheap as peanuts and everyone wanted
to get on the PC bandwagon. Apple was not interested in licensing the Mac
OS. So Microsoft cleaned up. Eventually Windows got a lot better and after a
while it was actually better than the Mac (back when Steve Jobs was no longer
there and Apple was run by a bunch of corporate types who had no clue, not
just about technology, and couldn’t build anything decent). Over this period
of relatively few critical years, Microsoft gained the world.
So why is Android bad? There are some major technical drawbacks to
Android, such as its use of Java as the main language for application
development. This limits the performance of native Android apps, and
inevitably results in software bloat. Google and others are beginning to
provide work-arounds to allow easier C, C++ or even native ARM code.
Having spent my entire career specialising in high-performance, super-
optimized code, the thought of using Java, and worse, an interpreted Java, in
a low-powered hand-held device is, well, just short of unbelievable.
For the techies, more details here
Does it matter that Android is a slow robot? Probably not for the main things
you use a phone for. But you certainly ain’t going to be writing any fast,
optimized games in Interpreted Java. And that’s something the iPhone excels
at.
So despite the fact Android is flawed, it's still going to be BIG, in capital
letters still.
A web log, a test of my design web software, stories about the absurd, the dumb & interesting stuff.
Labels
All
Android
Evil Google
Google Chrome
Gmail
Apple / iPhone / iPad
Stephen Fry
Optical Illusions
Bad Press
Science & Engineering
Electric Cars
Bankers
Web Fonts
September 2009
1st September 2009
So you write your app in high level Java code - this is converted into a bytcode (and not, I
would point out, standard Java bytecode, but Google’s own variant) and then this bytecode
code is interpreted (no JIT on Android) by a virtual machine which finally gets converted into
the final ARM code. (All mobile phones use the ARM processor - that’s a story for another
day.)
Yes you read that correctly. Android apps are written in Java, which is interpreted at run-
time. You might well question the sanity of Google. The iPhone on the other hand, while
also having some severe restrictions (it uses the non-standard Objective C programming
language) it does at least compile from the high level language directly into native ARM
code.
The Palm Pre? It uses JavaScript! Yes an even less efficient ‘interpreted’ language. (Both
Android and iPhone also contains efficient JavaScript interpreters as well, as part of their
web browsers). And in fact there is a lot of action right now in improving the efficiency of
JavaScript. What was once a toy language is rapidly growing up into a very powerful object-
orientated high level language that has very decent performance. The reason for the focus
on improving the performance of JavaScript is that it’s at the heart of all web-based
applications. Ajax = JavaScript, and Ajax-style web development (and associated ‘cloud
computing’ is the future of mainstream application development. So Microsoft, Google,
Apple and others are putting a lot of effort into improving JavaScript (there is a healthy
‘space race’ going on) resulting in huge performance gains over a very short period.
The ARM processor is fast. Having spent nearly 10 years writing native ARM assembler code
I know that it’s perhaps the easiest, most elegant assembly language out there. I’ve written
high-level apps that were 100% pure ARM assembly. But still, writing in Java, which is
converted into interpreted byte code is something that most low-level programmers like
myself at will find nothing short of madness. But then lots of people thought writing high-
level applications entirely in assembly language was insane. It gave us, and still gives us,
some unassailable product benefits.