Google modernizes Web software tool

Just before Google I/O, the search giant announces a significant update to its Google Web Toolkit to build sophisticated Internet applications. Also: App Engine pricing.

Stephen Shankland Former Principal Writer
Stephen Shankland worked at CNET from 1998 to 2024 and wrote about processors, digital photography, AI, quantum computing, computer science, materials science, supercomputers, drones, browsers, 3D printing, USB, and new computing technology in general. He has a soft spot in his heart for standards groups and I/O interfaces. His first big scoop was about radioactive cat poop.
Expertise Processors | Semiconductors | Web browsers | Quantum computing | Supercomputers | AI | 3D printing | Drones | Computer science | Physics | Programming | Materials science | USB | UWB | Android | Digital photography | Science Credentials
  • Shankland covered the tech industry for more than 25 years and was a science writer for five years before that. He has deep expertise in microprocessors, digital photography, computer hardware and software, internet standards, web technology, and more.
Stephen Shankland
3 min read

Google plans to release later this week a near-final version of the Google Web Toolkit 1.5, software designed to ease the onerous parts of writing sophisticated Web-based software.

GWT 1.5 includes support for Java 5, a version of the Sun Microsystems programming language released in 2006, and produces software that runs about 1.2 to 2 times faster for complex Web applications, said Bruce Johnson, Google's engineering manager for GWT.

The new software fuels Google's ambition to make the Web a much richer software environment--an ambition on display Wednesday and Thursday at the Google I/O conference in San Francisco. Johnson believes the Web is already "really close" to the abilities of personal computers as a software foundation.

"We've observed that there's no question anymore whether you're going to target the browser or a desktop app. For almost any new exciting app, you're going to target the browser," Johnson said. "For the right set of applications, it's already better than what you can do on the desktop. For extremely low-latency applications, like video editing, I think we're still a couple years out."

Google is trying to shift people toward the Web, hoping to profit indirectly by spurring more Internet searches, its main source of revenue. It's also got some direct but much smaller businesses, including subscription fees for corporate use of online Google Apps such as its spreadsheet and calendar. Also at Google I/O, the company is revealing the fees for heavy users of its new Google App Engine service to host Web applications.

App Engine, which was unveiled in April and now has about 60,000 approved users, is free for starter applications requiring 500MB of storage and network bandwidth to support about 5 million page views a month, Google said. On Wednesday, the service will be open to the 150,000 who've signed up so far and to any others who want to join.

Beyond that, Google will charge 10 to 12 cents per hour of processor core work, plus 15 to 18 cents per gigabyte of storage per month, plus 11 to 13 cents per gigabyte of data transferred out, plus 9 to 11 cents per gigabyte of data transferred in. The fees are similar in broad structure to that of a competing service from Amazon.

GWT: Doing the grunt work
GWT lets programmers write their code in Java, but then converts that raw material into the JavaScript language that's built into Web browsers. One advantage of GWT is that it can handle the significant differences in how different browsers handle JavaScript, Google argues.

"Not all the JavaScript standards are interpreted in different ways," Johnson said. "The truth is it's a minefield."

GWT supports most modern browsers, including recent versions of Internet Explorer, Firefox, Safari (and other Webkit-based browsers such as that of the iPhone and Google Android), and Opera.

Sun introduced more changes to Java with the current Java 6, but it was Java 5 that introduced several changes to the language. Among them (brace yourself if you're not a coder): generics, enumerated types, annotations, enhanced for/loop syntax, and autoboxing.

Supporting those newer features makes GWT less different from other Java programming environments, cuts down on opportunities for programmer mistakes, and can help GWT produce faster JavaScript, Johnson said.

GWT uses the Eclipse project's JDT to understand people's Java code, then adds a Google-engineered component that translates it into JavaScript, Johnson said.

It's open-source software, and "We get dozens and dozens of patches" from outside contributors. Among those in the current release is support for right-to-left languages such as Arabic.