Learn from JavaScript expert Douglas Crockford how to ‘function’ far better, with functional programming in JavaScript

Learnfrom-JavaScript-expert-Douglas-Crockford-how-to-function-ar-better-with-functional-programming-in-JavaScript
The TIOBE Programming Community Index for November 2013 states that “JavaScript is the lingua franca of websites nowadays” and the RedMonk Programming Language Rankings for June 2013 place JavaScript in number 2 position just behind Java.

Various other polls also place JavaScript near the top of the list in the “every developer must be proficient in this programming language” category. As RedMonk points out, such rankings should be taken with a grain of salt, but still there’s little doubt about how ubiquitous JavaScript is across a vast number of websites.

JavaScript is the prime programming language for both server-side and client-side application development. Its syntax is like that of C++ and Java, with object-oriented features that make it a powerful tool in the hands of experienced developers. The emergence in 2005 of AJAX (Asynchronous JavaScript and XML) has enabled experienced JavaScript developers to significantly improve client-side responsiveness while reducing web server workload as well as decreasing network traffic

JavaScript’s object-oriented capabilities are undisputed, but not that many developers have paid attention to JavaScript’s functional programming aspects.

There is some debate about the extent of JavaScript’s capabilities in this field, since standard JavaScript doesn’t come with much in the way of native functions (in the functional programming model’s sense), but  frameworks like Underscore.js have been developed to provide utilities that compensate for the limited native support.

Functional programming cleverly combines individual functions to provide a powerful level of abstraction that can improve programmer productivity and result in more reliable code.

There is something of a mindset change involved, and you start building your JavaScript code with functions as first-class objects that become the modular unit of execution.

The functions are treated just like any other JavaScript object, except that these objects are directly invocable. This invocation will usually occur asynchronously, in response to events such as browser page load or unload, mouse or button actions, scheduled events, plus network events like responding an AJAX request.

The functions that you build can be referenced as values and used as building blocks for reusable code libraries. Understanding how to build your own functions should present you with the opportunity to dramatically improve your development productivity.

There’s a great opportunity to deepen your JavaScript skills in this way by attending the YOW! 2013 hands-on workshop Fun with Functions in JavaScript: How Far Can You Go?. This workshop is being presented by acknowledged JavaScript leading expert Douglas Crockford who some have described as “the master of JavaScript.”

This hands-on workshop at the YOW! 2013 Conference “is about using functions and thinking with functions to take your JavaScript use to another level. This workshop being conducted in early December will challenge you to do better and think differently. You can register via the following links  Sydney

 

..

Call for submissions

This email address is being protected from spambots. You need JavaScript enabled to view it.