One consequence of the steady increase in computer power is that newer machines can emulate the behavior of older ones, with software running fast enough to simulate operations that formerly required hardware.
Now, in an illustration of just how far Web programming has come, one coder has begun a project called jsGB that lets a Web browser emulate Nintendo's original Game Boy handheld game console.
Imran Nazar, a 26-year-old programmer from Manchester, U.K., has begun work to emulate the Game Boy in JavaScript, the Web programming language whose performance has become a top priority of browser makers today. JavaScript is used for everything from pop-up dialog boxes on Facebook to the Google Docs online productivity applications, but Nazar is busy adding 1989-era Tetris and similar games to the list.
"New JavaScript engines such as [Firefox 4's JaegerMonkey] mean much higher speeds for the core processing, more than enough to cover emulation of a basic system," Nazar said in a blog post on Mozilla's gaming site. In addition, HTML5 now offers the Canvas element for easily controlling a two-dimensional graphical display, he said.
"Why write a console emulator? It's a good way to learn the ins and outs of a particular console, and excellent for bringing together the lowest and highest levels of development," Nazar said. "And why build a console emulator in the browser, using JavaScript and HTML5? I say: why not?"
The work spotlights the growing capability of Web-based programs. JavaScript performance increases, though hard to measure, are opening new horizons for Web programmers. The cloud computing philosophy, which can let people get access to information and use online tools wherever they have a browser, is gaining credibility. New Web standards and browser features such as offline storage, advanced graphics, and hardware acceleration improve what browsers can do.
It's not all easy going, though. Perhaps the most advanced embodiment of the Web-app future, Google's Chrome OS, is stumbling on its way to market. Its troubles aside, however, it's clear more and more gets done in a browser window. … Read more