Techniques of The Professional PixPocket

There Is A Life Outside The IDE For Your JSDoc Comments

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!

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:

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.

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.