ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

"The browser is the new OS" ...(really?)

(1/4) > >>

TechDirt's Timothy Lee tries to expand on this browser = OS metaphor and receives a backlash from his (English grammar-challenged) readers. While I love the cross-platform, proprietary-erasing nature of most webware, I hate the idea that my computer is only as fast as my connection speed, and that for the most part, it's a dead machine without being online.

However, for small (EEE) machines and iPhones, their utility comes from their connectability, not their power. Here's some of the discussion. Good links at the blog page itself.
[author]: As websites have come to look more and more like applications rather than static pages, they've begun to bump up against the limits of what today's web browsers can do. Developers have responded by using a variety of proprietary plug-ins and workarounds to expand the browser's functionality. One example of this is local storage.

[reply]: I'm so tired of hearing this crap. An OS is an OS. A browser is a browser. To the extent that they do the same thing, you are just creating inefficiency. It's very clear at this point that we need a cross-platform thick client.
[author]: What's really interesting about this is that browsers are starting to resemble operating systems in their own right. One of the most fundamental features of operating systems is to provide a consistent interface for data storage. OS developers call it a file system, rather than "local storage," but the concept is the same. And as websites come to increasingly resemble full-blown operating systems, I think browser vendors are increasingly going to have to solve the same kinds of problems that operating system vendors do.

[reply]: There has been quite a lot of hype about a Web OS and the browser performing the function of operating systems. But put simply, that's never going to happen. As anyone who has seriously coded an operating system(which is quite a slim minority) will know, an operating system has to do so much more than simply deal with "local storage." First of all the browser has the underlying kernel to deal with file systems. All it has to do for a "filesystem" is to simply call fopen(). An operating system in contrast would actually have to call a hard disk driver which has to deal with the eccentricities of hard disk drives and then read everything into a buffer and then pass that to the filesystem driver where it will be parsed. Then that file information is passed to the VFS and then finally to the browser. The complexity of what a true operating system does simply dwarfs the complexity of writing a browser. Firefox, IE, Safari, Opera, and every other major browser has a true operating system to provide a consistent API on a plethora of hardware. It is true that the web is becoming more like an application and it is also acceptable to say that soon, the web will be able to serve most day-to-day applications. However, no matter how many applications it serves, the Web will never be an operating system and without the support of true operating systems, it would cease to exist in the first place.
[author]: For example, it has become increasingly common for my browser to slow to a crawl because one poorly-written, JavaScript-heavy website is sucking up all the CPU. Just as operating systems have preemptive multitasking to prevent one application from bringing the whole system to a crawl, browsers should have mechanisms to prevent one misbehaving website from bringing my browser grinding to a halt.... When websites begin to resemble full-fledged applications, browsers are going to start behaving like full-fledged operating systems.

[reply]: Kudos for using "javascript" and "misbehaving" in the same paragraph.

The browser is not the OS but once the net connection disappears I become fed up really quick.

I'm not even going to read the article, the few excerpts zridling posted were enough.

I'm really fed up with morons trying to compare browsers to operating systems - it's like comparing apples and nuclear bombs, it doesn't make sense. At all. On any level.

Sure thing, a browser can act as an application server, but that has nothing to do with an OS, really. And even if simple commodity applications can run in a browser, the browser + web isn't going to replace standalone native code anytime soon. Try doing a graphics editor or a full 3D shooter browser-style? hah.

Well, i agree and disagree with f0dder.

In the past, one ran applications on the local computer, on top of the computer's operating system.  The operating system is the main platform which provides the functions that the local program calls to do things (display a user interface, interact with file system, etc.)

The browser is making real inroads as a platform for running applications, for a variety of reasons.  A major one is that it has solved an issue that the operating systems makers have failed to solve -- platform independence.  The web standards have made it more or less possible to write a browser application that runs the same on mac, linux, windows.

The other appeal of applications running through web browsers instead of being coded directly for local operating system/binary executable, is the ability for such web applications to run as thin clients doing most of their work on the server backend.

For me, i view these things as much as a mark of failure for modern operating systems and programming languages as a success for browsers.

While some people have predicted that we will eventually move to all pcs just being thin-clients which are running web applications that do most of their work on large backend servers, i have a view that might be called the strong-programming-language view.  I hope (and expect) that the continuing evolution of programming languages, and a universal cross-platform user-interface api will unify many of these issues.

That is, I hope and expect that we will eventually rid ourselves of this evil of platform-incompatibility, so that the cross-platform interoperability, and distributed nature of browser-based programs, will eventually be fully supported by full fledged programming languages.  So that all applications will be essentially cross platform, 0-install, and will be designed to run both in a local mode and distributed client-server type mode.

Another way to say what i'm trying to say is that right now we use BROWSER programs that run on our local operating systems, and in the browser we load a page to serve an application.  I believe in the future that the "browser" features that make these programs attractive will evolve into a common LIBRARY used by programmers, instead of being a standalone all-purpose browser program.  So you wont open your "browser" and go to gmail to check your mail.  You will open your gmail program which could be coded in any of the new languages and would run on any pc, and would be as easy to code as it's web based alternative.

To put it another way:
I believe in the future the browser as we know it will stop being a platform for so many different applications.  I believe we will see the features of current browsers incorporated into programming APIs, and then go back to differentiating between surfing the internet using a browser, and using "applications" which will have all of the benefits we currently associate with services that run in browser windows.

While I love the cross-platform, proprietary-erasing nature of most webware, I hate the idea that my computer is only as fast as my connection speed, and that for the most part, it's a dead machine without being online.
-zridling (June 17, 2008, 05:54 AM)
--- End quote ---

Cross-platform... if you use Firefox, Opera or Safari users already know how cross-platform Google sites may be. Proprietary-erasing? Really? I thought webware was the ultimate proprietary system. In theory, webware should be as you describe it. In the practice not so much. Just an example, look how keyboard shortcuts or context menus in certain web applications conflict with the ones used by the browser.

An OS is an OS and a browser is a browser. You can run apps inside your browser, yeah, but I think because of things like the ones mentioned above, the browsers are already hitting a limit in their capabilities, mostly because they're duplicating functionality in a way they were not created to do.

And actually, the last paragraph in mouser's post hit the nail right in the head. Things like Mozilla's Prism, Adobe AIR, or some of the capabilities included in Qt 4.4 hint that this is the direction web applications should take in the future, platform-independent apps running as any other native application in Windows, Mac or Linux, but using a web interface and connection capabilities thanks to the underlying engine used in the framework they're running in.

Like f0dder says, certain apps belong in a true OS, and can't be replicated in a browser, or a combination like the ones above without running into problems. But a synergy of both approaches is definitely something that we already have here, and it will be easier once the aforementioned frameworks mature (which by themselves are the true definition of synergy between desktop and web apps).


[0] Message Index

[#] Next page

Go to full version