Pretty image

2010 is shaping up to be an exciting year—wait for it—for JavaScript. JavaScript? Yep, homely old JavaScript, which is now being taken seriously in development situations where it would never have been a candidate before. It’s due to a number of developments, described by Jason Huggins and Craig Riecke in their articles on Node.js and JSON.

The late 1970s—when personal computers were called microcomputers, Bill Gates was writing software for some crazy entrepreneur in Albuquerque, Apple was still two guys in a garage, and hardware and software hackers met at a sharing session called the Homebrew Computer Club in Palo Alto—was an exciting time to be a developer.

But the FOSS community has in many ways kept that homebrew spirit alive. And today developing for iPhone or Android can give you the sense that you could be the next indie breakthrough star with your one-developer-shop mobile app. But will it last? Chris Adamson wonders whether the iPad will kill the indie software hero dream.

We’re not overlooking actual homebrew, by the way. On the theory that you should occasionally step away from the keyboard and spend some of the intensity that you bring to your development projects on something completely unrelated to computers, Steve Peter walks you through everything you need to know to brew your own beer.

And we’re not overlooking the history of computing, either. Dan Wohlbruck takes us back in time, looking at the development of those type-y things, from the first typewriter to modern computer keyboards. Do you know what the typewriter’s killer app was? Dan tells you.

And that’s only about half of what’s in this issue. Brian Tarbox is back with a thought-provoking viewpoint on testing. Andy Lester continues a two-part essay on public speaking skills for developers. I explore what makes a tech book a classic. As usual, we have a quiz, an events calendar, and our Choice Bits collection of miscellaneous observations. And John Shade weighs in on HTML 5 and standards. He’s in favor of standards, at least for other people.