Browsers | UA - User Agents

Standards Based Development

Browser as (Mega) Platform

ssb (Site-Specific Browser)

ssb is a software application dedicated to accessing pages from a single source (site) on a network (Internet or Intranet).

ssbs typically simplify complex functionality in web browers by excluding unneccessary, and unwanted features, options, and browser chrome.

ssbs are typically implemented through the use of application frameworks (like Gecko, WebKit, etc.)

Software utilities that produce ssbs:

ria Platforms that produce ssbs:

Widget Engines that produce ssbs:

Site-Specific Browser

Browser Rendering

Paints always have at least one initial page layout, unless you are serving up blank documents. Changing input information that was used to construct the render tree may result in one or both of the following:

Repaints and Reflows

Reflow, also known as layout, or layouting, are parts or all of the render tree that need to be revalidated and have node dimensions recalculated.

Note: there is always at least one reflow, the initial layout of the page.

Repaint, also known as redraw, is a part of the screen that needs to be updated, either because of changes in geometric properties of an node, or because of stylistic change, like changing the background-color.

Triggering a Reflow/Repaint

Anything altering input information used when constructing the rendering tree can cause a repaint, reflow, such as:

Reflows and repaints are expensive, use them carefully.

Rendering: Repaint, Reflow/Relayout, Restyle

Browser Features

JavaScript Profilers

JavaScript profilers are browser features or add-ons that allow you to determine what parts of your code are fast or slow. They can help you to identify unnecessary or extraneous code that needs to be refactored. They can also be used to benchmark two or more ways of accomplishing the same task, or to determine if a certain effect is the reason for a webapp’s slowness.

JavaScript profilers give you an overview on the performance of your application on the JavaScript function level by measuring the time it takes to execute each individual function from its starts to its end. The gross execution time of a function is the overall time it takes to execute it from top to bottom. The net execution time is the gross execution time minus the time it took to execute functions called from the function.

Some functions get called more often than others. Profilers usually give you the time it took for all invocations to run as well as the average and minimum and maximum execution time.

Profilers are great for wpo for improving page/application speed. Digging into profiling will help find out where optimizations could yield the greatest benefit.

Note: optimizations will often have negative impact on the maintainability of your source code and should thus only be applied if necessary.

Improving the Performance of Your html5 App

Browser Plug-Ins

Browser Plug-Ins are sets of software components extending specific capabilities to the browser. When supported, browser plug-ins enable customizing the functionality of an application.

Like Flash, browser plug-ins provide an application framework and runtime for web developers to write plug-ins to extend the functionality of sites/applications.

Get Ready for Plug-in Free Browsing

Popular browser plug-ins are listed below:

Adobe Flash Player

Adobe Flash Player in ie installs as an Microsoft ActiveX object.

Adobe Acrobat Reader

Adobe Acrobat Reader in ie is an bho (Browser Helper Object).

Microsoft Silverlight

Apple Quicktime

Java Applets

Browser Issue Trackers

There are also wml browsers for mobile phones

4th generation browsers allow certain parts of the document to be hidden or shown, moved around on the page or have their colors changed. The functionality of many 4th generation browsers is based on proprietary technology. 5th generation browsers allow everything that 4th generation browsers allow, and in addition, they allow any parts of the document to be created or deleted, or to have their content re-written. They are by far the most versatile and allow maximum control over the contents of the web page using the w3c's dom standards.

User interface

Most major web browsers have these user interface elements in common:

Major browsers also possess incremental find features to search within a web page.

Browser Tools

RoboHornet

RoboHornet is am open source test suite benchmark designed around performance pain points real web developers care about.

References & Resources