Why are virtual machines so very popular on the server-side? Java was invented to be a client-side sandboxed environment. You remember all that applet rubbish that never took off?
It was actually a quite sensible idea: you can never know what hardware your client has, so the standardized interface (bytecodes, etc) made utter sense. It never took off for various reasons I don't pretend to know. I'm guessing it was a bit bulky to install, then the applets weren't exactly tiny (remember we only had 56k modems back then, some of us only had 33.6 or 28.8). Then I guess the nail in the coffin was that the applets weren't easy to visually control, so they generally looked a bit rubbish.. and if another nail were needed, Microsoft did their embrace and extend but got rebuffed.
So why did Java go all server-side? It doesn't make that much sense. The server-side hardware can be completely controlled and a virtual machine is slow compared to a compiled environment. Even JIT can't account for that much speed when compared to well-writted natively compiled code.. can it? Now .Net has arrived: the microsoft alternative to Java. Although there is a fair amount more emphasis for .Net to do GUI's, most of it is server-side and web-delivered. Folks are even doing work to other, older VM's like Lisp, ML, etc, to make them web-enabled.
The only concrete conclusion I can reach about VM's on the server is that they're just nicer languages. Nicer than C and C++ (arguably, Java is what C++ should have been). They're Garbage Collected so you can be a little lazy and not get bitten. Actually, memory leaks in non-GC environments are notoriously difficult to find and fix. You *can* create memory leaks in GC'd environments but I digress. While I'm digressing, there are non-VM based GC environments too.
I think the VM arguement is actually a red herring. I think Java got popular because it was a nicer language at the time and now it's achieved industry standard-ness.
Tuesday, January 10, 2006
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment