I Node it
January 24, 2015
I've bitten the bullet, JavaScript's going to be my scripting language once again. The imminent arrival of ES6 and the split of iojs from Joyent's control make it seem like things are moving again in the world of Node and JavaScript.
Adopting JavaScript as the scripting language I use in addition to Swift hugely simplifies my development toolchain, as well as providing a possible cross platform escape route, should that ever prove necessary.
That's despite the many deficiencies and issues both JavaScript and Node/iojs have, many of which I've talked about before: high profile defections, Joyent vs Strongloop infighting, callback pyramid hell, scope problems, living in one thread, all sorts of syntax weirdness… JavaScript, the bad bits… but despite of of all that and more, JavaScript and iojs/Node are the language and engine that underpin this blog now, as well as my cross platform Plan B.
I can use JavaScript to push further afield than iOS if need be, but while I'm happily using Apple's hardware it's still useful to me: test automation, the scripting bridge on OSX, JavasScriptCore, plus using it in Safari obviously. Other languages like Go don't offer that dual use to me, despite whatever other benefits they might offer.
So far so good with the blog engine. Once I've used this version for a while, and once things settle down a bit with iojs support for modules like node-sass, I'll pop the code up on Github.
JavaScript's perhaps not the best tool, but it's the best tool for this job, for me, for now.