Categories
Code Talking

Pick a Feed and Stick to It

If you’re like most people, your blog has an RSS feed. Chances are, you don’t even know what RSS stands for, but you likely have one (if you’re wondering, it most often stands for really simple syndication, but that isn’t important).

Unfortunately, you may have more than one, which means if you want to know how many subscribers you have to your feed, you have a problem. At best, you have to add up each of the subscriber counts and get a total. At worst, you have potential eyeballs who want to see your latest and greatest, but they’re looking at outdated content. Isn’t it time you fixed this?

Categories
Movable Type

Update Your Movable Type Spam Filters (Please)

Movable Type version 3.2, released in April of 2007, included a plugin known as SpamLookup. This plugin was able to submit comments to a lookup service (hence the name of the plugin) to one of a number of blacklist services, which in turn would determine if the IP address used for the comment submission is suspicious, allowing you to better judge if you had encountered a spam comment.

However, way back in May of 2007, Six Apart released a guide on updating your spam filters for the plugin. Without the change, your comment-posting process will be horribly slow, because the process has to timeout before it will continue. Also, the default for the other service probably isn’t the best (though that isn’t mentioned). Want to know more? Read on!

Categories
Movable Type

Displaying Related Entries on your Movable Type Site

From time to time, I am asked how to display related entries on a Movable Type-powered site (and I frequently have to look it up myself), so I figured that I’d document it here.

While there are plugins that do the work, they typically depend on another value (usually categories, keywords or tags – sometimes a combination of those), and the problem with those is that they depend on humans to first enter that value. If you forget to do so, then it means the related entries won’t work until you go back and enter it. If you enter the wrong value, you get the wrong results. There has to be a better way. Luckily, there is.

Categories
Microsoft

Windows was Unable to Save All the Data for the File

Anyone who has been reading for any length of time knows that I’m a bit of a stickler when it comes to keeping track of data, so a message like The Data has Been Lost is a killer. Some people might even call this behavior anal, but it is what it is. So when the message comes up – repeatedly – telling me that the Delayed Write Failed and that the data has been lost, it ate at me. Really. I didn’t know what to do. I think most people might take issue with it, but hey. What can I do?

Now it’s not as if I’m talking government secrets here. I’m just doing a typical backup of data across a pretty simple home network (and a wired one at that). If it was on the wireless portion of the network, I could perhaps consider that maybe the neighbor’s signal got in the way. But why it decided to start happening – and happening all the time – was driving me absolutely nuts.

Categories
Technology

Goodbye WS_FTP, Hello WinSCP!

It’s been a long time coming, but I’ve finally decided to give up on WS_FTP. It started when I kept running into the Failed to Load OpenPGP Keys from Keyrings message last year. It isn’t a bad message, it’s just one of those things that really irritates me. It came up every time I started the software and I couldn’t get rid of it. Then it went away and I forgot about it, but I would remember it every time I went to start up again. I would dread starting the application. It’s a shame, really, because I had been using the software for a really long time.

Even though I found a solution to the problem, it had become time to move on. I had just grown up from the simplistic software that had carried me for so long, and it was time to find a new utility for my FTP needs. More importantly than the message that had dogged me for months and months was the fact that FTP was born of a time when I didn’t really care – or really think – about security, and now I tend to think about it all the time. So I wanted to approach it from that angle instead.

Categories
Microsoft

Reading an Exchange Mailbox from GMail

So the other day, I’m trying to figure out how to read an Exchange mailbox from GMail and it’s really starting to get to me because I just can’t get the stupid thing to work. It shouldn’t be that hard, because it’s possible to use an IMAP or POP3 connection to Exchange, after all, but I just can’t get the GMail connection to work. To make matters worse, if you search for it (my usual method of solving such a problem), you end up with results, but not of the correct variety. You get pages that tell you how to forward from GMail to Exchange, and pages that tell you how to use GMail as a business platform – but not what I really want, which is simply to have GMail do the checking with Exchange being a regular POP3 account. So I had to keep digging.

