Sitepoint Gives Away Free Book on Building Firefox Extensions

Regular readers of this blog will know I’m a huge fan of Firefox (the ultimate browser for developing web apps) and Sitepoint (a set of wonderful resources for web developers and designers).

What makes Firefox the best tool for web developers (and others)? It’s the extensions. And now, for a limited time, Sitepoint is offering a middlingly useful extension, CodeBurner for Firefox, which gives you access to their wealth of HTML and CSS reference material, right from your browser. This used to be an addon to the awesome Firebug extension, but now is stand-alone.

To celebrate the release of this new version of CodeBurner, Sitepoint are giving away a PDF book on developing Firefox extensions. This is supposed to be a limited time offer (30 days) so hurry up! (On the other hand, once you give away a PDF for free, it’s kinda hard to start charging for it.)

Sitepoint has a tremendous library of books for sale, and they’ve really hit a sweet spot in the market: I’ve purchased nearly every title they’ve ever published. Their books are well written, professionally edited and delivered in a timely fashion. Their customer service is also beyond reproach. I once complained a book had arrived slightly damaged, and received another copy a few days later. Top notch.

OK, gotta go now. I’m keen to get into developing my own FF extension!

Open Source HTML/CSS to PDF

I spent most of last night viddying Google Tech Talk videos on YouTube. They’ve got terrific stuff there. Too bad about the res.

One of the videos was about , a commercial product which takes HTML/CSS and converts it to a paginated PDF, suitable for printing in book format. (Yes, a dead tree type book.)

Awesome. Except for the price.

Too bad, too, because I could really use something like this. A couple of years ago I did a project for a company called CityFax, in which we had to produce, and email out documents in PDF format. We used a very serviceable PHP library to generate the PDF pages; but it was grueling work putting them together. Why learn a new language if you can do the same thing with the tools you already use every day? (i.e. HTML and CSS)

So I went in search of an open source version of this tool. And sho’nuff my brothers, it’s out there. XHTML2PDF, is an open source, dual license project which produces PDF’s for a living. It’s written in Python, but has command line versions for OS X, Linux and Windows.

Next time I need to generate a PDF, this is my go-to tool.

Less is More

Among other things, I’m the main HTML/CSS guy on and As such, I’ve run into many situations where I found the only way to get the effect I was looking for, was to copy a chunk of CSS code from the same document; whether it’s as simple as a colour code, or as involved as a whole set of CSS properties. As a programmer, that’s a heartbreaking position to be in. (Don’t get me started on HTML emails.)

Time and again, I’d hoped each successive iteration of the CSS specification would introduce variables and other such syntactic goodies. But alas, there was no joy.

No joy, that is, until a couple of brave souls decided to take matters into their own hands. You can do that with open source, you know. Alexis Sellier and Dmitry Fadeyev have put together a CSS pre-processor, called Less. It adds four new features to CSS:

  1. Variables
  2. Mixins
  3. Nested Rules
  4. Operations

You can find out all about it at their comprehensive documentation page.

The pre-processor is written in Ruby, and installed without a hitch on Bender2, with just one command in Terminal. I’ll let you know how much of a horror-show installing it on Windows will be when I get to it at work.

I’m really looking forward to using this. Let me know of your experiences.

Update: I just installed less on my Windows XP box at work. Minimum drama.

I also downloaded the less package, but I’m guessing that wasn’t really necessary. gem probably downloads it on it’s own.

Update 2008-08-17: Ran into errors with the Ruby version. But found a link to a PHP version in the Less discussion group.

Shaun Inman has also produced CSS Cacheer. Please let me know what you think of these if you try any of them.