meyerweb.com

Skip to: site navigation/presentation
Skip to: Thoughts From Eric

Archive: May 2004

Migration Patterns

I’ve fielded a few questions about my experience migrating from Movable Type to WordPress, so I thought I’d address that subject for anyone else who might be interested.  I didn’t migrate from Movable Type.  I’ve never run Movable Type.  Okay?  That’s not saying anything for or against MT.  I’ve just never used it.

What I was using before setting up WordPress was a completely hand-built system where I authored entries in an XML format of my own devising, in which every entry for a given period (say, all of 2004) was sitting the same file.  Once I wrote a new entry, I’d pour the XML file through a set of XSLT scripts to generate the latest posts, monthly archive pages, and RSS feeds.  This was accomplished with some dirt-simple shell scripts I’d put together.  Here’s what the main script looked like:

#!/bin/bash
MONTH="$(date +%Y%m)"
echo $MONTH
xsltproc -o latest.html xslt/latest.xsl archive.xml
xsltproc -o rss20.xml xslt/rss20.xsl archive.xml
xsltproc -o rss091.xml xslt/rss091.xsl archive.xml
xsltproc -o $MONTH.html -stringparam chunk $MONTH xslt/chunker.xsl archive.xml

Anyone familiar with xsltproc will see what I’m doing at a glance.  For the rest of you, here’s a quick explanation.  The first xsltproc... line runs xsltproc using the script at xslt/latest.xsl (relative to the shell script) against the file archive.xml, writing the result to the file latest.html.  That’s it.  Nothing very fancy, but it worked well enough when I created the system.

Why did I abandon my loving crafed system for an installable package?  A combination of factors, any of which would not have been enough on its own.

  • The monthly archives were starting to get too heavy.  For example, the archive page for March 2004 is 88KB, and that doesn’t count any style sheets, images, or other external resources that would have to be loaded on top of that.  Back in the day, a month’s worth of posts would be maybe 15KB of HTML and text.  Heck, all of my posts from 1999 and 2000 total a whopping 32KB of HTML source.  My total posting from December 1999 through 2001 is about the same amount of data as the posts for March 2004.  So I needed more flexibility in terms of post archiving, which meant things like per-post archives, which I didn’t really want to have to try to support via XSLT.
  • I wanted to offer post commenting from time to time, and also have a system that managed pingbacks and trackbacks.  I had very little interest in figuring out how to implement my own commenting system, so weblogging software was my best choice.
  • An ability to search through the post archives was something I wanted to add, but for some reason I don’t want to do it through Google.  I’m still not sure why… I just don’t.

So why did I migrate to WordPress, specifically?  After looking at a number of packages, I decided that WordPress just fit me the best.  I still don’t like having to go through a Web interface to write posts, as I’ve gotten very used to authoring in BBEdit, but that was going to be a hurdle no matter what.  (And I do often write up a post in BBEdit before simply pasting it into the Web interface.)  Here are some specific reasons:

  • By default, WordPress generates valid XHTML files.  Thus, the process of adapting its code to generate the valid HTML I wanted was a lot less painful than it would have been with a package that doesn’t generate valid markup by default.
  • Similarly, WordPress is set up to handle site presentation via CSS, so it was a trivial matter for me to replace their default styles with my own.
  • I like that WordPress is not only open source, but users are encouraged to hack on it and share their hacks, which I’ve already started to do.  This was enough like a hand-built system to make me happy.  I think of it as a stock car that I can tune and tinker with to my heart’s content.
  • The new “Import via RSS” feature in WordPress 1.2 made sucking all of my back posts into the system really, really easy.  I just had to create a full-content RSS file containing every post I’d ever written—pretty easy, given that I had them all stored in XML—and then point the RSS importer at the file.  Well, two files, actually, but it still made the whole process very smooth.  It read the publication dates, categories, and everything else of note in a matter of milliseconds.  In fact, it was so easy I felt no regret about blowing away my test-site import and doing it again for the public site.
  • It certainly didn’t hurt that one of the primary forces behind WordPress is Matt Mullenweg, a fellow GMPG founder, so I knew that if I really got stuck I could ask him for help.

