in Blogging

Back from the dead

I think it’s been almost 4 months since my last post. And no, that doesn’t mean I’ve been in cryogenic suspension, and haven’t been posting anything because my life has been in complete stasis. Ironically, behind the scenes, it’s been a bit of a madhouse (a fun and exciting madhouse, but a madhouse nonetheless)…

I guess it all started back when I decided that I really needed to support comments on my blog. And that was triggered in part by a friend of mine, wanting to comment on one of my posts, actually sent me an email to comment on it (as if to say, people are reading your stuff and you really need to, like, get your blog in order so we don’t have to send you emails to let you know what we think.) I’m not exactly sure how I ended up not having commenting in my blog previously, but I think it harked back to when I was implementing my web site, and I decided to completely build my own custom templates rather than go with the original blog templates. The advantag to that is much greater control (and that you end up learning a lot about building dynamic web sites.) But the disadvantage is that you’re kind of not leveraging all the effort and expertise that went into designing the original blog templates. Rather than using the xhtml and css of the original templates as my starting point, I instead took the opposite approach and designing a static version of each template and then went back and replaced my static dummy version of, say a post date, with the corresponding dynamic hook. I think I chose to take this approach because this is how I work when designing web sites for my job, in which (after doing some sketches and whiteboarding and wireframe and what-not), I tend to produce a static xhml version of the site, which then can be used for end user evaluation and an implementation reference. However, in those cases, I am usually designing something that has yet to be built, and I guess I failed to see that distinction when delving into implementing a blog. In that case, I am of course, not designing something new; instead, I am customizing something that already has been built, and should therefore have used what has already been built as a starting point.

So, back to wanting to add comments my blog. As it turned out, with the blog package I was using (yes, I ended up switching to a different blog package), because I had completely customized every template, I would now have to customize all the additional templates and modules and content-types needed to support commenting. It turned out to be a major headache. Part of the headache (actually a big part of it) was tied to how templates are integrated into the system. You have to do quite a few steps in order to actually see the effect of a customization (upload or copy and paste the new template code, save the template, rebuild the blog, or at least that template type, and then refresh your browser page.)
So, to make a long story a little shorter, I just got quite frustrated with the MT package (and this goes way beyond templates – the admin area just feels very dated, and the fact that you have to keep rebuilding the thing every time gets old in a hurry. I explored other packages, and fairly quickly found myself falling in love with WordPress. For starters, I love the 5-minute installation, and then the admin area is just so much more pleasant to work with than that of MT. And then there is the ease with which you can change the look of your blog. MT has something called StyleCatcher, which I tried but was never able to get to work, but from what I can tell, it doesn’t even begin to compare. And maybe most important of all, WP is built with PHP, which means that the dynamic hooks used in the templates are the programming language itself rather than a kind of blog API in the case of MT, which is built with Perl – a very powerful but IMO not at all easy-to-learn language.
So (note to self: need to stop starting every darn paragraph with ‘So’), that was the good news with switching to WP – the bad news was that, even after perusing many many of the ready-made WP themes out there, I just could not bring myself to use any of them – it felt a little like decorating my own house with someone else’s stuff. Despite all the issues I had faced customizing MT templates, I still ended up building custom WP templates. Though I did learn from my earlier mistakes. If you’re ever planning on designing your own blog, a few pointers from someone whose been through the trenches:

  • Set up a local testing environment. If you’re a developer, this is a no-brainer, but a lot of people who are implementing their first blog are migrating from having only built static sites, where just viewing files locally in your browser will do the trick. Not so with a blog. The good news is that, with WP, this is pretty easy. If you’re new to setting up a local testing environment (i.e. installing an Apache server, the MySQL database, and PHP), consider getting a book that walks you through this process. One fantastic book is PHP for Dreamweaver 8, by David Powers. This is one of the best written computers books I’ve purchased, and it walks through the process of setting up a testing environment in great detail.
  • Use an existing theme as a starting point. Again, this may seem obvious to some, but for me it was not. It’s much better to start with something that works and then make little changes to that, gradually adding your personal touch, than to try to build what you want from scratch.
  • If you’re switching to a new blog package, you may need to create permanent redirects. While WP supports nice semantically meaningfuly URLs, not all blogs do, in which they will have their own idiosyncratic URLs., which means that all the permalinks from your old blog might become orphaned. In other words, even if you export your old blog and import it into the new blog (one of the things that did not go very smoothly between MT and WP), people and robots alike may have linked to or indexed the old permalinks. For that reason, you’ll want to add permanent redirects on the server, which will make the peramlink change transparent both to users and search engines. A good place to start to learn more about this is to just Google ‘permanent redirect.’
  • Expect to learn xhtml, css, and php. For me, this was probably one of the more valuable aspects of making the move to WordPress. While I’ve been fairly fluent in xhtml and css for a while, it was great to also get comfortable writing php scripts. There really is no better way to learn a programming language than to have a set of specific problems to solve, for which you’ll have direct and personal benefit. Again, the David Power book mentioned above was, for me, a great resource in this area.

Well, I’m sure there were other tips I could add, but these are the main ones that come to mind. Most importanly, it’s great to be back from six months of (virtual) cryogenic suspension ;)

Blogged with Flock