GVM & Local Versions

I spotted an issue with using milestone versions of grails through GVM and documented the workaround I used. The issue has since been fixed!

Read More

Jenkins PluginManager API XML Format

The format Jenkins expects for its plugin manager api isn’t very easy to find. This article covers a working xml format for installing plugins.

Read More

How Do I Backup Jenkins Jobs?

It’s a good idea to backup Jenkins periodically. Many plugins exist with different ideas of how to back up Jenkins configuration. The approach covered in this article shows how to create backups with the Jenkins API and my CI-friendly tool grunt-jenkins.

Read More

Open Data & Dog Parks

My first open data project — a mashup of maps and yelp reviews for Toronto’s dog parks. Along the way I encountered more data issues than I would have expected and no real place to report them. Still, open data feels like a giant step forward.

Read More

Subtle Time Zone Bugs

Timezone bugs creep up from time to time. Understanding where timezone bugs will occur is key to preventing them. To get a quick idea of if you have timezone issues, consider running your automated tests in another timezone.

Read More

Mozilla Toronto’s February Dev Derby Workshop

I attended my first Mozilla Dev Derby and had a great time! We learned about multitouch in HTML5 and I put together a memory game playable from a mobile web browser.

Read More

Developing HTML5 Multitouch Apps Locally

With a simple Python web server, it’s easy to develop HTML5 apps locally. With GitHub Pages, it’s easy to host HTML5 apps. This article covers my experience with both at a Mozilla Dev Derby.

Read More

sghill’s Golden Rule

After going over well on a project, I tried coin my very own rule. We’ll see how we’ll it’s doing in another few decades.

Read More