The Web

Polyglot – A simple client-side i18n library

Polyglot is a very simple string replacement i18n library I built for a personal project and thought was self-contained enough to warrant its own repo. It’s very simple to use and does what it does very quickly indeed.

However, it is not a full i18n solution, it does not do any kind of date; currency; time or any other i18n functions you might expect. It does one thing and does it well. It may do those things in the future, however.

Continue reading →

_______________________________________________________________________________________________________________________

Mondrian – Random Color Generation in JavaScript

A library I wrote for generating random colors in JavaScript, it supports rgba(a), HTML color names, hex and hsl(a). Check it out!

Continue reading →

_______________________________________________________________________________________________________________________

Gutenberg templating library

I wrote a small (10 lines) and simple templating library that is dependant on ES5 compatibility in the client for a mobile web app I’m building (more on that at a later date!). You can find the source on Github. Along with the usage and testing, as always feel free to contribute!

Continue reading →

_______________________________________________________________________________________________________________________

Sublime Text 2: 5 Plugins You Really Should Be Using

Sublime Text 2 has become mine, and many other people’s, editor of choice. Bringing features like multiple cursors and Vim bindings to a modern, good looking, lightweight and cross-platform editor. It rocks. Especially the plugins.

Continue reading →

_______________________________________________________________________________________________________________________

Snippets in Notepad++

I’m a massive fan of Notepad++, the lightweight Windows-based text editor, it has a tiny footprint but packs enough features to make it my go-to Windows text editor. Up until quite recently, however, I’d been missing snippets, but not anymore.

Continue reading →

_______________________________________________________________________________________________________________________

Quick links: ‘Multicolr’ image search and Git Immersion

A couple of really great quick links I’m sharing today: one’s a really cool tool that can help you find images based on a certain color palette; the other’s a great beginners tutorial for the Git version control system.

Continue reading →

_______________________________________________________________________________________________________________________

Tool: A Google Maps powered Twilight/’Golden Hour’ Calculator

No, not that Twilight. This is a really cool Google Maps powered tool that allows the budding photographer in us to work out when the ‘Golden hour’ is wherever we are on the planet.

Continue reading →

_______________________________________________________________________________________________________________________

Book: jQuery Fundamentals

That was until recently when I discovered this excellent, comprehensive, lucidly written and above all free and ‘open-source’ eBook by Rebecca Murphy (@rmurphey) titled jQuery Fundamentals.

Continue reading →

_______________________________________________________________________________________________________________________

W3C HTML5 Testing: IE9 comes out on top?

Wait, did I read that right? Internet Explorer has just aced the W3C conformance tests for HTML5? Wow.

But why is this so surprising?

Continue reading →

_______________________________________________________________________________________________________________________

Tools: Uptime Robot

Having recently been on a bit of an uptime monitoring quest for a client, I started looking around the different web-based services dedicated to this purpose. Having gone through the usual batch: Pingdom, Mon.itor.us, Are My Sites Up? and several others, I quickly came to the realization that if you’re looking for a free uptime monitoring service you have to have a pretty damn good reason to not go with Uptime Robot.

Continue reading →

_______________________________________________________________________________________________________________________

Love LESS but you’re put off by Ruby?

I’ve fiddled around with the original LESS a few times and loved the convenience of variables and nested rules in CSS, but I’ve always been reluctant to put it into production because of the fact that it’s based in Ruby. Not that I have anything against Ruby as a language, far from it in fact, but simply the fact that it isn’t as all-pervasive as PHP which makes maintenance and portability a bit more of a pain that it should be. But now there’s an answer.

Continue reading →

_______________________________________________________________________________________________________________________

Amazon S3 batch editing metadata

I’ve recently had cause to start using S3 on a personal project, and while for the most part, I couldn’t be happier, there is one thing that is irritated more than I thought it would. Namely, you can’t batch edit meta-data for files from within the native AWS console.

Continue reading →

Tools

Polyglot – A simple client-side i18n library

Polyglot is a very simple string replacement i18n library I built for a personal project and thought was self-contained enough to warrant its own repo. It’s very simple to use and does what it does very quickly indeed.

However, it is not a full i18n solution, it does not do any kind of date; currency; time or any other i18n functions you might expect. It does one thing and does it well. It may do those things in the future, however.

Continue reading →

_______________________________________________________________________________________________________________________

Mondrian – Random Color Generation in JavaScript

A library I wrote for generating random colors in JavaScript, it supports rgba(a), HTML color names, hex and hsl(a). Check it out!

Continue reading →

_______________________________________________________________________________________________________________________

Gutenberg templating library

I wrote a small (10 lines) and simple templating library that is dependant on ES5 compatibility in the client for a mobile web app I’m building (more on that at a later date!). You can find the source on Github. Along with the usage and testing, as always feel free to contribute!

Continue reading →

_______________________________________________________________________________________________________________________

Sublime Text 2: 5 Plugins You Really Should Be Using

Sublime Text 2 has become mine, and many other people’s, editor of choice. Bringing features like multiple cursors and Vim bindings to a modern, good looking, lightweight and cross-platform editor. It rocks. Especially the plugins.

Continue reading →

_______________________________________________________________________________________________________________________

Snippets in Notepad++

I’m a massive fan of Notepad++, the lightweight Windows-based text editor, it has a tiny footprint but packs enough features to make it my go-to Windows text editor. Up until quite recently, however, I’d been missing snippets, but not anymore.

Continue reading →

_______________________________________________________________________________________________________________________

Quick links: ‘Multicolr’ image search and Git Immersion

A couple of really great quick links I’m sharing today: one’s a really cool tool that can help you find images based on a certain color palette; the other’s a great beginners tutorial for the Git version control system.

Continue reading →

_______________________________________________________________________________________________________________________

Tool: A Google Maps powered Twilight/’Golden Hour’ Calculator

No, not that Twilight. This is a really cool Google Maps powered tool that allows the budding photographer in us to work out when the ‘Golden hour’ is wherever we are on the planet.

Continue reading →

_______________________________________________________________________________________________________________________

Tools: Uptime Robot

Having recently been on a bit of an uptime monitoring quest for a client, I started looking around the different web-based services dedicated to this purpose. Having gone through the usual batch: Pingdom, Mon.itor.us, Are My Sites Up? and several others, I quickly came to the realization that if you’re looking for a free uptime monitoring service you have to have a pretty damn good reason to not go with Uptime Robot.

Continue reading →

_______________________________________________________________________________________________________________________

Love LESS but you’re put off by Ruby?

I’ve fiddled around with the original LESS a few times and loved the convenience of variables and nested rules in CSS, but I’ve always been reluctant to put it into production because of the fact that it’s based in Ruby. Not that I have anything against Ruby as a language, far from it in fact, but simply the fact that it isn’t as all-pervasive as PHP which makes maintenance and portability a bit more of a pain that it should be. But now there’s an answer.

Continue reading →

Book: jQuery Fundmentals

That was until recently when I discovered this excellent, comprehensive, lucidly written and above all free and ‘open-source’ eBook by Rebecca Murphy (@rmurphey) titled jQuery Fundamentals.
Whether you are an absolute beginner, a reasonably confident intermediate level user (like myself) or a fully fledged and accredited jQuery Wizard™©®; this is a book you definitely need to check out.

The HTML Version
The PDF Version
The ePub Version

The Github repo: http://github.com/rmurphey/jqfundamentals

W3C HTML5 Testing: IE9 comes out on top?

Wait, did I read that right? Internet Explorer has just aced the W3C conformance tests for HTML5? Wow.

But why is this so surprising?

Like quite a few people I’ve been guilty of IE bashing in my time: the unutterable and unfathomable hate I have for IE legacy browsers and the quantity of time I have spent on them; the indignant rants about IE7/IE8 still relying on those ridiculous filters; the overall lack of any discernible enthusiasm for standards from the biggest browser vendor in the world. But does this recent conformance score really mean that the IE team is committing itself to produce a browser that will compete in a market that has outpaced in virtually every way for years?

If you’ve been trying the recent set of IE9 betas (and I would encourage you to); you would have to agree that yes, they seem to have turned a corner. Having taken a semi-ideological leap into the modern web, we all now have to take account of what having the single largest player in the browser game now enthusiastically conforming to this standards means.

