News

Battle Royale Brews Over JavaScript Turf

Google and Microsoft face off with Volta and the Google Web Toolkit, two tools that take aim at JavaScript.

With the new year comes a fresh battle for the hearts and minds of developers. Microsoft clearly set the stage for a showdown with Google Inc. with the launch of its Volta toolset just as 2007 was winding down.

The company conveniently launched Volta in early December just as Google hosted its Google Web Toolkit (GWT) Conference, a three-day educational confab for those wanting to gain proficiency with the GWT.

Both the GWT and Volta allow developers to use their existing expertise in Java- or .NET-supported languages, respectively, to write applications that will run on any device supporting JavaScript.

And thus the Java versus .NET debate enters a new phase.

The JavaScript Problem
John Andrews"Microsoft has saturated the enterprise market with Visual Studio and the other part of that market is owned by Eclipse," says Dave Thomas, founder and chairman of Ottawa-based Bedarra Research Labs Ltd. Thomas is a longtime programming expert and is taking a look at Volta, which will probably end up being an enhancement or add-on to Visual Studio.

Microsoft's tools battle has now moved outside the enterprise to the world of rich Web applications, where it's by no means a shoe-in. There it faces entrenched market-leading tools from Adobe Systems Inc. and extremely popular new-age tools from such companies as Google and eBay Inc.

The common denominator for the latest Microsoft-Google salvo is down-and-dirty JavaScript. The appeal of both toolsets will be for the many developers who really "hate JavaScript," Thomas says.

"They're very agitated but they have to use it," he continues. "This is historically problematic because the browsers have been incompatible and lack fancy development tools."

The problem with JavaScript is that most developers have to "program by experimentation," Thomas adds. "JavaScript is simply not considered a serious language by mainstream development types. That's a problem because JavaScript is everywhere."

Google acknowledged this with the initial release of the GWT in May 2006. The stated goal at the time was to make development of AJAX apps easier. Google Maps and Gmail, unsurprisingly, were cited as examples of good AJAX implementations.

"Writing dynamic Web applications today is a tedious and error-prone process; you spend 90 percent of your time working around subtle incompatibilities between Web browsers and platforms, and JavaScript's lack of modularity makes sharing, testing and re-using AJAX components difficult and fragile," read the GWT blog on the day of launch. "[The] GWT lets you avoid many of these headaches while offering your users the same dynamic, standards-compliant experience. You write your front-end in the Java programming language, and the GWT compiler converts your Java classes to browser-compliant JavaScript and HTML."

Contrast that to the Volta message: .NET developers can use their language of choice (if it's .NET-supported) and once it's in Microsoft Intermediate Language (MSIL) form, Volta will parse that out to JavaScript.

"The idea with Volta is you have C# developers who are used to doing their own thing with Windows, and as long as they compile to the Microsoft runtime, Volta can spit it out for JavaScript," says Sean Christman, experience architect for EffectiveUI, a Denver-based expert in developing multimedia Web applications such as the eBay Desktop.

Competition Heats Up
The interesting thing about Volta and its Silverlight cousin is that it's an acknowledgement by Microsoft that it doesn't control every client device. Silverlight is Microsoft's plug-in for creating dynamic cross-browser, cross-platform .NET applications.

Click for a larger view."Microsoft has had this environment, which is where they've kept developers for a long time," Christman says. "Microsoft wants all of its developers to stay with its toolset and output to other things -- so you export to Silverlight or a mobile device but your core development remains in the Windows world."

As evidence that this Visual Studio/Windows dominance is being challenged, an Evans Data Corp. survey this summer found that of 400 developers surveyed, 64.8 percent were targeting Windows this year, down from 74 percent last year. And, that percentage is expected to drop another couple of points this year.

Evans CEO John Andrews says the reason goes back to scripting languages, of which JavaScript is the most widely used: It has three times more developers than PHP, Ruby or Python, according to the Evans report on North American developers. "JavaScript is just huge and one reason is its maturity," Andrews says.

The other interesting fracture line in app development is the race between Adobe and Microsoft. Adobe, which now includes the Macromedia Flash and Flex franchises, is the darling of the Web development set, and Microsoft's desire to win over companies like EffectiveUI is one huge motivator behind Silverlight. However, Silverlight, unlike Volta, requires a download of Microsoft's Common Language Runtime and thus has a substantial footprint, where Volta only needs the JavaScript virtual machine on the end device.

About the Author

Barbara Darrow is Industry Editor for Redmond Developer News, Redmond magazine and Redmond Channel Partner. She has covered technology and business issues for 20 years.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube