News roundup: Chrome for Android, ASCII Fluid Dynamics, Node.js: doing life wrong?
(no podcast this week – Boo! Check back next week)
Chrome for Android
Google has just released a beta of Chrome for Android, which is available for those running Android Ice Cream Sandwich (aka “the 1%”). This isn’t JavaScript-specific news per se, but it is HUGE news for web devs who are all too familiar with the shortcomings of Android’s native browser.
As always, the Sencha folks have released an excellent overview of the features in their HTML5 Scorecard:
Compared to the stock Android 4 browser, there is a substantial number of additional HTML5 features: Web Workers, Web Sockets, HTML5 Input Types, overflow: scroll, requestAnimationFrame and more. That’s not to say that Chrome for Android has absolutely everything. As detected by the other handy testing site for HTML5, many newer features are absent, notably Shared Workers and WebGL. The video codec cold war also continues: Ogg Theora and Ogg Vorbis support is still not there — which is not a surprise.
Another very nice tool in Chrome for Android is Remote Debugging straight out of the box. This lets you use your Web Inspector on desktop Chrome to peer into the inner workings of the browser as it’s running on your phone.
Also check out Tony Gentilcore’s overview on his blog.
ASCII Fluid Dynamics fanciness
Designer and developer Nick Kwiatek’s website has been making the rounds because of a particularly cool (and fast!) ASCII art and fluid dynamics mashup. Go check out the site and try waving your cursor around. And yes, that means it sadly doesn’t work on mobile.
A quick peek underneath shows that Nick uses a fluid dynamics library built by Oliver Hunt. Nick then builds on top of it and adds a neat ASCII display out of it. Pretty cool, and also a good way to get your website/portfolio passed around once it goes viral.
“If you’re using Node.js, you’re doing life wrong”
This rant against Node.js has been floating around a bit this week, probably in part due to its troll-like sensationalist title. I could swear I saw this exact same article floating around a few months back, making the same arguments, but I suppose that’s just what you call a case of déjà vu. Aha, I remember what I’m thinking of: Node.js is Cancer (Ted Dziuba) – another purposefully sensationalist title.
In any case, it’s good to see counterarguments to Node.js being the general savior of all things backend. This is a short article, but there are several points to the argument: 1) V8 doesn’t belong on the server, 2) callbacks are hard to debug, and 3) the argument that asynchronous/nonblocking doesn’t necessarily mean scalable, or even fast.
Certainly the case can be made that V8 on the server side isn’t necessarily a good combination, as that’s not where it was originally intended to be. There will be bugs.
As for the argument against callback spaghetti: that’s certainly an issue, especially for those coming from classical language backgrounds. But that’s not to say there aren’t good tools or best practices to ease this burden – Node offers a (partial?) stack trace, and there is also a recommended pattern of naming what would usually be anonymous functions, so you can track down exactly where your code is blowing up.
As for the argument about nonblocking not necessarily meaning scalable: this is certainly true. Node.js can handle many connections on a single CPU, but that doesn’t mean a single CPU is going to be scalable for everyone’s needs. Folks are already learning how to remedy that obviously (I’m reminded of Matthew Eernisse’s talk from NodeConf 2011).
Probably the best counterargument to the article comes from actual usage at scale by large companies. If Node.js is so doomed to fail, it seems like it wouldn’t have been adopted and successfully used by these companies.
JS1K
JS1K is resuming its annual tradition of holding a competition to do amazing things in just 1K of JavaScript. The suggested theme this year is Love. If you’re interested in participating, check out the rules and keep in mind the deadline is March 14, 2012.
Already there’s some excellent entries, including this canvas rose by Román Cortés, with a blog post detailing how he did it. You may remember Román as the guy who made the awesome 3D canvas Christmas tree for the last JS1K.
Tidbits
The Future of JavaScript – take a peek today! – the Chrome team introduces some new JavaScript stuff you may not be aware is already available.
The good, the bad, and the ugly of scrolling animation sites
grunt is a task-based command line build tool for JavaScript projects
Enhance Your Website with the FullScreen API
Modernizr 2.5 has been released
HTML5 Doctor has a good overview post of the relation between the Media Capture API (HTML-only) and getUserMedia (navigator.getUserMedia in JavaScript)
Multimedia
(slides) Creating Responsive HTML5 Touch Interfaces (Steven Woods of Flickr)
(audio) HTML5 Audio: HTML5 + Flash (in a tree): Past, Present, Future? (Scott Schiller, Flickr)
(slides) jQuery Mobile Keynote – UK Conference
(audio) Herding Code 133: Derick Bailey on Backbone.js
(slides) Geo interfaces for actual humans (Eric Gelinas of Flickr)
(audio) Nonbreakingspace (NBSP) is a new podcast worth checking out. Currently there’s shows up with interviews with Paul Irish and Ethan Marcotte
GitHub Most Watched This Week (JavaScript)
Upcoming Events
(This isn’t a complete list. See more upcoming JavaScript events listed on Lanyrd)
JavaScript Conference (February 27, 2012 in Düsseldorf, Germany)
UtahJS (March 29, 2012 in Park City, UT, USA)
JSConf US 2012 (April 2-3, 2012 in Scottsdale, AZ, USA)
Breaking Development 2012: Orlando (April 16-18, 2012 in Orlando, Florida)
Mobilism 2012 (May 10-11, 2012 in Amsterdam, Netherlands)
JsDay 2012 (May 16-17, 2012 in Verona, Italy)
O’Reilly Fluent: JavaScript and Beyond (May 29-31, 2012 in San Francisco, California, USA)
BackboneConf 2012 (May 30-31, Boston, MA, USA)



























