Saturday, October 23, 2004

What's the difference between local application and web application?

I am looking in the future of web applications. Those applications could do something that we are doing with our local applications but running or look like running in a web browser.

But why we need those applications? There are several reasons.

  1. We want mobility.
    • We want to, most time we have to walk arround. For example, many times I have to work in my office for some time and then go to a library and then work at the library for some other time. I have a notebook, but I don't like to carry it with me all the time. And there are always some computers in the library, and there is always at least one web browser on each of those computers. I can use them.
  2. For the mobility, we want data to be centralized.
    • I hate to say, "Oh, my, I forget my data in the office." And I can put my data on the webserver and access them via web browser. But if we have the data centralized, we have to use network con retrieve the data.
  3. We want multi-platform compatibility.
    • I use different computers, and different people use different computers. No body want to write same application several times just for different platform. And as web content can be used by web browser, there problem of compatibility become no problem.
  4. We want to have pictures, videos and more...
    • All of those ability can be achieved by telnet. But we also want to use see the graphics and see the radios.
  5. Security concerns
    • And because of the security concerns, ports other than 80 has been closed in may computers. In some other case, even any application other than web browser has been shut off the net. Thus, telnet and other applications are forbidden to reach the web, we we have to use web browser. The other security concern is the encryption, the encrypt method used by browsers are well developed and we don need to concern the bugs.

And web applications are different from common applications. Those common applications retrieve data via network using what ever method and has full access to the local data. Web application has tow layers, the first layer is the web server side application. The data are stored on the web server and the server side have full access to the data. Then the server side application send the data in partially rendered form, like HTML or XML, to the web browser. The web broser render the data into understandable form.

The ability of web appliation to render the data is confined by the ability of webbroser to render HTML and the ability of web developer. The ability of web browser is limited, unfortunately. For example, by now, the round corner, which has been used on printed media for hundreds of years, has not been impleted on major browsers on a standard way.

The ability of HTTP is confined. Though we have XML now, XML can be used to transfer diferent kind of data with very complicated structure, the XML has its own problem.

XML is slow and resource demanding.

So over all, web applications have their own points. But the ability of web applications are limited. We may not be able to produce web application as powerful as common applications. But web applications do have their own points, like mobility and security.