I’ll tell you first that it is possible. Secondly, you do need to have POP3 configured (you should probably have guessed that one). Finally, it’s really not hard – you just have to be willing to play around and guess a few times in order to figure out the answer. After that, it works like a champ.

Categories
Movable Type

Integrating Your Movable Type Site with Plurk

If you’ve been reading the blog for the last little while, you know that I’ve been hanging out on Plurk recently. Naturally, that means that I have been playing with Plurk as well, and trying to integrate it into my daily routine. When I used Twitter, it meant that I used Twitterfeed to create Tweets from the entries that I posted here. The problem is that Plurk has no such interface, as it doesn’t have an API, so no such solution exists.

Luckily, Plurk power-user Ryan Lim came to the rescue. Not long ago, he released RLPlurkAPI, a PHP-based API into Plurk. It’s not an official API, but it’s good enough to allow outside services to access Plurk from the outside. It isn’t Twitterfeed either, but what it did was allow people such as myself to see that it’s possible to access the system from the outside. Unfortunately, I still couldn’t do it, and I needed some more help.

Categories
Movable Type

Automattic Stats for Movable Type

If you read the post where Andy talks about releasing the Automattic stats plugin for self-hosted WordPress, he mentions a few things that make it interesting – notably that the system “only supports WordPress”. Then he also mentions that anyone with a thorough understanding of WordPress and XMLRPC could clone the plugin to make it work with other platforms.

I don’t claim to have such knowledge (of either WordPress or XMLRPC), but I think I’ve managed to do just that. Make it work with another platform, I mean. Some time ago, I managed to get the blog registration piece working, which really wasn’t that hard – you simply pass some data to the system along with your API key and in return you get your blog registered. Not too bad. Then I ran into a speed bump of rather monumental proportions. Actually it wasn’t that the bump was particularly large, it’s that I hit it and then had about a million other things to do. So I put everything on the back burner.

Categories
Code Talking

Should You Use Google's Ajax Libraries API for Hosting?

Thanks to Jesse, I decided to read up on Google‘s Ajax Libraries API, a “content distribution network and loading architecture for the most popular open source JavaScript libraries” (their words). In simpler terms, Google will host some of the most common JavaScript libraries for you, such as jQuery, prototype, script.aculo.us and MooTools (my words).

The immediate benefit is not having to host it myself. That’s cool. I don’t use a lot of JavaScript, but as you probably know, I’m a fan of offloading things to other people when it can save me the hassle of doing it myself – FeedBurner (now another Google property) is one of the most famous examples of this. But I’m not sure if JavaScript will work in this arena. First and foremost, because I use so little of it, I’m not sure if it really matters. Only 30K or so on my individual archives (such as this one). Even if every visitor I had to the site downloaded the pages fresh, instead of caching them, and every page that I had had those pages – a virtual impossibility, since they don’t use themselves – we’d only be talking about 1GB per month or so. That’s hardly worth the effort for me – though it may be for you. But what about the user experience? Maybe that is worth it.

Categories
Movable Type

Converting RightFields to CustomFields, Now with SQL Goodness!

Back in December, I put together a script for converting RightFields data to CustomFields. This was mostly for me, but I had a few people request this sort of thing, and I had grown tired of doing it by hand, since I’m inherently lazy. There were two problems with this script. The first was that it didn’t do data stored in custom SQL datasources. Unfortunately it was just too hard to figure out. That’s not to say that I couldn’t make it work, but I wasn’t able to do it in an automated fashion.

The second problem was that it left out a few people who had some data that they might want: Namely those with data stored in file fields (usually a file name, such as that you might use for an image). These fields can be somewhat complex, but if it’s just a name, then it’s not typically a problem in converting the data. So it may be okay to convert it. Still, you should probably be aware that a one-to-one conversion of this sort does have some potential pitfalls. The most common was that CustomFields doesn’t have an upload option, but you also can’t do things like extra file path information. So if you decide you want to convert the filename, you should be aware of these potential downfalls. It’s better than nothing, however.