So that’s why I switched away from my home-brewed system and onto WordPress.  So far, aside from the occasional bouts of swearing at obscure MySQL and PHP syntax, neither of which has been anywhere near as migrane-inducing as XSLT syntax was, I’ve had no significant reason to regret the change.

Now you know… and knowing is half the battle.

The Fry Question

Kat has a theory: that French fries (chips, for you Britons) are basically the universal food, something that nobody really dislikes.  Try as I might, I couldn’t think of anyone I know who doesn’t like French fries.  So I put it to you: are you, or do you know, someone who genuinely doesn’t like French fries?  Before you post, consider the following qualifiers:

  • People who don’t like fried foods in general don’t count.  This has to be someone who genuinely dislikes French fries on their own merits (or, I suppose, a percieved lack thereof).
  • A person who is allergic to potatoes, or to any ingredient common to fry preparation, also doesn’t count.  We’re looking for people who are perfectly capable of eating fries, but don’t want to do so.
  • We’re completely ignoring people whose political ideology causes them to be upset with the French right now.

So how about it—are French fries really the universal food, or is there a counterexample?

(Addendum: if you do dislike French fries, please tell us what it is that causes you to dislike them.  Is it taste? Texture?  Smell?  Something else?  Inquiring palates want to know.)

Under The Influences

When I pointed to Nick Finck‘s mention of me as an influence, I somehow missed the fact that he was doing it in response to a post by D. Keith Robinson about his Web design influences.  Keith listed me as well.  And before I move on, I’ll join everyone else in congratulating Nick on the Digital Web redesign.

So—I’m still grappling somewhat with the idea that I’ve been a Web design influence to anyone, let alone for people like Nick and Keith.  A quick glance around will tell you I’m no designer.  If I wanted to pretend that I had an aesthetic, I could claim to be a Minimalist, but let’s be frank: my design skills are just not very sharp.  But that’s okay.  I’m content to help spread information about CSS and how to use it, thus allowing designers to get into using it more effectively and intelligently.

It’s an odd feeling to think of myself as An Influence (and that’s how the words sound in my head, at least in this context).  It’s much easier to think about the people who have influenced me.  So here’s my list of the people who have most influenced my activities, outlook, and career path over the past decade.  I expect this will read a bit like Message To The Messengers, but hey, I’ve been around for a while.  There are two things I’d like to make clear up front.  First, these are professional influences, not personal ones (although there is some overlap, of course).  So there are folks out there who have meant a great deal to me, just in other ways.  Second, these are more or less in the order they occurred to me.  No overt attempt at ranking should be inferred.

Jim Nauer

We were college roommates for a year, and not too much later on I worked for him at the University Microcomputer Labs (wall to wall Macintosh SE’s, baby!).  Shortly after that, I graduated from college and was hired by Library Information Technologies, so that made us co-workers.  All along, he’s been a friend.  In fact, he was over at our house yesterday afternoon to spend some time playing with Carolyn.  The Web-centric point of all this is that it was Jim who first dragged me in front of a Mosaic beta, getting me instantly hooked.  He pointed me to the HTML specification, and it was he who convinced me that well-formed markup was important when I tackled my first Web pages in late 1993.  Without that critical early guidance, I might easily have become a table-and-spacer hack, and never seen CSS for what it was.

Tantek Çelik

I’ve said before that Tantek is one of the sharpest thinkers I know, and that’s no less true today.  Furthermore, he’s someone who genuinely cares about doing the right thing and supporting the common good.  I always take his opinions and thoughts on the Web and its technologies seriously.  I may not always agree with him, but even in disagreement I find his insights to be invaluable.  In a way, it’s a pity that his name has come to be associated with the CSS hack he published, because that’s a tiny dot compared to the totality of his efforts on behalf of Web standards and Web design.  I wrote about some of that back when IE/Mac was discontinued.  If you’re a Web designer today, you owe Tantek more than you realize.

