Ian Oxley has been building stuff on the Web professionally since 2004. He works for Sage in Newcastle-upon-Tyne, England, and often attends local user groups and meetups. He's been known to speak at them on occasion too. When he's not in front of a computer Ian can be found playing guitar, or taking photos. But not usually at the same time.

Ian's articles

  1. New HTML5 Attributes for Hyperlinks: download, media, and ping

    Hyperlinks have been around since the dawn of the Web. But with the dawn of HTML5, three new attributes have been added to the humble <a> tag to keep existing attributes like href, rel, and others company.

    The new attributes are: download, media, and ping. In this article, we’ll take a quick look at what these new attributes are, and how they can be used once browser support improves.

    The download Attribute

    The download attribute is new in HTML5. It supplements the existing href attribute by telling the browser that the resource the href points to should be downloaded directly, instead of visited (which could happen with a file that the browser can open, like a PDF). The value of the download attribute is used for the name of the file that is downloaded.

  2. HTML5 Form Validation

    A few months ago Sandeep introduced us to the HTML Constraint API, showing how we can use the new HTML5 input types and attributes to validate our forms in the browser with minimal JavaScript. Today I’m going to walk you through validating a simple booking form by using the Constraint API, and keep an eye […]

  3. Event Delegation with jQuery

    jQuery makes event handling in JavaScript easy. However, the more event handlers you define, the more memory you use, which can end up decreasing performance and making the UI sluggish. This article looks at how event delegation can help prevent this, and how you can apply event delegation with jQuery.

  4. Package Management for the Browser with Bower

    Bower is a package manager for the browser. Developed by Twitter, and available via npm, it means the days of manually managing your client-side JavaScript packages could soon be a thing of the past.

  5. Albacore: Building .NET Applications with Rake

    If you’re a .NET developer looking to move to Ruby, one of the ways you can start using Ruby straight away is with Albacore. In this article, we’ll look at how you can take an existing ASP.NET web application project, add a Rakefile, and build the project using Albacore. What is Albacore? Albacore is a […]

  6. HTTP Debugging with Node and http-console

    http-console is a Node module that gives you a command-line interface for executing HTTP commands. It’s great for debugging and seeing exactly what is going on with your HTTP requests, regardless of whether they’re made against a web server, web service, or even a database server. Installation To use http-console you’ll need to have Node […]

  7. Express Yourself

    Express is a web framework for Node, inspired by the Sinatra framework for Ruby. It boasts loads of features, high performance, and comes with a handy executable for creating applications quickly. In this article we’re going to look at how you can get up and running with express, what you get when you create a […]

  8. Serving Static Files with Node.js

    In this article we’re going to look at setting up a static file server using Node. There’s plenty of modules available to help us do this, but we’re going to focus on three of them: node-static, paperboy, and http-server. All of these modules are available via npm (Node Package Manager). npm has been packaged with […]

  9. RubySource: Looking Outside Ruby – Node.js

    In this, the latest in the Looking Outside Ruby series, we’re going to have a look at server-side JavaScript with Node. What is Node? Node is a set of libraries that enable JavaScript to run outside the browser, where the JavaScript in question is the V8 engine from Chrome. It’s main aim is to make it simple and easy to build network clients and servers.

  10. Looking Outside Ruby: Node.js

    In this, the latest in the Looking Outside Ruby series, we’re going to have a look at server-side JavaScript with Node. What is Node? Node is a set of libraries that enable JavaScript to run outside the browser, where the JavaScript in question is the V8 engine from Chrome. It’s main aim is to make […]