Skip to content

Blog

New SleekTabs Text Tutorial

SleekTabs still often has a bit of a learning curve to implement for many people. It is a bit, well, quirky, in the way that it has to be implemented. It could be better.

I have previously put together a video tutorial explaining with a good example how to implement it, but there has still been confusion, partly due to the old example/tutorial that ships with the download.

I’ve now put together a text version of the video tutorial (just Part 1 for now), which is easier to consume than the video if you’re pressed for time or just want to quickly look up a detail.

I’m also considering removing the old example file as part of the SleekTabs download, to avoid future confusion. The problem stems from the fact that implementation is approached two different ways across the old and new examples.

I am concerned, though, that because it is a much simpler example, removing it could be a problem for those who want to get up and running as quickly as possible, without digesting the more detailed tutorial.

I welcome all comments on SleekTabs and the documentation, so if you have ideas on how to make things better, or want to feedback things that you think are working well, please do let me know!

New Design

It’s been quite a long time since my site and blog have seen any major visual changes. I thought it was about time to give it a visual refresh, so over the past few days, I have put together this new design.

Hopefully, it retains much of the visual identity of its predecessor, while giving a welcome refresh, making things visually cleaner and making it a little less bland than previously.

I particularly like the new main navigation bar, which I think is more attractive and clearer than it used to be, while also removing the old hack I used to get the ‘button’ effect (there is no more ‘button’ effect)!

There are also a lot of changes behind the scenes to make the integration between the non-WordPress portions and the WordPress blog a lot easier.

Anyway, let me know what you think of the new design. Comments and suggestions for improvement very welcome!

DfontSplitter for Windows

Yeah, so, I just released some Windows software.

My program for converting and splitting Mac OS X .dfont files into TTF files, DfontSplitter has been a pretty popular route in to my website for some time now.

While the original program is written for OS X, it became apparent from my website statistics that many people who needed to convert .dfont to .ttf were Windows users.

So, today, I have released DfontSplitter for Windows, version 0.1. This program is, again, simply a wrapper script for fondu, which does the real work. It has a completely unique GUI, custom built for the Windows platform.

There is also a brand new project page for DfontSplitter, with links to both the Mac and Windows versions of the software and the documentation too.

Hopefully this can serve the need of Windows users who need to convert those filetypes, and don’t want expensive or spyware-ridden software. Enjoy!

A quick footnote – this is a bit of a licensing quagmire. There are lots of different licenses that apply to different bits of DfontSplitter for Windows, including GPL 3.0, GPL 2.0, BSD and Creative Commons. That’s all explained on the project page, and in further depth in readme and licence files in the downloads.

Oh and it’s also slightly ugly, in terms of how it interacts with fondu. But it works. 🙂

WPGet 0.8 Released

I’ve just pushed out a new version of WPGet, to fix an issue with its category support that has been there for quite some time.

For those not in the know, WPGet is a script that is designed to allow you to include a short summary of your recent blog posts on your website. Specifically, it works with WordPress and is great for integrating a WordPress blog into a site that isn’t completely powered by the WP platform.

The new version of WPGet brings the following to the table:

  • The ability to retrieve posts only from specific categories that you choose is now fixed*, and works with WordPress 2.3.x, 2.5 and higher.
  • The ability to retrieve posts that match certain tags. This is an all-new feature.
  • Support for WordPress version prior to 2.3 is dropped. It might still work (except Categories and Tags), but I can’t help you if it doesn’t.

If you’re not using the Category and/or Tag features, there’s probably not a compelling reason to upgrade, but if you do want to include a summary of blog posts from a certain category (or categories) or that match certain tags, WPGet can now do that for you.

* WordPress 2.3’s new database structure for categories and tags is what broke WPGet in the first place. I’ve been slow in releasing a fix, I know.

How do I get it?

The easy way: Run the installer and it will walk you through the process. There’s more help here as well if you need it.

The not-so-easy way: Download the code yourself, and run the installer on your own server (or just set it up manually).

The WPGet section of the documentation wiki is alive again and should be featuring some more documentation pretty soon.

If you have any feedback or comments, please do leave a comment on this post, or you can get in contact another way. I would love to hear from anyone successfully using WPGet!

New SleekTabs Video Tutorials

It’s been a while since I last did a video tutorial explaining how to use SleekTabs, so I thought I would dig up the project again and try to explain how to use it a little better.

The result has been my day’s work today. It’s a two part tutorial, showing you how to first set up a simple three-tabbed static web page with Ajax support, and then moving on into part two to show you how to configure fallback support (something that I never touched on previously).

Part 1

Part 2

More info about this tutorial, including the source files for this demo project, and a link to a live working completed version, is available on my documentation wiki.

I am aware that the audio quality is far from good – there is quite bad noise on the audio track and some obvious audio transitions that I really could have done better. However, I still think it’s a good resource for explaining SleekTabs and I’d love to hear any further feedback on either this or the program itself.

Learning Django

I’ve been a developer in PHP for quite some time now. I don’t honestly remember when it was that I first got a working WAMP setup, which kickstarted my interest in web applications with PHP, but I certainly remember how rewarding it was to finally get it up and running and be able to start with PHP.

Since then, I’ve embarked on a fair few projects in the language, and it has served me well for a lot that I’ve done with it.