Todd Fahrner

Remember Agitprop?  If not, go read it; Todd’s observations on font sizing and styling are still relevant, and help explain a lot about how we got to where we are with font styling on the Web.  Remember the Box Acid Test, which eventually found its way into the CSS1 Test Suite?  That was him too.  You know DOCTYPE switching?  Todd’s idea.  When Todd retired from the Web, it was a sad day for us all, although I’m happy that he’s found activities that are more enjoyable for him.  If you’re a Web designer today, odds are you owe Todd far more than you realize.

David Baron and Ian Hickson

Or, as I sometimes think of them, The Wonder Twins of Mozilla.  Not that they look or act anything alike, and of course Ian works for Opera now, but anyway.  They pounded on me (via e-mail) until I finally understood the inline layout model, and were immensely helpful in making the first edition of CSS:TDG as good as it was.  They’ve both taught me a lot over the years.  They both put a lot of work into making Mozilla a great CSS rendering engine and making CSS itself a better specification.  They both care about standards.  It probably isn’t fair to lump them together, but that’s how I think of them.  (Probably because of their joint work on CSS:TDG.)

Jeffrey Zeldman

Jefferey’s a mensch.  I’m tempted to leave it at that, because what else matters?  And yet he’s also been an enormous force for good, helping found the Web Standards Project.  His writing is easy on the eye and ear, and it goes down smoother than silk.  He’s always trying to better himself and his understanding of how to do the right Web thing, sharing both what he knows and what he doesn’t know, and letting the rest of us learn along with him.

Steve Champeon

Anyone who’s subscribed to Webdesign-L for a while knows The Joy Of Steve.  Unless of course you annoy him, in which case he’ll tell you in detail.  That characterizes Steve himself, actually: he’s a man who cares a great deal about the details, and about getting them right.  If you’ve ever enjoyed the Color Blender, you can thank Steve for its existence, as it was his detailed explanation of how to calculate color midpoints that made me realize that, hey, it would be pretty easy create a tool to do that.  Furthermore, css-discuss is modeled in a great many ways on Webdesign-L, so his influence is felt there too.

Håkon Lie and Bert Bos

They were the lead authors of the CSS1 specification.  In the words of Stan Lee, ’nuff sed!

Chris Lilley

Chris passed on my early test suite work to folks at both Microsoft and Netscape, and was the person who extended the Working Group’s invitation to join as an invited expert.  His dry wit and genial outlook in WG meetings served as an example to me, and helped me mesh with the group much more smoothly than I might otherwise have done.  Fun trivia fact: Chris was moderator the session at WWW5 in which Peter Murray and I presented our paper on the Borealis Image Server.  Followup fun fact: Robert Thau, who presented before us about Apache, sat next to a guy in the audience and talked loudly with him throughout our entire presentation.

Doug Bowman

Doug took Wired News in the direction we’d all wanted to see a major site go, converting to standards-oriented design and making it look good.  Then he shared his experiences with the world, and showed us all how easy it could be.  Even I was surprised at how much was possible, and how much benefit it conferred.  It’s a big part of what got the “business case for standards” discussion going, because it served as a concrete example of the benefits.  I sometimes wonder if I’d have had the nerve to launch Complex Spiral Consulting if that hadn’t happened.  Probably not.

Dave Shea

The CSS Zen Garden—you knew that was coming, right?—opened the floodgates and buried, pretty much forever, the myth that CSS design was all the same, too boring, and too limited for anyone to take it seriously.  It’s hard to imagine now, but there was a time that we had to waste energy refuting those claims.  I’ll always be grateful to Dave for ending that debate, and his excellent work on sites like Mozilla.org has been a recent inspiration.

My final, but in no way smallest, person of influence must receive the honor posthumously: my mother.  For a listing of most of the reasons why, I refer you to the eulogy I delivered, but there’s at least one more reason that’s relevant here.

She taught me to believe in myself.

Mistaken For Help

