Archive for June, 2010

Revenge of the Browser

Last weekend I attended the awesome Texas Javascript conference down in Austin, TX. This was probably the best geek conference I’ve been too. It made the early Rails conference look downright corporate. TXJS had awesome parties sponsored by Google and Facebook, the top names in JavaScript for speakers, and an open bar with mimosas for breakfast. This sets the bar pretty high on the geek awesomeness scale.

One of the most interesting discussions at the conference revolved around server-side JavaScript. Some very clever programmers have taken the V8 JavaScript runtime from Chrome, wrapped it with a library and pushed it out as a runtime for executing JS scripts on the server. The project is called NodeJS and it already has a pretty rich plugin environment around it. The implication is you can actually write a high-performance server-side application in JavaScript.

The trend for the past several years has been for the server-side programming languages to hide the JavaScript from developers. Both Rails and GWT approach things with a “use our language to do it all”. There is obviously value in this approach for people who don’t know JavaScript, but NodeJS suddenly flips that model on its ear.

The NodeJS story is “you use JavaScript already in the browser, so why not use the same skills on the server”. We now have a programming paradigm established at the browser that is pushing in to the lower tiers, rather than the lower tiers pushing out to the web. NodeJS has potential to obsolete a lot of what we think of as server-side development. Both Yahoo and ExtJS have projects in the works that use NodeJS as the backend, and I bet Google must have something going too.

NodeJS is basically the new Ruby. Keep an eye on what the cool kids start doing with it, and give it a try yourself. We’ll be seeing a lot more of it in the future.

Springtime and Apple

On its usual springtime schedule, the new iPhone was announced today. I didn’t take the plunge on a iPhone until last year’s 3GS, and I don’t see any reason to upgrade, but the most exciting part of iPhone 4 is what it means for the evolution of the iPad.

First we have the “Retina Display” with its ungodly pixel density. We’re still talking about a 3-1/2 inch display, so the ability to render microscopic text still doesn’t change the fact it is microscopic. It is still too small to read. But I can imagine the next revision of the iPad getting the same screen, which would be incredible with that much real estate.

Next, the front-facing camera for video calls. This is one of those features that should have been available for years, so shame on Apple for waiting this long. On the iPhone, this will just be more of a nuisance. We’ll see stupid teenagers and blondes in SUVs driving around talking in to their phones. Not a good idea. And let’s not even think about the implications with Chatroulette. Ick.

But on a iPad, the same front-facing camera becomes much more usable. I have family scattered all around the globe, and having the camera along with the big screen on the iPad would make it much more pleasant to do video calls. You would actually be able to see detail on the bigger screen. And the iPad would be big enough that you wouldn’t see anyone other than an absolute idiot driving around talking in to it.

Finally, the last major improvement I care about is multitasking. This was one of those abilities that will really allow the iPad to penetrate into what was low-end PC space. No more having to completely load an application from zero when hopping around, and you can have processes running in the background. I really see this as having much more useful potential on the iPad than the iPhone.

While I’ll definitely upgrade to the new iOS 4 on my 3GS, I’ll be keeping the wallet closed until the next iPad picks up these killer features. If we actually see a Google Tablet with a similar set of specs, we’ll really see an acceleration into the next era of touch-driven computing.