Applications that I really use on a daily basis can be counted on the fingers of one hand, one of them is an API Documentation Browser called Dash. Used in conjunction with Alfred, it lets you access and search docs in a heartbeat, even if you’re offline.
Wouldn’t that be great if you could also use it with your own projects? You actually can!
Versioning JavaScript and CSS files while improving page load time and reducing bandwidth cost
td;lr: The most efficient asset pipeline strategy both in terms of cost-cutting and performance-boosting is to version your files on an asset basis and not per release. The grunt-assets-versioning plugin plugin will automatically handle the process for you and put up a map of version tags than you can easily integrate into your back-end stack.
A NodeJS, MongoDB and Redis dev environment with Vagrant and Ansible
tl;dr: Kick-start your nodejs/nginx/mongodb/redis application development within minutes with the vagrant-nodejs-dev virtual machine.
When I want to give a crack at a new library or try out an idea, I almost always use the same tech stack for the backend:
- Nginx to serve static assets
- NodeJS to create an api
- MongoDB to store data
- Redis to manage sessions
To get started quickly, I use a tailor-made virtual machine. I can boot from anywhere as long as I have the following installed:
- Virtual Box - version 4.3.8+
- Vagrant - version 1.5.0+
- Ansible - version 1.5.2+
Adding RequireJs to NodeCellar
Nodecellar is a sample Application with Backbone.js, Twitter Bootstrap, Node.js, Express, and MongoDB. The source code was made available on Github by its author, Christophe Coenraets, so everyone can dig into it and learn how to use those brilliant libraries and tools.
However, it felt like a key player was forgotten on the invite list : RequireJs, the infamous javascript file loader. Since I was curious to know how difficult it could be to add RequireJs to an existing application and turn all its javascript code into modules, I decided to take a crack at it and to record the process by committing each step on my nodecellar fork on Github.
External Stylesheets and Web Performance
In my previous article, I listed the 3 key moments and two major concepts I keep in mind when trying to improve web performance.
Let’s see the impact of external stylesheets on each of them.
Three Key Moments to keep in mind when dealing with page load performance
Web performance is not about how fast a web page loads but about how fast it gives the impression to the user to load and how long it takes for the page to actually be ready for interaction.
It’s a mix of perceptiveness and pure metrics.
Here’s the three key moments and two crucial concepts I keep in mind when trying to improve load performance.
new Date('2012/01/01') vs new Date('2012-01-01')
When creating a JavaScript date object using a dateString parameter, I expect it to be interpreted in my local time.