I think the time has come, though, to expand my web application and programming horizons and look at something else.

I meant to blog about quite a long time ago, but I’m now investing time into learning Django (and therefore Python as I go along).

I bought Sams Teach Yourself Django to give me some direction in my learning of the framework. From what I’ve gone through (up to Hour 10 out of 24), I’m finding it a very useful tool to help me have a project in which to learn. I might follow up with a more in-depth review of it (either here, or on FOSSwire) if I think it worthy, once I’m done with it.

Sams Teach Yourself Django

I’m also liking Django. While it lends itself more to larger projects than to small one-time scripts, it is an impressive framework on top of Python that automates lots of the things that you have to micro-manage in PHP.

Having said this, my ventures into the realm of Django and Python do not mean I’m abandoning PHP. Just as I’ve done with running Mac OS X alongside Linux without abandoning Linux, Django will become an addition to my repetoire, not a replacement for PHP. As always, it will be about the right tool for the job.

DfontSplitter – convert dfont files to TTF

UPDATE: Windows users, you now have a version too. More details on the new project page.

This post is no longer up-to-date. Please go to the DfontSplitter project page.

Please support this work!

There used to be advertising here, but I no longer feel sure that advertising delivers the best experience and truly reflects the values of this site.

Keeping things running, however, is not without financial cost. If you would like to support the time and effort I have put into my tutorials and writing, please
consider making a donation.





Mac OS X does some weird things sometimes. One of these is that some fonts are packaged in a format with a .dfont extension. This format allows multiple files to be contained within one dfont file, but doesn’t really make an awful lot of sense to me (why not just use a standard bundle?).

But anyway, there’s a BSD-licensed program called Fondu, designed to split these dfont files so you can get at the goodies inside. That’s all very well and good, but it’s a command line program, so not everyone will be comfortable using it.

As a sort of messing about with AppleScript project, I’ve put together an AppleScript based application that wraps around Fondu and allows you to pick a dfont file, pick a destination folder and it will do the rest.

Here’s a video of it in action. It’s simple enough not to need one, but if you want to see how it works before downloading…

Download now (120 KB)

Enjoy.

UPDATE: Please note that DfontSplitter is only tested on Mac OS X Leopard, 10.5. It should work on both Tiger (10.4) and Leopard (10.5), but is known not to work on Panther. Unfortunately I do not have the resources to fix it for Panther, as I only have an Intel Mac.

A new project

It’s been quite a long time since I’ve put some brand new open source code out there, and I think it’s about time to change that. I’ve had a download statistic tracking system, written in PHP, running on here for the downloads of WPGet, SleekTabs and others for some time now.

The idea of it is simple, it takes a request for a download file, tracks the information about the request (the file downloaded, IP address, time, user agent etc.) and then at the management end provides an easy interface to look at statistics about the downloads of your files.

Usually, the problem you face with metrics on file downloads is that you can’t embed a JavaScript snippet for a traditional service such as Google Analytics. This PHP class will provide the download statistics so you can accurately discover that information about any downloads you offer on your site. People like metrics.

The code I have running here on my site is very simple. It works fine for what I need it for, but I’m only really using it as inspiration for this project. I will write it from the ground up and modularise it as much as possible so that in the future it perhaps can be integrated within existing CMS systems.

It’s slightly ambitious, yes, and I don’t have excessive amounts of free time, but it’s something to get my teeth into and keep myself programming.

Now, I don’t have a name for this project, and I want a good one. Something that sort of sums up what I’ve described its function as, but that is reasonably unique and memorable.

So here I throw it out to my audience (yes, all three of you). Any ideas? Or if you’ve got any other sensible input on this project, I’d love to hear it too.

SleekTabs 0.2 released

It has been far too long since I first released SleekTabs, my PHP class which makes it easy to create tabs on your web page.

Finally, after a lot of doing not a lot, and some sporadic bursts of development, I’d like to introduce SleekTabs 0.2. First of all, I want to thank Richard Fitzgerald, who initially contacted me with an idea for this release’s main feature – caching, and has advised me on various things during its development and continues to help me with the project.

Now, let’s take a look at the main features of this release:

  • Caching – if you so wish, you can enable caching, so multiple requests for the same tab are fetched from the user’s local cache, rather than resulting in another request to your server.
  • IE bug fix – this release works around a bug in Internet Explorer that causes it to undesirably cache the tab results, by introducing a timestamp into the SleekTabs request URI.
  • Overhauled example script – the index.php example script included has been completely reworked, fully documented and commented to explain how to implement SleekTabs in your site and how it works.

I really have to apologise for how long this has taken – it’s been literally months since the initial release and this release isn’t exactly groundbreaking. However, it is a step forward in SleekTabs’ evolution and makes the installation and integration process much clearer.

You can download SleekTabs from the project page here and give it a try for yourself. It is also available from PHP Classes. All genuine feedback is appreciated – and if you do use it on your site, thanks!

SleekTabs is licensed under a BSD style licence – see the headers in the files in the download for more information.

Upgraded to WordPress 2.3

It’s taken me a little while to do some testing and making sure everything is all good – but my personal blog is now upgraded to WordPress 2.3.

WPGet is also upgraded to 0.7 as well – so I’m now actually using the latest version of my own software too!