For a couple of months I’ve been carefully preparing to dive into JavaScript and the purpose of this post is to outline the steps I’m going to take, which books I’m going to read and which sites I’m going to use to start learning Javascript.
With the REST API being scaffolded into WordPress in 4.4 and with live examples such as Calypso demonstrating how we can build applications on top of WordPress in new ways with JavaScript libraries such as React, we really have no other choice but to embrace what JavaScript can bring to the table.
JavaScript
jQuery.Html5form
HTML5 includes form validation as part of the spec, so once it's fully supported we won't need to use JavaScript to validate form input. Sadly, this is only supported by Webkit browsers at the moment (Safari & Chrome). This plugin addresses the gap for the other major browsers with a single line of code.
PaintbrushJS
"A lightweight browser-based image processing library".
JavaScript's come a long way. This library provides a wealth of image manipulation capabilities, including tints, blur, noise, sepia and grayscale – all handled by the browser. What a sweet way to ensure you don't have to reprocess your images the next time you redesign your site.
HTML5 Boilerplate
As noted on the site, this is "the professional badass's base HTML/CSS/JS template for a fast, robust and future-proof site" While I likely won't use this whole, there are some very interesting pieces to this worth using, especially in the style sheet and .htaccess files. I'll likely appropriate many of the concepts for my work.
This is an outstanding contribution to the Web development community by Paul Irish and Divya Manian as well as all of the people whose work they built upon.
jQuery each2 plugin vs jQuery core .each method
via @getify. A jQuery plugin optimized to handle the use of $(this) inside an .each loop.
How FuncUnit works
An open source JavaScript web application testing framework that combines Selenium, jQuery, QUnit and Envjs and your debugger of choice (such as Firebug). Looks interesting.