Software Engineer. Freelance Technology Writer. Editor of SitePoint's JavaScript Channel.

Colin's articles

  1. Introducing the Battery Status API

    Mobile devices represent an increasingly large segment of all Web traffic. This traffic is so substantial, that APIs and design practices have been created specifically to cater to mobile devices. An example of this is the W3C’s Battery Status API, which allows an application to inspect the state of the device’s battery. This article explores […]

  2. Headless WebKit and PhantomJS

    If you’re reading this article, you most likely know what a browser is. Now take away the GUI, and you have what’s called a headless browser. Headless browsers can do all of the same things that normal browsers do, but faster. They’re great for automating and testing web pages programmatically. There are a number of […]

  3. Web Scraping in Node.js

    Web scrapers are pieces of software which programmatically visit web pages and extract data from them. Web scraping is a bit of a controversial topic due to issues of content duplication. Instead, most web site owners prefer that their data be accessed by publicly available APIs. Unfortunately, many sites provide lackluster APIs, or none at […]

  4. Making HTTP Requests in Node.js

    In previous articles, I’ve focused on creating a Node.js server to handle HTTP requests. This article looks at the problem in reverse, by showing you how to make HTTP requests from your Node.js applications. You may be asking yourself why you would want to do that. Two applications come to mind right away – web […]

  5. Accessing the File System in Node.js

    For years, JavaScript has had very limited access to the file system. Of course, for most of its life, JavaScript lived in the browser. For a web scripting language, accessing the file system was considered a major security risk. Front end developers have been forced to make due with cookies, web storage, ActiveX, Flash, and […]

  6. Cloud Deployment of Node.js Applications with Nodejitsu

    SitePoint is releasing its new book, Jump Start Node.js, tomorrow. In celebration of the book launch, JSPro is bringing you a special Node.js article today. Today’s article will teach you how to deploy your Node.js applications in the cloud using Nodejitsu.

  7. HTTP Authentication in Node.js

    Last week, in Creating a HTTP Server in Node.js, I covered the basics of HTTP in Node.js. Today’s article will show you how to password protect your Node.js site using HTTP authentication. We’ll start by looking at basic access authentication, and then move on to the more secure digest access authentication.

  8. Creating a HTTP Server in Node.js

    In my last article, I introduced the most basic Node.js program possible. While Hello World programs are nice, Node.js is more commonly known for creating highly scalable server applications. This article introduces a simple HTTP server built atop Node.js.

  9. Navigation Timing API: How to Profile Page Loads Efficiently

    Page load time is one of the most important aspects of user experience on the web. When pages load too slowly, users quickly become frustrated and take their business elsewhere. Unfortunately, troubleshooting a slow page load is not typically a straightforward process because many factors contribute to the overall time. For example, a page’s load […]

  10. An Introduction to Node.js

    JavaScript has long been the de facto standard for client-side web development. While nearly all client code is written in JavaScript, server-side development is a mashup of PHP, Java, and numerous other technologies. Life as a web developer would be much simpler if a single language was used everywhere. Because JavaScript dominates in the browser, […]