< Walla Walla Carpet Store Goes Live
Oct 17, 2011 at 04:05pm
Age: 7 yrs
Category: Web Technology
By: Steven Holms

Google Chrome: A Web Developer's Take


Google Chrome Icon

Google Chrome Icon

Opens external link in new windowGoogle Chrome has become the default Opens external link in new windowweb browser for many people around the world. Starting in late 2008, Opens external link in new windowGoogle released their Opens external link in new windowopen source browser for all to use. When Google Chrome launched, all of the mainstream browsers were slow, unwieldy, and had a lot of "chrome," which is the browser's interface, minus the web page (things like the address bar, tabs, toolbars, etc). Google Chrome was named for its rather small chrome footprint, reducing the browser chrome to an absolute minimum, which does two very important things. First, having less chrome means more room for the website to take up. This means that you can use the web as it was designed, as its own platform. Second, it actually makes Chrome much easier to use. Because there aren't thousands of little menu items and buttons floating everywhere, Chrome is quite easy to use and doesn't get in the way of your web browsing experience. In the last two years, Opens external link in new windowInternet Explorer and Opens external link in new windowFirefox have both copied this idea of reducing browser chrome to make their browsers more appealing, though Chrome has continued to simplify it even more over time. 

Built for Speed

Google's goal with Chrome was to create an open browser that focused on three main areas: speed, security, and ease of use. For speed, Google focused mainly on improving Opens external link in new windowJavaScript performance. Again, when Google Chrome first was introduced, the web was a very different place. JavaScript, while popular for doing basic programming on web pages, was not very fast in the browsers of the time. So Chrome created a new Opens external link in new windowJavaScript engine, called V8, to fix this problem. The V8 JavaScript engine is what allows Opens external link in new windowHTML5 apps to run smoothly in Chrome. It is what made early HTML5 based games possible, and it continues to get faster with each release. Early on, Chrome was able to keep a significant lead over the other major browsers in JavaScript execution speed, and many releases of the Chrome browser saw improvements of up to 3 times the previous release's speed. This created an arms race between the different browsers, causing even Opens external link in new windowMicrosoft to significantly improve their JavaScript speed. Another area that Chrome is speedy is in releases. Chrome gets a new stable update about every 6 weeks. You can also get on the Beta channel to get updates about once every couple of weeks or the Dev channel which gets updated about once a week. If you really like living on the edge, you can install the Canary release channel, which is a separate Chrome installation that is updated daily. This release channel is extremely unstable, and is only available on Windows and Mac OS currently. But more on the channels later, as the rapid release cycle of Chrome brings us to the next strength: security.

Security, not obscurity

Chrome's security comes from many different places. Starting with its rapid release cycle, where not only are new features pumped out quickly, but also security issues are fixed in a timely manner. Google encourages independent developers to find bugs, report them, and even submit code that will patch the holes. Google does two things to foster this kind of collaboration from the community. First, Chrome is open source, which means anyone can see, copy, and edit the source code to make the browser even better. This means people outside of Google can change the code that is causing the security risk, compile it on their own and make sure their patch works. They can then submit the patch to Google, which will then release the patch in the next security update. The other way Google encourages the community to contribute to bug fixes is by paying a Opens external link in new window"bounty" for any major security related bugs in Chrome. If someone finds a security issue and submits it to Google, along with a possible fix, Google will pay them between $500 and $3733.70 (which is "elite" in numerical form) depending on the severity of the bug. This helps outside researchers have reason to contribute to Chrome being made more secure, which benefits every Chrome user.

Sandboxing, keeping little processes happy

Another major security feature of Google Chrome is Opens external link in new windowsandboxing. Sandboxing is when software is isolated from other system resources. In Chrome, this means that each tab, extension, and app is running in its own separate process, which means it cannot interact with any of the other processes, unless it has been given explicit permission. This also means that if one site crashes, the rest of the browser can continue to run without a problem. This means fewer, full browser crashes, which means less chance of you losing important information if one site causes a crash. From a security perspective, this also means that malware can't jump from one process to another, which keeps it bound to that specific tab: close the tab, and it goes away. And to protect users from malicious applications and other downloads; Chrome will automatically warn you if a site is trying to download an Opens external link in new windowexecutable file to your system (.exe or .msi for Windows, .app for Mac, .deb for Ubuntu, etc.) It will ask you in the download bar if you wish to keep the file, and will not complete the download unless you confirm you want it downloaded. This brings us to the third goal of Google Chrome: ease of use.

