Sunday, December 25, 2011

Modern Web Browsers - Things you must know - Part 1

Before you start reading this article click here, and there you go, you found information about your browser's current version and its capabilities. Now run a Google search to find out the most recent version of  your browser which is available and you can evaluate where you stand. if you are happened to be using an outdated version of your browser, it is time to update your browser. Premise is simple you must always be using an updated version of the browser to support web in all its glory and for secured online transactions shielded from hacking community.

The whole article is divided into two parts, The current article which is Part - 1 is written from an end user perspective, which explains few must to know about modern web browsers, introduces users to web applications, browser plugins and extensions, and addresses concerns over security of online transactions.

The Part - 2 of this article will be developer centric, which briefs on below topis.
  • HTML5 and web-video
  • Parsing of a web page
  • Rendering 3D contents
  • Hardware accelerated browser rendering
  • OpenVG and OpenGL

Let's begin with Part -1
Nothing  seems to be possible, working on a computer isolated from web infrastructure. Browser, the gateway to outside world is growing aggressively to a point that, it won't be a surprise if one day browser can replace the whole operating system itself.

And this aggressive development makes everyone who uses web browsers to access world wide web to must know about few basic facts listed below.
  • What goes behind the scene when an URL is entered.
  • What makes web pages highly interactive and enables rich UI
  • What is cloud  storage and cloud computing.
  • What are web applications.
  • What are browser plugins and extensions.
  • What are browser cookies.
  • User privacy and security.
So now take up these topics one by one and try to understand from an end user perspective.

What goes behind the scene when an URL is entered.
URL is human understandable format of a machine address, and these addresses are normally referred to as IP address. As an analogy consider a phone number saved on your device, then

Contact Name =  URL of the web server / Web site.
Contact Number = Address of the web server / Web site.

When an URL is entered, browser contacts DNS server which is same as a telephone directory to convert this human understandable address or URL to machine understandable address or IP . DNS server returns browser with the IP address of the server. Once the browser receives IP address of the server it fetches the HTML page on to local machine and renders it on to screen.

What makes web pages highly interactive and enables rich UI
During the early days of web technologies, web pages were written in basic HTML language to support only text and images but as the web community grew,  new web technologies were introduced and existing technologies were enhanced to bring in rich user interface and highly interactive user experience.
This was made possible with the introduction of Java Scripts, XMLHttpRequests, CSS (Cascading Style Sheets) , AJAX and lots of browser plugins. I'll be taking up these topics in depth in part -2 of this article.

What is cloud  storage and cloud computing
Every internet user must have used an E-mail application, would have backed up some files on a server, might have played online games, would have filled applications online. All these services are the results of cloud computing,

In short, cloud computing enables an internet user to use combined capabilities of thousands of servers without the knowledge of end user about where the data is being backed up, which server is doing computations, which server is maintaining all the history of browsing habits of a user and many more.

With cloud computing, it really doesn't require an end user's computer to have a good hardware configuration, but it should be capable enough to run browser at its maximum efficiency to leverage all its functionalities. Cloud computing made it possible to run complex applications smoothly on hand held devices with low processing capabilities.

What are web applications
Internet users who are using Google Chrome must be well aware of web applications however, users who are using other web browsers than chrome would be using web applications in the form of plugins but these are different nomenclatures of the same entity.

Web applications are simple applications running within the browser, and mostly built to perform a single specific task. for e.g a simple notes application which enables user to take some quick notes,  a sports app which is made to display live cricket scores. an online photo editor, a gaming app, a new mail notifier. and many more. All these applications comes very handy and mostly would be using the power of cloud computing.

What are browser plugins and extensions
Browser plugins and extensions are the add-ons which empowers the browser to do many more things beyond browser's basic capabilities.
To quote some, add-ons like Flash Plugin enables video playback on webpages, Adobe reader plugin helps browser to render pdf  files within web browsers, a currency converter, language translator etc. All these plugins give superpower to browsers to render various contents and helps cater to various requirements of an end user.

What are browser cookies
Browser cookies are some piece of information which websites wants to remember about you. So each time when you visit a web site, the site secretly sends information about your browsing interests to your web browser in the form of  cookies which is locally stored. So next time when you visit the same site, you will see articles, photos, videos presented are inline with your interests.

For e g, Amazon may always display electronic gadgets on home screen since most of the time you browse for electronic gadgets. YouTube may present you with technical videos since you always browse about new technologies.
This is how websites are able to serve thousands of users  with different interests and from varied backgrounds with the preferred  contents.

User privacy and security
Most of us think twice before going ahead with online transactions, all of us have a common question, " Is online transactions are safe " and my answer is " Yes it is " but only with a little risk. The system is not 100% shielded from hacking community.

But users need not panic on this, because the existing systems which handle online transactions are strong enough to challenge capabilities of hackers and even if hacked, the validity of hacked data might have been expired and which would be of no use to the hacker.

Users doing online transactions must be aware that all the transactions must happen through a secured connection, hence it is must to notice the type of the protocol used is " HTTPS ".
Also, users must not be misled by phishing sites, which look exactly like a genuine site from a bank or any other financial organization. The solution to this problem is to check for certificates or browser does this on your behalf. It can be noticed that when URL of a reputed bank is loaded the background of address-bar changes to green color indicating that this is a genuine site owned by the bank.

That's all for this current part - 1 of the article. I hope this was helpful in understanding the basics about modern web browsers. part -2 of the article would be more on internals of modern web browsers.