While I was in Buffalo to conduct training at the university there, I discovered that I’d failed to pack any books or movies to while away the evenings.  Since I didn’t really want to pay $9.95 (or, you know, $12.95) for an in-room movie, I decided to head out to a Barnes & Noble and see what I could acquire.

After finding some classic (and massively discounted) Robert Silverberg and a Jack McDevitt novel I’d always meant to read, I headed back into the music-and-movies section to see what they had in the way of interesting DVDs.  Not much, as it turned out.  But while I was back there, within the space of about 45 seconds I had two different people ask me if I worked there.  The older lady who asked, upon hearing my negative, said, “Oh, I’m sorry.  You look like someone who would work in a bookstore.”

“I take that as a compliment, ma’am,” I said, and, smiling, headed toward the front of the store to purchase my books.

New WP Plugin

A small WordPress hacking update: I’ve added a new plugin, MW Get Post Info, to the WordPress Plugins and Hacks page.  This one could be particularly useful for those of you who are providing excerpt feeds.  As usual, share and enjoy.

Plugging Into WordPress

Although I’m now using WordPress for the “Thoughts From Eric” portion of the site, that doesn’t mean I’m using a default install.  Oh no.  I had to go hacking on the source of the system, even though I knowknew next to nothing about PHP (not that it seems terribly difficult to learn) and bend it to my desires.  No, not those kinds of desires.  The HTML it produced wasn’t suited to my needs, so I changed it.  I didn’t like the limitations of some functions, so I extended them.  I needed a more robust monthly calendar, so I added what I needed.  I thought the administrative interface could provide better visual feedback, so I hacked on it until I could do things like highlight activated plugins in varying shades of green.

Since WordPress now supports plugins, I figured I’d share some of what I’ve created in case anyone out there is interested.  Thus, I now have a WordPress Plugins and Hacks page in the Tools area of meyerweb.  The three plugins currently given there are the three I wrote first, and which work the way I wanted.  Each plugin has a page that documents the parameters it can accept, which is a good way to decide if a given plugin will be of any use to you or not.  I have a few more plugins that are almost, but not quite, ready for public release; hopefully I’ll have them sorted out within the next couple of weeks.

So feel free to check out my WP plugins, and to use ‘em if you like ‘em.

Blog Bits

Congratulations to everyone who worked on the Blogger redesign!  I’ll have to start showing it off in presentations as another great example of standards-oriented design.

The PHP problems I was having in the archives should be all fixed up now.  Sorry about that—I had some HTML that was somehow interfering with the PHP calls, although I’m not entirely sure how.  In the course of conducting training this morning, I also discovered that I’d neglected to add alt attributes for the two RSS-feed buttons.  That’s fixed now too.  Apparently this was my day to find broken bits on the site, but at least they were bits I could fix.

Nick Finck, in citing his inspirations, had this to say about me:

One of the first presentations I ever heard Eric do was “CSS For Anarchists” and it really got me to think about CSS on a whole new level. Since then Eric has been a constant source of inspiration for me when it comes to CSS. As crazy as some of Eric’s ideas may seem, there is really some logical reasoning behind all of it.

Hey, whaddya mean crazy?!?  All my ideas are totally sane and rational.  It’s the rest of the world that’s nuts.  Now excuse me while I go adjust the geometry of my tin foil hat.

The “CSS For Anarchists” presentation was interesting for me too, as I was giving it at the same time President Clinton was giving a speech one floor directly above me.  I still wonder how many background checks were run on me, and whether they turned up anything good.  Because if they did, I’d like to know what.

Media Mirth

If you’re in the mood for some goofy humor, I’ve updated my CNN and general-media humor pages.  The entries on both go least to most recent, just so you know.

I will say one thing about random-dictionary spam: it can be amusing and educational.  I got one today titled “proteolytic giggling.”  Once I’d looked up “proteolytic” and had it lead me on to “proteolysis,” I was giggling pretty severely myself.  Which is good, because it helped cool off an energetically simmering political rant.

May 2004
SMTWTFS
April June
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

Archives

Feeds

Extras