There is a great deal of buzz in the world of JavaScript, and much of it has to do with the forthcoming new versions, known as ES6 and ES7. In this talk, JavaScript creator Brendan Eich discusses what changes are coming, and what they mean for JavaScript developers.
It has often been said that JavaScript is becoming the “assembly language of the Internet” — a language that people program in, but also the target for many languages. This also means, to some degree, that we can think of JavaScript — and the browsers in which it runs — as virtual machines. How do these ideas fit together, and what do they mean for the future of the Web, and of computing? Scott Hanselman discussed these in his keynote talk at the Fluent conference in 2014.
Want to create real-time, peer-to-peer Web applications? You know, as in collaborative drawing programs, or screen-sharing applications, or any other sort of software in which two browsers need to communicate quickly and reliably. In this talk, Chris Wilson introduces WebRTC, a protocol that allows you to do just that. With a relatively small amount of JavaScript, you can write such programs, opening the door to an entirely new class of what we call “Web applications.”
JavaScript is both popular and ubiquitous. For better or worse, this means that anyone can (and often does) write JavaScript code. But as JavaScript projects and applications become increasingly complex, it’s important to consider how we can write code that’s not only readable, but also maintainable. In this talk, Nicholas Zakas introduces techniques that will help to make your JavaScript easier to understand, follow, and maintain.
A classic exercise in introductory computer science courses is to build your own Lisp interpreter. Doing so not only gives you an understanding of how the language is built, but of how programming languages are generally built — and it also demonstrates that languages are often the sum of many simple ideas and parts. In this talk, Mary Rose Cook creates a Lisp interpreter using JavaScript, such that it runs in the browser. If you have always wondered how programming languages work, this is a great way to see it done — in a language that’s available to all of us.
Callbacks are a well-known aspect of JavaScript programming. With the pending rollout of the ECMAScript 6 standard, we can write in a different style, namely using generators. In this talk, Erin Swenson-Healey introduces ES6 generators, and contrasts their use with the use of callbacks — emphasizing the decreased code and increased readability that results.
Client-side frameworks — Angular and Ember, for example — are increasingly popular. What does that mean for development, and what hidden traps might there be in these frameworks? Developer and lecturer Sarah Mei introduces the idea of client-side frameworks, and reminds us that not everything about them is necessarily easy to work with, or obvious.
JavaScript continues not only to gain ground as a popular programming language, but also as a language whose next version (ES6) will include features that make programmers’ lives easier. In this short (10-minute) video, developer Glen Maddern demonstrates how a number of next-generation JavaScript (ES6) features (including package management) make it remarkably easy to manipulate data — with less of the wordy overhead that previous versions of the language required.
WebSockets are one of the most interesting technologies in HTML5, making it possible for the browser to open (and then hold) connections to remote servers. In this talk, Frank Greco and Kevin Hoyt describe what WebSockets are good for and what the state of support is in various browsers. They then provide examples of WebSocket-based applications.
D3 (“Data-Driven Documents”) is a JavaScript library that makes it possible to create beautiful and dynamic data visualizations with a minimum of effort. In this talk, Sam Selikoff tells us why using D3 makes it easier and faster to create sophisticated visualizations than would be possible with JavaScript or jQuery alone.