Google working on advanced Web engineering

The Web needs a unified component model, a Google engineer advises

Google is working on a number of advanced programming technologies to ease complex Web application development, a Google engineer revealed at a conference for software developers.

"We're getting to the place where the Web is turning into a run time integration platform for real components," said Alex Russell, speaking at the EclipseCon, being held this week in Reston, Virginia. At Google, Russell works on the Chrome browser. He is also the creator of the widely used Dojo JavaScript framework.

Despite its popularity, the Web offers only relatively primitive programming capabilities, compared to other platforms for delivering applications -- such as Java or Microsoft Windows. One major shortcoming is that Web technologies don't have a "common component model," which slows code testing and reuse, he said.

Google is working on a number of different projects to bring some advanced software engineering concepts to the Web, Russell said. The idea is to introduce low-level control elements without making the Web stack more confusing for novices. "We're learning from platforms [that] started at a very low-level," he said.

Much of the power of the Web, Russell admitted, comes from its ease of use. Developers can view and reuse source code. Browsers are forgiving of errors, and technologies such as CSS (Cascading Style Sheets) offer simple methods to execute complex tasks, such as formatting text.

But such ease-of-use limits developer expressivity. With CSS, "the fact that you aren't able to poke in and draw your own kind of line is not great," Russell said. "You get the same text layout on all the Web sites. You have the same design because you have the same constraints," Russell said.

Google's efforts include creating a unified component model, adding classes to JavaScript and even creating its own language for large Web applications.

By developing a unified component model for Web technologies, Google is setting the stage for developers to "create new instances of an element and do things with it," he said.

As an example, Russell showed off a new element he created called commenting. For Web pages that allow user comments, the commenting element, rendered as a tag, can automatically format the text submitted by a user and even add an accompanying photo. The tag is actually a program, complete with its own API (application programming interface), Russell said. With the unified component model, HTML can be a sub-class of a larger environment, allowing for more ways to manipulate HTML code.

Google engineers, Russell included, are also developing a proposal to add classes to the next version of JavaScript. A core element of object-oriented programming, classes are blueprints for reusable chunks of data and behaviors. Today, JavaScript does not support classes, so JavaScript programmers tend to use function calls to define many chunks of operational code that aren't actually functions, such as methods and constructors. This practice is time-consuming and makes the code more difficult to reuse.

"We have to build everything up from these primitives. We can't share anything. We have no common language for the Web platform," Russell said. With JavaScript classes, "We're getting to the place where we're adding shared language for things we're already doing in the platform itself," he said.

Another Google initiative along these lines is a new language the company introduced last year called Dart.

"The current crop of [programming] languages is hard to scale when creating really complex applications for the Web. Creating good tooling for them is difficult," said Dan Rubel, a Google software developer who is part of the Dart team, speaking at a EclipseCon technical session about Dart. The goal of Dart is to provide an easy way to create small Web applications while providing the support for large, complex applications as well, Rubel said.

Mike Milinkovich, executive director of the Eclipse Foundation, agreed with Russell's assessment that developers need more advanced tools for maintaining and debugging Web applications. To this end, Eclipse is developing a version of its IDE (Integrated Developer Environment), called Orion, that runs entirely within a Web browser.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Joab Jackson

IDG News Service
Show Comments



Victorinox Werks Professional Executive 17 Laptop Case

Learn more >

Sansai 6-Outlet Power Board + 4-Port USB Charging Station

Learn more >



Back To Business Guide

Click for more ›

Brand Post

Most Popular Reviews

Latest Articles


PCW Evaluation Team

Andrew Teoh

Brother MFC-L9570CDW Multifunction Printer

Touch screen visibility and operation was great and easy to navigate. Each menu and sub-menu was in an understandable order and category

Louise Coady

Brother MFC-L9570CDW Multifunction Printer

The printer was convenient, produced clear and vibrant images and was very easy to use

Edwina Hargreaves

WD My Cloud Home

I would recommend this device for families and small businesses who want one safe place to store all their important digital content and a way to easily share it with friends, family, business partners, or customers.

Walid Mikhael

Brother QL-820NWB Professional Label Printer

It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?