Look Ma! It's easy...

There are actually hundreds of small things Chrome does to make the browser the easiest to use. However, the main features include an easy to use settings menu (which runs as a web page with tabs, fields, and even search to make changing your settings super simple and easy), minimal browser chrome, a unified search and address bar known as the "omnibar," the ability to pin tabs (making it easy to manage lots of open tabs and also to keep your favorite sites between browsing sessions), and many other features that are too long to put in this blog post. Chrome also offers great customizability, allowing you to download and install themes, apps, and extensions either through the Opens external link in new windowGoogle Chrome Webstore, or through any other site that offers Chrome downloadables. Themes allow you to change the look and feel of your browser, while extensions allow you to add extra functionality, like Opens external link in new windowLastPass for managing your passwords, or Opens external link in new windowGoogle Dictionary to quickly lookup words on a page. Apps are generally just glorified shortcuts, but there are also some really good Chrome apps as well that have more functionality than normal websites. These include Opens external link in new windowAngry Birds (the popular mobile game which can be played offline when installed in Chrome), Opens external link in new windowSpringPad (a great online startup that has both web and mobile versions of its amazing note taking app, and the Chrome version also has offline syncing, allowing you to edit your notes offline and then have them automatically updated the next time you connect to the Internet), and even a game I've been working on myself, Opens external link in new windowProject Helium (an offline arcade shooter built in HTML5 and JavaScript). As you can see, Chrome offers many, many features for users of all backgrounds.

Crossing the Channel

I mentioned earlier that Chrome has 4 different stability channels: Opens external link in new windowStableOpens external link in new windowBetaOpens external link in new windowDev, and Opens external link in new windowCanary. The stable channel is the one that most people download. This channel is only updated when the next version of Chrome has been thoroughly tested by Google, and all the Opens external link in new windowupstream channels. This is the best browser for daily use, as it is least likely to break and is also the most secure. The beta channel is a great compromise between stability and new features. You can test the latest features being added to Chrome before they hit the stable channel, and it is generally a very stable channel itself. The Dev channel occasionally breaks things and is not very good for everyday use. It does give you a great sneak peak at some of the new technologies the Chrome team is working on, but it does come at the price that things may not always run smoothly. The Canary channel is the bleeding edge of Chrome. This channel is updated at least once a day, and often times the releases on this channel are not human tested (They are built by computers and pushed out automatically, which means sometimes you are lucky to be able to open a website). The canary release channel runs as its own version of Chrome, so you can use it with another channel at the same time, allowing you to peak at what's coming in the future, while still having a more reliable browser for your day to day browsing activities.

Developers, developers, developers...

Of course, this wouldn't be a web developer's take if I didn't talk about the tools that Chrome has to aid web developers and designers in their work. Chrome actually has one of the best built-in developer consoles in the industry. While some prefer the Opens external link in new windowFirebug extension in Firefox, Chrome offers most of its capabilities and more as built in tools. With Chrome's developer toolset, you can easily inspect page elements, seeing all the attributes and styling that is being done to any element on the page. It has a great JavaScript console for debugging complex JavaScript code and seeing when errors occur, as well as injecting your own JavaScript commands into the page. It also allows you to see information on how long each part of the page takes to load and how different website resources are affecting your page load time. You can easily make a Opens external link in new windowprofile for your webpage, allowing you to see how your processor and memory is affected by your website, which is a valuable resource when building complex HTML5 apps and games. Chrome also has a built in task manager, allowing you to see each Chrome process and see how much memory,  CPU and other resources it is currently using, and even gives you the option to kill a process if it is not working properly. See references below for links on how to use these different tools.

Conclusion

We at RapidFyre, Inc. are using Chrome more and more for testing our websites and working on design work, thanks to its amazing developer resources. It speeds up our work, and makes our lives easier. Chrome arguably offers the best browsing experience with great features and Opens external link in new windowstandards compliance, making our development work for it much faster and easier. We encourage everyone in the Opens external link in new windowWalla Walla valley and beyond to test Chrome for themselves. You will find that your browsing experience will be fast, reliable, and easy.


©2018 Rapidfyre Inc, Web Design & Web Development  •  1250 N Hwy, PMB #280, Colville, WA 99114-2005  •  (509) 684-0600