jump to navigation

Platform Problems June 15, 2008

Posted by olvidadorio in Programming.
Tags: , , , , , , , , , ,

Earlier today I read a TechCrunch article (had been reddited) on Google Gears and its position as a direct competitor. The main thrust is that the browser — possibly with some extension — is going to be the new important virtual machine — and that Google is positioning Gears as an alternative to both Flex/Air and that M$ technology. I was having an uneasy feeling dans le gutt.

Also, I was watching a joint interview by Steve Jobs and Bill Gates. Besides this being an intriguing setting as a whole, just watch the second part of this sub-clip. Steve & Bill are asked for their take on exactly this browser-as-new-standard-platform thesis. Of course they basically laugh it off. But as Jobs puts it: they are the dinosaurs. But watch the clip, it’s nice.

Update: Despite the fact that there would be no cocoa for Windows, which had been dispelled, there seems to be something afoot, involving SproutCore to take on Flash/Flex/AIR et al..

Here’s my (& my gutt’s) take: The browser (or conversely, the www) is quite a shitty choice for a standard platform because:

  • You get things by URLs. So it’s essentially a command-line interface. Now I’m not opposed to text-interfaces. However, it is a command-line that’s highly crufted, has a terribly over-crowded namespace already (it’ll only be getting worse, i tell you) and is currently in use to do something else than application control, namely document retrieval. Now, given it was designed to do document retrieval it’s not even a very good choice IMHO, but we can live with it, due to highly advanced search technology we all love and resort to.
  • I am currently not a highly advanced web developer, therefore I cannot really judge the technological merits of browser (AJAX) and www for application development. I do however have the feeling that there are quite a lot of equivalents of the infamous A 20 gate still hanging around that every poor web-developer has to wade through while building — what basically amounts to — his own little runtime-environment on that rudimentary platform. (I once started out with Assembly and bootsector programming, so I still can feel the pain. ;-} )
  • Next to introducing proprietary browser-extensions, one solution might be to build a “Web Operating System (TM)” and unify everything on one website. (Much better, yeah right.) Stan once posted a blog entry with such musings on whether Facebook might become that platform of choice. So far, I don’t think that’s happening — for Facebook at least (and I hope it won’t). But that does not mean there will not be even smarter initiatives in such a direction, probably somehow cloudy and stemming from Google App Engine. All in all, there are however some hefty interface-issues to deal with until we get a real Web-OS, IMHO. Plus, just for privacy and neutrality reasons — it’s a bad idea.

There is a lot of technological (and I suspect economic as well) uncertainty around. As always, technology is changing at a giddy rate. So it’s important to focus on what we need: A good virtual machine that can have a well-structured sandbox with rich interfaces on the client side and that can harness cross-(app-)provider interaction. This is a hard thing to do. We will probably be suffering from shitty web-technology for a while to come. But it’s important to focus on what we need — and strive towards reaching it.

One last remark: I personally would prefer a rich, scriptable Instant Messaging system as a platform of choice; IM services are getting the namespace-problem sorted out. There is no end to chaining and piping possible (Twitter is a good example for what one could do with IM, not exactly the downtimes though). Instant Messaging has the whole social-networking who-are-my-friends concept already built-in at it’s innermost core, it’s not just some crème on the surface(!). Peer-to-peer communication is an absolute built-in as well, that still could be massively expanded. And, in the end of the day, messages provide a much more intuitive, non-crufty, also text-based interface (and for me as an AI developer, it’s a lot more interesting).

Alright, IM as a platform hasn’t yet been taken seriously, or possibly even thought of in this way. So far, there hasn’t been movement in terms of a scripting standard AFAIK (but if, it’d be cool, ’cause it’ll be Erlang). Also, how to do visual interfaces remains absolutely unclear. But I find the idea of a rich Instant Messenger much more attractive — and less messy — than using the browser as platform of choice for internet applications.



1. web design company - June 15, 2008

There’s lots of reasons why Web apps running in the browser may not be as good as native apps for various tasks. But the points he chooses to quibble with make him sound uninformed – few people go to web sites by typing in URLs. And suggesting that IM clients would make a better platform completely misses the point. This would not solve the biggest real problem with browser-as-a-platform, which is that for security reasons you can’t give random untrusted Web content the ability to do all the kinds of things native apps can do. An IM client would actually make this worse, since other users could push you content you didn’t even ask for.

2. olvidadorio - June 15, 2008

Hmm.. I think I was also referring to the fact that the whole URL-namespace is getting crowded, that it also really wasn’t designed to be a method of supplying arguments to services. I still believe that it would be really nice to do something like that using IMs, namespaces can more easily be maintained, I believe. But it’s not more than an intriguing idea.

I believe that the sandboxing-problem will somehow be managed – and already is being managed rather skillfully. Of course it’s tricky – but that doesn’t at all depend on the choice of browser as a virtual machine, it’s a problem of all such virtual machines.

3. Robert Levy - June 15, 2008

I’m no expert, but I think that for both desktop and browser there are the same issues of regulating interaction between entities with varying levels of trust. One recent development on that front are improved implementations of “capabilitied-based security” for the browser. See http://en.wikipedia.org/wiki/Capability-based_security and http://lambda-the-ultimate.org/node/2530 and http://google-caja.googlecode.com/files/caja-spec-2007-10-11.pdf

4. Top Posts « WordPress.com - June 16, 2008

[…] Platform Problems Earlier today I read a TechCrunch article (had been reddited) on Google Gears and its position as a direct competitor. […] […]

5. olvidadorio - June 16, 2008

@Robert: thank you for the links! I very much agree with you that this is an issue independet of the question, whether or not to use desktop or browser — or any other virtual machine for that sake.

I hadn’t before heard of capability-based security, but interestingly enough had in a thought-experiment come up with a similar idea, it looks good!

greetings, gabe.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: