Juicer 1.0.0 Released

Earlier today Christian Johansen pushed the button and published Juicer v1.0.0 as a gem. For those unfamiliar with Juicer, it’s an open source Ruby based tool that allows you to merge and minify your JavaScript and CSS files. Internally, Juicer uses JSLint to keep your JavaScript in good shape and supports both YUI Compressor and Google Closure Compiler to make your CSS and JavaScript files as small as possible. ...

February 26, 2010

Speeding Up Your Webby Site With Juicer

On this blog I use several stylesheets to keep things (somewhat) organised. This allows me to upgrade my coderay.css file or my Tripoli CSS stylesheets without having to reorganise everything. But, just because I like to organise my code into managable chunks, doesn’t mean that I have to degrade the performance of the site for the visitors. ...

November 4, 2009

Perfect Pitch

Perfect Pitch is an article by Jeremy Keith that discusses some recent issues and misuses of DMCA unfairly to destroy competitors search engine rankings. It all started out as an innocent comment about attaining Perfect Pitch on The Session. This is really just another one of those examples of American legislation that got implemented without any real thought of the consequences or of how it could be misused, not entirely unlike the Intellectual Property and Patents legislation in the U.S. GO Lobbyists!!! ...

November 3, 2009

Disable Webpage Preview Images in Safari 4 Final

I’ve finally managed to switch off the final remnant of the Top Sites feature in Safari 4, the automatic generation of ‘Webpage Previews’ I’ve previously written about how to Reclaim Disk Space From Safari 4, where I detailed how to set up a job to cleanup the Webpage Previews cache folder. ...

August 3, 2009

IE6 Background flicker once again

Every once in awhile you come across one of those Internet Explorer 6 issues that tries it’s hardest to be really annoying. Today was one of those days with IE. Having flown out to work directly with a client’s web team yesterday, I spent some time today cursing at IE6 and trying to deal with a weird flickering of the webpage, apparently caused by hovering over a menu. ...

March 27, 2009

Sitemaps With Webby

As a followup to my two part article about Creating Sitemaps with Comatose CMS, I wanted to share with you, how I am currently implementing Sitemaps on this blog. After taking a stab at implementing my own solution for about 10 minutes (with Webby, you get surprisingly far in 10 minutes), I used my google-fu and found an article about Easy Google/Yahoo! Sitemaps with webby. Implementation took about 5 minutes, and I have have a fully functional Sitemap. ...

March 23, 2009

Adding Page Caching to Sitemaps

The shortest distance between two points is not a straight line. The shortest distance is zero. Admittedly, we’re not about to fold space or do time travel, but you get the idea. Likewise, for any web framework, the fastest way to deliver content to clients is to not use the framework at all, but let the webserver serve static files to clients. ...

March 17, 2009

Creating Sitemaps with Comatose CMS

For some time now, I’ve been using Comatose CMS for client sites. It is quite possible the smallest Rails based CMS, having only the features you need for most sites and flexible enough to allow you to extend it if you need to. Whenever you’re doing content publishing, you should make it as easy as possible for search engines to find and catalog our content. In this post I will show you how you can create a simple Sitemap from a Comatose CMS. ...

March 16, 2009

Hello world, webby!

You might wonder what is going on with this site right now, and it might look very incomplete at the moment you are viewing it. I am rebuilding the website using Webby, a small web generation tool. It is purely a learning experience, but with a very tangible end goal: an easy-to-manage blog. ...

March 11, 2009

How to create un-indexable content for missing javascript warnings

At Gazebo we love to use unobtrusive enhancement to make our solutions available to the biggest possible audience, and greatly improve the experience for users with sophisticated user-agents. This usually means: Create semantic, valid markup, which can be read by any browser, including phones Add styling via CSS, to make it look nice in modern, sophisticated browsers Sprinkle a little javascript, to make it all behave nicely for supported user-agents To control decoration, when javascript IS available, I usually add js-enabled or something similar to the classname of the <body> element. This allows me differentiate the styling of widgets for when javascript is available, and allows a controlled fallback decoration, for when it is not. ...

November 20, 2008