Article: Web Browsers by CEan electron1212
Question asked by Kaustubh Katdare in #Coffee Room on Dec 21, 2008
Following article was submitted by CEan - Electron1212 aka Ashish Kumar for CE Innovator Contest.Category : Web Browsers
Web Broswers...Why we use them ? well everyone knows this. How they do it ? In simple words, User clicks a link in the browser, browser formats the request sends it to the server and receive the response from the server and renders it into a display for the user. Although browsers are typically used to access the world wide web, they can also be used to access information provided by web servers in private networks or content in the systems.
They came into existence in 1991 and since that time there is alot of modification happened in them. Initially they only support simple text but now most browsers natively support a variety of formats in addition to HTML, such as the JPEG, PNG and GIF image formats, and can be extended to support more through the use of plugins.
But as there is always a room for improvement, in this article i will give some suggestions to make it better and No, these suggestions will not be like making them 3D or 4D because that fantasy will not be helpful for the reason we use Web Browsers. Right ? So lets go through them one by one.
- Scheduling : Broswer should provide the facility to form a To Do List and Reminders.
- Auto Updates : The Browser should update itself accordingly in effect of the new standards which are defined by the W3C.
- Interoperatibilty : No browser till now fully supports HTML 4.01, XHTML 1.x or CSS 2.1. These are the standard of W3C. Its a common practice to make a site with keeping in mind only one browser. Because every broswer has its own settings. So there is a need of a browser which should identify all these settings and adjust it accordingly. This identification would make them 100 percent interoperatible which no browser has achieved yet. For complete interoperatibilty, there are 3 tests i.e Acid Test 1(display/box/float/clear test) ,Acid Test 2(The Second Acid Test) and Acid Test 3(The Acid3 Test). If a browser scores cent percent in these tests then we can say that it is 100 percent interoperable.
- Language Support : They should be in different languages so that people round the globe have no problem in accessing them.
- Spell Checking : Sometimes we miss spell the website name and end up writing some other site which could be dangerous, so the web broswer should be able to detect these spelling errors and should automatically correct it or confirm it from the user.
- Protocol Detection : Presently the only protocol they identify, if we do not mention it explicitly, is HTTP. So there is a need of a browser which can detect the protocol for the respective URLs automatically.
- Protection from harmful sites : They should update their database of harmful website and worms, so that they can give warning to the users when they attempt to visit any site which is blacklisted.
- Separate Threads : There should be a mechanism of separate process for different tabs in the browser. Because of which content of one tab can not infer or effect the contents of another tab. This is helpful when there is a virus/malware in a site which we opened accidently. This mistake will be limited if the tab has mutually exclusive process running for it cause in that way it can not affect others from its action or can not be installed in the system and it will be terminated when the tab is closed.
- Multiple Login : Presently we have to first sign out from our account, to check the other account if both are in the same website. For example if we have 2 accounts in Crazy Engineers forum and we logged in one account, then to check the other account we have to first log out from the current account and then log in to the another one. It would be better and more efficient that if browser provide the facility of multiple log in.
- Advanced Font Setting : Almost all of the browser available provide the facility to increase or decrease the font size of the content. But we can’t change the font color and font type. There should be a browser which should allow us to change these settings too. In that way it will be very easy to view the web page cause it is customized accordingly our convenience.
- Auto Shutdown : There should be an option to turn off the system when the specified task is over. For instance, if we are downloading/uploading some big file using browser which takes hours to complete, there should be an option to turn off the system automatically after that downloading/uploading task is over. This will be a huge energy saver.
- Platform Independence : Browser are nothing but software application which are written in languages like C,C++ or assembly. Usage of these languages make them platform dependent. Although manufacturers of these browser come up with different versions which are compatible for different platforms. But it would be nice to have a version which is compatible with every platform. And this can be done by writing these browsers using platform independent languages like Java.
- Script and Applet Blocking : Scripts and Applets are very powerful but they can also harm our systems or worse crash them. Browser should have the capabilties to avoid these scripts to run.
- Blogging : As blogging is getting popular day by day. Browser should also include a WYSIWYG(what you see is what you get) editor, by which you can publish your blog post directly from your browser window.
- Customization : Browser should also provide the facility to be customized by their users accordingly to their respective need. As everyone has different priority, customized browser will be very efficient, elegant,have breathtaking design and user friendly.
Happy Browsing !!! Posted in: #Coffee Room
Good article, well done electron1212!
good one nice written and also nice analysis
I liked the article 😀 .Really nice analysis done.Will be of great help if CE browser will be made in future.
I just said this in reference to following thread
Writing your own javasvript Engine thread
Writing your own javasvript Engine thread