1) "Android apps are written in Java"
I haven't delved into the deeper end of things, but I suspect that it will be a matter of time before people start putting other compilers on there. I mean, Jython and JRuby are implementations of Python and Ruby for use on a JVM. So given that the phone is as open as it claims to be, it should eventually happen. I know the Haxe people are talking about porting Haxe onto android. I'm going to guess it's just a starting point to use Java.
As for the middle layers being closed, I don't see it mentioned explicitly in the design overview, and a browser is in the app layer, not the framework layer so you can replace that for sure.
2) "the installable application is dead"
To think that a mobile platform is simply a smaller web that you can take with you is a bit misguided, I think. As an example, currently, no web browser provides GPS data from the user. There's a plugin for firefox, but that's about it. So (as an example) until mobile browsers provide geo-location, you'll be limiting yourself to writing applications that confer the advantages of the web, but not of the advantages of a mobile device.
Native applications will still have their place. Just as TV didn't replace the radio completely, web apps won't completely replace native apps.
His other points seem to be better justified, but at this point, no one knows. Only time will tell.
No, the browser is definitely not just an application in Android. It is WebKit, which is in the framework layer.
Android can run any language that can compile to the JVM. On the other hand, compiling to Java bytecode really isn't much different from a source-to-source translation to Java text - at least not from the programmer's point of view. And have you ever programmed in an S2S environment? Sucko.
As for (2), you are absolutely right. The basic problem is that if the Web had been designed as an application platform from the start, the installable application would be dead.
But is the way to fix this to build a new installable application environment? Or a new network application environment?
The problem with forcing apps to be written in Java/dex bytecode is that you can go higher-level (Python/Ruby/Scala/etc.) but you can't go lower-level (C/asm). So if you want to add any new audio/video codecs, they are guaranteed to be much slower than the built-in codecs. If you want to write your own browser it has to be in bytecode, while the built-in WebKit browser is native code.
But Android phones may allow native apps; we really don't know at this point.
Too much complaining, with little in the way of suggesting alternatives except for "the iphone is better", which may be true, but Android is way more open. I guess we'll see how it plays out, by my instincts seem to be in favor of Android, even though there are some issues.
What is it with this tendency to whine about things that people really have nothing to do with. if you don't like it, don't use it. Its just irritating (most of the time).
This is what I see from android:
"Cell phone OSes, historically, have sucked. So it's easy to fall into the pattern of believing that they will always suck, and that if you make them suck 500% less, you have reached nirvana."
It's case #2 of google, using it's power as "the honest, open company" to gang up on the big guy (facebook - openSocial; blackberry, iPhone - Android). But, truly, as it turns out, is not that innovative; which , unfortunately (because some of their things are still pretty good cough reader*), I've come to only accept innovative things from them.
1) "Android apps are written in Java" I haven't delved into the deeper end of things, but I suspect that it will be a matter of time before people start putting other compilers on there. I mean, Jython and JRuby are implementations of Python and Ruby for use on a JVM. So given that the phone is as open as it claims to be, it should eventually happen. I know the Haxe people are talking about porting Haxe onto android. I'm going to guess it's just a starting point to use Java.
As for the middle layers being closed, I don't see it mentioned explicitly in the design overview, and a browser is in the app layer, not the framework layer so you can replace that for sure.
2) "the installable application is dead" To think that a mobile platform is simply a smaller web that you can take with you is a bit misguided, I think. As an example, currently, no web browser provides GPS data from the user. There's a plugin for firefox, but that's about it. So (as an example) until mobile browsers provide geo-location, you'll be limiting yourself to writing applications that confer the advantages of the web, but not of the advantages of a mobile device.
Native applications will still have their place. Just as TV didn't replace the radio completely, web apps won't completely replace native apps.
His other points seem to be better justified, but at this point, no one knows. Only time will tell.