What’s New in Node.js v0.12 – Performance Optimizations The long development cycle for v0.12 (nine months and counting, the longest one to date) has given the core team and contributors ample opportunity to introduce a number of performance optimizations. This blog post aims to cover the most notable ones. Cork support for writable streams Writable streams now support a “corked” mode, similar to the TCP_CORK and TCP_NOPUSH socket options from `man tcp`. Offline-First with Node.js and Hoodie: A Practical Introduction to Progressive Web Apps Progressive Web Apps (or PWAs for short) aim to deliver a better and engaging user experience by applying progressive enhancements using modern web standards and best practices. These include among others service workers, push APIs, background sync and serving your page over HTTPS. If the app is loaded in browsers that doesn’t support a web standard, it should work just like a normal website.
A Simple Trip Meter using the Geolocation API Introduction The Geolocation API lets you find out where the user is and keep tabs on them as they move around, always with the user's consent. This functionality could be used as part of user queries, e.g. to guide someone to a destination point. It could also be used for "geo-tagging" some content the user has created, e.g. to mark where a photo was taken. The API is device-agnostic; it doesn't care how the browser determines location, so long as clients can request and receive location data in a standard way.
Making Your App Awesome When the Network Isn’t (Part 2) As I shared in the first article of this beginner-friendly series, the Offline First development approach plans for the most constrained network environment first, enabling a great user experience even while a device is offline or has only an intermittent connection, and providing progressive enhancement as network conditions improve. Even if your app isn’t specifically intended to be useful offline, the speed and performance delivered by an Offline First design pattern can greatly improve user satisfaction. Through the example of the offline-capable project management tool I built to manage the editorial workflow for the Offline Camp Medium publication, we saw there how to enable offline data storage, sync, and sharing with PouchDB and Apache CouchDB™. Keeping our data local, though, isn’t enough to make it useful to us while we’re offline. The user interface for our web app, which allows us to access that data, needs to be available offline as well. The typical offline experience
Making Your App Awesome When the Network Isn’t (Part 1) Enabling offline data storage, sync, and sharing Like every useful web form, our project management tool needs a place to store the data it collects. If we store that data exclusively in a remote cloud database, it will only be accessible when we have a network connection. If we store it only locally on the device, we can’t have multiple users or access our data across multiple devices.