The browser is designed for browsing HTML pages, NOT to do everything under the sun.
Developers need to move beyond the browser and create a more heavy-duty general-purpose Internet application -- or create a framework for installing more domain-specific Internet applications in a sandbox.
Web apps could be way more powerful if they were full-fledged applications running on the server side, with just the GUI transmitted to the client - much like what you get when you do remote desktop.
Let /all/ the code run on the server side, rather than having to do client-side scripting and having to be limited by different client capabilities, etc.
The client-side interface becomes even lighter than current browsers.
Mind you, browsers are still good for what they were originally designed for, looking at basic Web pages.
It busted once already when Larry Ellison wanted to bring that back into the market in late 90's if I remember correctly. Computer industry shifted from terminals into home/desk computers in 80's, rightfully so I think. What made it lacking back then was bandwidth, which is no so very much the case these days. I think it is a good mechanism for portable, low power machines like cell phones, portable game devices maybe or things like that, but for home/office computers, no.
You are right about piracy, it seems to be primary motivator today for this server/client model.
However there are obviously two schools of thought, one already set in place and working, other on the horizon:
1. Digital Content Delivery platforms:
- Consoles: Sony PSN, Microsoft Xbox Live, Nintendo whateverthenameis for retro games
- iPhone App store, itunes etc.
- Valve Steam
This is a pretty damn fine model, it still needs polish - but I am already using it and I like it. I get the application I wan't, it works, it is native with no overhead, cheap, models for demos and trials etc.. it is the future, for now.
2. Browser as an OS/App host
this seems to be that new trend I don;t understand. We already have the OS. Sure, you can build plugins for different platforms that host the browser and push your code to that plugin - essentially either as a VM bytecode (Flash, JVM, Silverlight) which transcends browser itself and we already have trial of faith on that, or you can push code each to his own plugin. Some companies, like google here, try to make a standard but essentially, to me atleast, I don't see the difference to Flash or Silverlight or JVM - sure, there is the native 3D/driver rasterization... but that will be in those techs too, Shockwave has/had it, I'm sure Flash will too someday. I still don't see the point in browser as OS/App host. I can see browser as an app store though, or a front to many different ones, but installation and run should be done in the end on the host itself.
i think this will all become more clearer once Microsoft and/or Apple implements app store like front which we already have for phones and consoles, but this time for desktops. Funny thing is that we already have that, not in mainstream though - look at linux and other repositories and installers they have (apt with synaptics, yum etc..). Add DRM to it and you are looking at the future. Steam might be the first in mainstream world, Microsoft will follow soon, I'm damn sure about it.
All the linking that you can do with the web and the multiple representations of information have to be designed into your operating system. We've also learned that tagging combined with heirarchical categorization works really really well and the filesystem should be designed around that.
Yes you can hack all that stuff on current operating systems but it isn't the same.
Well, you're talking about a slightly different issue than what I'm talking about.
You're talking about making OS's more integrated with the Web. I'm talking about changing the Web to take full advantage of existing operating systems.
Developers need to move beyond the browser and create a more heavy-duty general-purpose Internet application -- or create a framework for installing more domain-specific Internet applications in a sandbox.