6 ms·
Why didn't google go with more open technologies? They wrote the fastest javascript interpreter and they couldn't figure out how to use it in their phones for a
by greenlblue 16y ago
Why didn't google go with more open technologies? They wrote the fastest javascript interpreter and they couldn't figure out how to use it in their phones for app development. I guess Java has more libraries and whatnot but honestly how many apps make any real use of them.
- davidw 16y agoGoogle utilized Apache Harmony, which is a clean room implementation of Java. I guess it'd be best to read the actual complaint, and look at the code in question, but this seems to be a real shot across the bow of Apache.
- kkowalczyk 16y agoIt wasn't Google who made the decision to use Java. What we today know as Android OS was developed by Android, Inc (purchased by Google in 2005). Android, Inc. was led by Andy Rubin and their technology was essentially the same as the technology used in his previous startup, Danger Inc, started in 2002. Decision to use Linux for the kernel and Java as a language for user space programs was therefore made in 2002 and at the time it was a very sensible decision. V8 was released 6 years later and even today JavaScript is extremely bare bones as a language and wrt. to base libraries (only recently there has been a push to standardize on basic things like file support, modules etc.). As such JavaScript is not capable enough to write many kinds of programs one would like to write. Not today and definitely not in 2002. Additionally, Dalvik Java VM in Android is much better tuned for constrained, low memory, low power mobile devices than V8, which was designed for desktop class computer. Technically it's a better solution for the target devices than V8.
- deleted 16y ago[deleted]
- HappySushiCo 16y agoYour point about being fine tuned for low memory+power devices is spot on. Each app process on an Android phone is given 16mb of native heap space to play with - it's a lot for some functions but requires disciplined memory use to write stable apps (sorely lacking still).
- tzs 16y ago"Decision to use Linux for the kernel and Java as a language for user space programs was therefore made in 2002 and at the time it was a very sensible decision". And when they failed to come to terms with Sun to license JavaME, they could have revisited that decision, especially considering that they essentially threw out the Android UI when iPhone came out and changed everyone's notion of what a smartphone should like. Android post-iPhone looks and acts nothing like Android pre-iPhone. Even if they kept their code in Java, they could have made it so that the official way to write third-party applications was to write native code. That would have given them the flexibility of migrating away from Java without impacting third parties in the case of future problems over Java intellectual property. "As such JavaScript is not capable enough to write many kinds of programs one would like to write. Not today and definitely not in 2002". What kind of program for a mobile device would Javascript today not be capable of?
- nkassis 16y agoHandling binary files? The language itself is fine but some support for special things is still lacking. But that's changing fast, in the future it would be an ok choice.
- spot 16y agojavascript lacks a static type system which makes it fairly impractical for mission critical reliability you expect from your cell phone.