Hello and welcome to ‘This Week in JavaScript’ — another curated collection of links relating to what’s new and exciting in the world of JavaScript. The complete list is tagged jsweekly. (Don’t forget to check out our weekly .NET and front end roundups too!)
And now for this week’s finds …
Getting started
- Ternary Operators Considered Harmful - If you’ve been programming for a while but don’t know the term “ternary operator,” it’s likely that you understand what I mean as an “inline if” or “conditional operator.”
- Learn to Code: 13 Tips that Could Save You Years of Effort - When you’re new to coding, it can be hard to know where to start, and it’s easy to get sucked down paths that could waste a whole lot of your time and money.
- Understanding REST - EST stands for Representational State Transfer, and it’s actually an architectural style rather than a framework or programming language.
- Want to Code? A University Degree Might be a Huge Waste of Time - A lot of people think they need a university degree to get a job as a software engineer. A few days ago, Eric Elliott published a post called “Learn to Code: 13 Tips that Could Save You Years of Effort”. Tip #1 was “Forget university programs.”
- How to make Multi-Layered Parallax Illustration with CSS & Javascript - How to create a simple multi-layered illustration with depth that transitions into the content in a unique way, using a technique that involves CSS and pure JS (no jQuery!).
- Using Map and Reduce in Functional JavaScript - If you’re not using map() and reduce() today, it’s time you started.
- A Beginner’s Guide to npm — the Node Package Manager - To make use of tools (or packages) in Node.js we need to be able to install and manage them in a useful way. This is where npm, the node package manager, comes in. It installs the packages you want to use and provides a useful interface to work with them.
- 6 Essential Tips for Getting Started as a JavaScript Developer - JavaScript is one of the dominant programming languages in the world. It is used to create interactive and dynamic web pages. However, it is still a mystery to a lot of web users.
Learning more
- How to not break the internet with this one weird trick - If you write JavaScript tools or libraries, you should bundle your code before publishing.
- Using Structs As Data Lookup Indices In ColdFusion Data Manipulation - One technique for data munging is the use of the ColdFusion struct as a fast-access key index.
- Writing good code: how to reduce the cognitive load of your code - Low bug count, good performance, easy modification. Good code is high-impact, and is perhaps the main reason behind the existence of the proverbial 10x developer. And yet, despite it’s importance, it eludes new developers.
- Functional Programming for JavaScript People - Demystify things for the newcomer who keeps hearing about all this stuff but doesn’t know what to make of it.
Libraries
- Inspect - Form validation in Javascript Vanilla, without dependencies and multiple languages.
- react-stamp - react-stamp has replaced react-stampit and is compliant with the stamp specification.
- Community Notice on npm dependencies in your projects - jQuery shares its view on left-pad and the issues surrounding it.
- Creating a Donation Widget with Flight Components - In this tutorial Neils Klom will be teaching you the basics of Twitter’s Flight.js by making a donation widget, which also uses Materialize for the front-end, and Stripe to handle the payments.
- 10 jQuery Horizontal Scroll Demos & Plugins - 10 jQuery Horizontal Scroll Demos & Plugins useful for those who see things horizontally. I guess we have to accept some people scroll both ways!
ES6
- Perfection Kills - Javascript quiz. ES6 edition. See if you can beat my 0/13 - setting the bar high there…
- Promise-based functions should not throw exceptions - This blog post gives tips for error handling in asynchronous, Promise-based functions.
Frameworks
- Five of the Best JavaScript Frameworks - If JavaScript is your language of choice, you will find many frameworks available for your programming problem.
- The Unbelievable History of the Express JavaScript Framework - If you’re like me, you thought the core Express project was being actively maintained by StrongLoop for the past 2 years. I’ve got some news for you, it wasn’t.
- Properly Handling Webhooks With Node and Express - Webhooks are a great way to add integration with external services and systems. While webhooks are generally easy to handle, there are a few challenges when it comes to handling them in large volume or running a long process in response.
- Build Virtual Reality in VR with Primrose and WebVR - Virtual reality is really hitting its stride this year, with VR headsets selling out all over the place.
- An Introduction to AngularJS Style Guides - What is a style guide? Do AngularJS projects need a style guide, and why? Which are the most popular AngularJS style guides? How would you use a style guide in a team of developers? This article is going to answer all these questions.
- Testing Redux Applications - The Redux documentation has a fairly extensive section on writing tests which is a reasonable starting point.
- Testing with mocha and jsdom - For browser-specific code, such as the one that relies on document, window global variables and DOM manipulation, you may want to consider using jsdom library that emulates browser environment.
Other Stuff
- iOS 9.3 Bug puts the spotlight on Apple’s browser restrictions - 2.17 Apps that browse the web must use the iOS WebKit framework and WebKit Javascript. This means every browser in the App Store has to use the same rendering engine (the component that displays webpages) that comes with iOS. WebKit is a great engine, but it’s not flawless…
- JSNES - JSNES is a port of vNES to JavaScript, inspired by Matt Westcott’s JSSpeccy. The video is output on a canvas element, and the sound is played with dynamicaudio.js.
- Docco: Quick JavaScript Documentation - Docco is a free Node.js-powered JavaScript documentation generation tool.
And Finally…
- @ThePracticalDev - The only correct way to write JavaScript is whatever you were not doing last week.
- Where should we keep our open source code? - Too good to miss…
For more links like this and to keep up-to-date with the latest goings on in JS land, you can follow SitePoint’s JavaScript channel on Twitter.
Please PM us if you have anything of interest for the next issue or if there is anything you would like to see featured. Paul and Chris of Arabia.