Personally, I believe it means the advancement of any proposed standard (like HTML5 and to a lesser extent CSS3) is going to speed up leaps and bounds, as one of the largest obstacles to the universal adoption is now removed (

Quick and total ubiquity is a pipe dream, mainly due to IE’s dreaded legacy browsers and their intractable customers in the enterprise market; but hopefully, what this new test success means is Microsoft is committing itself to open standards in the long term, and that’s great for everybody who uses the web.

via The Register

Tools: Uptime Robot

Having recently been on a bit of an uptime monitoring quest for a client, I started looking around the different web-based services dedicated to this purpose. Having gone through the usual batch: Pingdom, Mon.itor.us, Are My Sites Up? and several others, I quickly came to the realization that if you’re looking for a free uptime monitoring service you have to have a pretty damn good reason to not go with Uptime Robot.

I’ve since started using their free tracking for most of my personal sites and I have very little bad to say about it at all. The only small niggle I have about it is the UI; which while perfectly functional and relatively intuitive, looks kind of dated and just strange in places. For instance: there are illogical paddings (in the sign-in bubble for instance); the color palette is confused, in some cases clashing and in others washing itself out; the use of rounded corners everywhere is kind of ridiculous (and is what is primarily responsible for it looking dated, in my view); and the logo (and branding generally) looks a little amateurish.

In short, it’s a technically fantastic service and if the UI was improved it would be even better. But if you’re interested we went with Pingdom for our clients, mostly because of the API and their multi-location pings.

Love LESS but you’re put off by Ruby?

I’ve fiddled around with the original LESS a few times and loved the convenience of variables and nested rules in CSS, but I’ve always been reluctant to put it into production because of the fact that it’s based in Ruby. Not that I have anything against Ruby as a language, far from it in fact, but simply the fact that it isn’t as all pervasive as PHP which makes maintenance and portability a bit more of a pain that it should be. But now there’s an answer.

In step lessphp, which describes itself as ‘a compiler for LESS written in php’, and it’s just that. I’ve been testing it over the last couple days and I can’t express how well it works (in the same way as the original LESS in fairness) but with the added bonus of drumroll PHP.

There’s also a Symphony plugin, which is just icing on the cake as far as I’m concerned.

I’d encourage everyone to check out lessphp.

Amazon S3 batch editing metadata

I’ve recently had cause to start using S3 on a personal project, and while for the most part I couldn’t be happier, there is one thing that is irritated more than I thought it would. Namely, you can’t batch edit meta-data for files from within the native AWS console.

Amazon S3 meta data edit

WHY WON’T YOU LET ME BATCH EDIT METADATA! GRAAAAAHH! 😡

Now, there are various options for speeding up this manually mind-numbing task (namely a third party desktop app like Bucket Explorer or the very good S3Fox Firefox extension) but surely this is a gaping hole in the S3 consoles core functionality?

Adding far future expires is a vital part of using a CDN to speed up static content delivery and this is the way you would do it. Before you say it, I know you can do add headers during the upload process, but surely that isn’t the point.

phpBB: Serve static files from a CDN

Having recently spent the best part of a day modifying the phpBB codebase (3.0.7) to allow me to serve static files via a CDN I can say that I am greatly looking forward to hooks in 3.1.

To save you all a little effort I’m gonna share the method I used below; I’m not going to go into great detail about template and theme issues, as those are a fairly straightforward matter of swaping the old local URL’s in your template/theme for the new public CDN URL’s and clearing the cache. But rather I will explain how to modify the core files to serve smilies, forum ranks, forum images and your imageset which is a tad more involved.

First of all BACKUP ANY FILES YOU’RE GOING TO MODIFY. Seriously. Do it right now.

To move forum images:

Find the below in includes/functions_display.php:

This appears twice in the file, edit both instances as follows:

This is the title

To move smilies:

Find the below in includes/functions_content.php:

This is the title

Edit it into the form shown below:

Edit it into the form shown below:

To move forum ranks:

Find the below in includes/functions_display.php:

Edit it into the form shown below:

To move the imageset:

Find the below in includes/session.php:

Edit it into the form shown below:

That’s it. Reupload and see you work in action. You shouldn’t have to edit imageset.cfg at all if the edits have been performed correctly, as it will still grab the filenames as before but now it will prepend the URL of your CDN and not the template URL that was previously assigned by the above files.

Good luck, and let me know if you have any questions.