The Importance of XHTML Validation

When will I ever learn?

Miraz has told me again and again — validate your pages after making changes to your WordPress theme templates. She even advised readers in our book, WordPress 2: Visual QuickStart Guide. And every time I validate, I find errors, proving that it’s a step I really do need to take.

Yet I continue to skip this step when I tweak my theme’s template files on every single blog I run.

This morning, I got an e-mail message from someone named Tine who wrote:

I’m completely new to WordPress but found your site because of the book you have made and was curious.

Are you aware that your blog don’t look good in Explorer 6? Some of the text to the left is cut off.

I use Explorer 6 on XP Pro and 1024×768.

Uh-oh.

I fired up my PC and loaded up my home page in Explorer 6. The situation was worse than Tine reported. What appeared did not look much like my site at all. And in the status bar, Explorer was politely telling me that page had errors but didn’t offer any way to find out what they were.

My first instinct was to panic. But then I remembered the XHTML validator at http://validator.w3.org/. I ran the page’s URL through the validator and settled down to find and fix the 110 errors it found.

Sheesh.

The main culprit in this case was some code I’d inserted into my post.php file to display RSS links beside category names in each post’s header. This rather slick piece of coding, which I was pretty proud of, contained the dreaded unencoded ampersand error. That means I’d included & in the code when I should have included & in the code. That error was all over the place, but Explorer seemed to be choking on it in the new code. When I fixed its first occurrence and reloaded the page in Explorer, the page appeared fine, although the status bar smugly reported that there were still errors in the document.

Other problems included

    and tags without

  • and tags. Oops. And

    tags without tags. (It appears that ecto was causing that problem in the way it codes Technorati tags. Good thing I’m not using tags in my posts anymore.) Of course, all my Amazon.com book cover links were missing alt attributes. And some of my rotating ads used IMG instead of img for coding. The list goes on and on.

    Of course, if I’d been validating the XHTML after each template change as Miraz recommends, I would have caught these errors as I introduced them. I wouldn’t have spent my Sunday morning debugging code.

    Have I learned my lesson? I think so. At least for a few days.

    Link Bait?

    Unintentional, perhaps, but very effective.

    I’m getting ready to upgrade my blog-based Web sites to WordPress 2.1 from WordPress 2.0.4. It’s a big task for some sites and the biggest hurdle I have to jump is the plugin compatibility hurdle. This site and wickenburg-az.com rely on plugins for many of their features. If a plugin were to unexpectedly stop working, the sites could be brought down by PHP errors. This is not something I want to deal with, so I started thinking about the plugin situation. And, as I often do when I’m thinking of something that might benefit other people, I wrote an article about it and published it here.

    Does that make the article “linkbait”? I suppose it does. But I’m willing to accept that label if it’s used in the context of “simply compelling content.”

    It took me about an hour to write the article. (Those of you who know me and my work know that I can produce original material at often alarming rates.) It was all fresh, out-of-my-brain stuff, inspired by the WordPress upgrade instructions and compatible plugins list, which I linked to in the article. It was better organized that a lot of the posts here — especially the long, rambling ones about flying and the things that go on in my life — and it included headings and lists to make it easier to read.

    It hit the site at 7:24 AM MST. Within two hours, it had been linked to by Weblog Tools Collection (thanks!) and the article with the link just happened to appear in the Dashboard for all WordPress users. That’s when all hell broke loose. Visitors swarmed over. The article collected 10 comments and pingbacks in a matter of hours. The pingbacks, in several languages, brought even more visitors. At one point, I had 29 visitors (including bots) online and 19 of them were reading that one article.

    Now that might not seem like a big deal to many of you, but it’s a huge deal here. My daily visitor count, which averages about 250 per day, jumped to almost 900. And my page hit count soared to over 1250 from a daily average of 400-500. Whew! And the trend is carrying over to today; at 8 AM, I’ve already reached my daily average counts.

    What’s So Special about This Article?

    So the question remains: why has this one article been such a boon to the site?

    In looking at the article and how it differs from other site content, I’ve come up with the following:

    • The article was 95% original. I based it on my own experience and knowledge rather than material I’d found elsewhere. This was new content — not something I read and regurgitated here. And given the 1/9/90 rule discussed earlier today, only 1% of what’s in blogs is original content.
    • The article was timely. WordPress 2.1 had been out for less than 3 days when I wrote it. (Oddly enough, two commenters said they wished I’d written the article sooner. Sadly, I have neither the time nor the inclination to work with software under development these days, especially when that software is based on a computer language I hardly know.)
    • The article provided valuable information. Anyone who jumps blindly into a major WordPress upgrade deserves all the grief he gets. To me (and apparently others), the plugin issue is serious business. My article explained why it was serious and listed things that should be done for a less troublesome upgrade.
    • The article was well organized and well written. Sure, it’s easy for me to say — I wrote it. But I can look at all of my work objectively and I can say without a doubt that among my blog posts, this article was one of my better efforts. In fact, if this post wasn’t so time-sensitive, I would have submitted it to Informit.com, which pays me to write for them. (If I had, however, it would not have reached the Web for at least a month. So yes, I gave up a few hundred bucks, but WordPress users need this information now and I didn’t want them to wait.)
    • The article was well presented. I’m talking here about readability, which I discussed in another blog post earlier this month. This post included headings and lists, which help break text into bite sized pieces and make it more scannable.

    It’s gratifying that the article was found by a “WordPress authority” who found it worthy to link to. I wouldn’t be writing this post if I didn’t get the support of the folks who linked to it. They brought visitors to the article, pumping up my daily numbers accordingly.

    Is it Linkbait?

    Does that make the article “linkbait“? I suppose it does. But I’m willing to accept that label if it’s used in the context of “simply compelling content.” After all, I didn’t write it with the goal of getting lots of links and readers. I wrote it because it was on my mind, is a topic my readers claim they’re interested in (33% of those who took the poll said they’re interested in blogging), and is related to a topic I co-authored a book about. The article was forming in my brain — why would I keep it there if others might find it useful?

    That said, I’m not one bit sorry that it has attracted all the attention it has. It’s given me a lot to think about — and more to write about here.

    Earning Money with Your Blog

    Without trashing it up.

    Before I dive into this topic, I want to make it clear that I really hate the way some Web sites and blogs are so covered with advertising that it appears that the only reason the site/blog exists is to get visitors to click advertising links and earn money for the site/blog owner. You know what sites I’m talking about. It’s pretty obvious when advertisements take up more space in your browser window than the actual content you came to read.

    (I’m actually involved with one of these sites. It’s a long story that’s still evolving. I’ll tell you more about it in a future article here. But my failure to provide the URL in this note should give you the idea that I’m not very proud of it.)

    All that said, if you publish a Web site or blog and you’re not doing anything to monetize it, you’re leaving money on the table. And that point really hit home when I read that one of the bloggers I follow makes over $15,000 a month from Adsense revenue alone. Sheesh.

    It seems that I need to walk a fine line between keeping my site free of advertisements (100% content per page, no revenue) and trashing it up with all the affiliate program and other advertisements I can get my hands on (25-50% content per page, some revenue).

    After all, this site’s goal is not to make money. Sure, one goal is to promote my books and other work and support readers so they buy more books. And to attract new readers who buy books. There’s money there. But my other goals are to sound out about the things on my mind and take notes I can consult in the future about the things I do and see.

    But can you imagine how much time I could spend doing, seeing, and blogging if my site brought in $15K/month?

    (To be fair, you must consider the costs associated with maintaining such a site. If only 1% of a site’s visitors react to an advertisement by clicking on it — and that’s probably a high estimate — imagine how many visitors you need to crank up $15K of Adsense earnings. We’re talking thousands of page hits an hour. Those visitors eat up bandwidth at an alarming rate. Bandwidth costs money. So a bunch of that revenue is probably eaten up by hosting costs.)

    One of the things that drives me is my own feeling towards advertising-heavy sites. I find them distasteful and I avoid them. That makes me think that if I filled my site with ads, people might use that as an excuse to stay away. Less visitors should mean less revenue, right?


    Well, last week I started integrating Adsense ads into my sites. I’m trying to do it tastefully, with ads in various positions, depending on the site and the type of page. You may have noticed them. For the most part, they’re near the bottom of pages — which is not the recommended location to get clicks. wickenburg-az.com has a link unit across the top of the page, right beneath the header image. It’s color coordinated, so it fits in. There are text links at the bottom of single pages (that’s a page with a single article and all of its comments) on this site, and other text links in the sidebar for the Home and Category pages. wickenburg-az.com has a few image ads, which really concern me — some of them can be really tacky, with flashing graphics and obnoxious images. (I’m personally offended by some of the graphics in dating ads, like the ones you might see on Slate.com. They’re using women to sell sex.)

    I also set up Adsense channels, which is another topic I need to write about here. They help me see where the revenue is coming from when I look at Adsense reports. Sure enough, my revenue stream took a big jump when I added the ads.

    LinkShare  Referral  PrgToday, I set up LinkShare, an affiliate program that enables me to display all kinds of ads. Unlike Adsense, however, people have to buy something after clicking the link to earn me money. The percentages are higher, but what are the chances of someone actually clicking and buying?

    With LinkShare, you choose the companies you want to represent and apply. I chose a bunch that I thought would interest my blog’s visitors. A bunch automatically accepted me. One declined me, but when I questioned them, they said it was an error and they approved me. Another declined me because I have no dedicated shopping areas on my site. In other words, they want sites with lots of ads. I’m waiting for a bunch of others.

    Then I set up the WordPress Ad Rotator plugin to display a single 125×125 pixel “button” near the bottom of the Sidebar on all pages of this site. I had to manually copy and paste the code for every single ad I wanted to use. It took a long time and the task was boring and tedious. But it does display the clickable ads.

    I could get fancy and set up the rotations based on categories, but I’m keeping it simple right now. I just want to see if this actually does earn revenue.

    So that’s where I stand right now: ads from Adsense and LinkShare.

    I’ll report on my progress when I start getting some reports from LinkShare. I’ll also put together that Adsense Channels article one of these days. I think it’s a great tool for seeing which pages and types of ads work best.

    Only 2% of Web Users Use RSS?

    Depressing but not surprising.

    A Reuter’s article titled “Untangle the World Wide Web with RSS” by Robert MacMillan explains what RSS is and goes on to discuss why so few people use it:

    So, why are so few people using it?

    Only 2 percent of online consumers bother, according to Forrester, and more than half of that group is 40 years old or younger.

    For starters, the name is deadly for attracting “average” Internet users — people who use the Web and handle e-mail, but quail at inscrutabilities like “service-oriented architecture” and “robust enterprise solutions.”

    Then there are the orange buttons you find on Web pages. Clicking one produces a jumble of computer codes. It’s hardly the path to popularity.

    I have my own thoughts about this. After all, I’ve only recently developed my own way to use RSS effectively after several false starts with the technology. Here’s what I think (for that it’s worth):

    • Too many feeds have excerpts only, thus requiring you to go to the Web site to read the whole article. I admit that I’m guilty of setting up my feed the same way. (Two reasons: some of my posts are so long that they simply don’t “fit” in a Feedburner feed (which has a limited size) and many of my posts are format-intensive, making them less easy to read/understand in an aggregator window.) I’ve since resolved that issue by using my aggregator as a sort of “index” to new articles, allowing the ones I want to read to load in Firefox in the background while I browse new topics, and reading them when I’m finished browsing. That’s my technique, but it might not work for everyone.
    • Posts aren’t always easy to read in the RSS aggregator window. Much of a site’s formatting is lost — at least in my reader, Endo) and sometimes that formatting helps readability.
    • Not everyone likes to learn how to use new software that might make them more productive. I’m like that. After wasting so much time learning software I wound up not using, I’m very hesitant to learn new software I might not use either. That’s why it took me so long to get an offline blog editor, despite Miraz’s glowing praise about MarsEdit. (I wound up with Ecto; go figure.) And for the record, she was right — how could anyone maintain a WordPress blog without an offline post editor?
    • Some sites have simply too much content. I subscribed to RichardDawkins.net for a full 36 hours before I was overwhelmed with the number of new posts. While I find his area of expertise interesting (atheism), I simply cannot devote that much time to it. This, by the way, is the same reason I don’t subscribe to mailing lists.
    • If you don’t check your RSS aggregator regularly, you can easily be overwhelmed with the number of new articles to review/read. This is what caused my first few false starts. I solved that problem by deleting all of the preprogrammed subscriptions and adding just the ones I found and liked. (Which is why an article I wrote on Monday asked for suggestions.)

    And, of course, I agree with the Reuter’s article author that RSS simply isn’t user-friendly enough to attract less experienced computer users. Clicking an RSS link or “orange button” doesn’t subscribe you to anything. It just displays the feed’s source code on the screen. How can that make any newbie comfortable?

    But, given time, I think RSS will catch on and attract more users. It has to. With all the content out there, anyone serious about keeping up has to have a good tool to get all the links and summaries in one place. It finally sucked me in.

    And, by the way, I now know why I don’t read the news on Reuters.com: they split each article up into so many pages that you spend more time clicking links for the next page than actually reading.

    Article Hits

    An aberration?

    I don’t want new readers to this site to think that I’m consumed by stats. I’m not. I just find stats very interesting, whether they’re baseball stats, voting stats, Web site stats — or just about any kind of stats you can think of.

    That said, I noted another interesting thing related to stats on this Web site. I recently installed a WordPress plugin called Readers Post by Stefan Groenveld. The plugin has several features that track when and how many times a post has been read and I’ve been implementing them one by one. The other day, I “turned on” the reader count feature, which displays the number of times a post has been read (since the plugin was activated). I use this in the sidebar to list the most popular articles and in The Loop to display a reader count at the end of each article.

    The result, of course, is more stats.

    What’s fascinating to me is how many times the top post has been read. Vancouver Waterfront (1643 readers) has almost twice as many readers as the second most popular post, On Blogging (874 readers). (Remember, the count started on November 15, 2006.) This baffles me because the Vancouver post is a short “About the Photos” article that displays a nice (if I do say so myself) photo of the Vancouver waterfront and tells a brief story about my 5-day stay in that very nice Canadian city. There’s really nothing terribly interesting in the post, only one photo, and not very much info for readers to take away with them.

    So why is the post so darn popular?

    At first I thought it might be Google. For some reason, my posts seem to rank very highly on Google. So I did a search for “Vancouver Waterfront” to see where the article placed. It placed at the top of the second page. Not very good placement, but perhaps enough to get some hits from Google.

    I then attempted to go through my server log, which is not an easy task. I don’t use any log analysis software on my server, so I have to look at the logs prepared by GoDaddy.com, which cover all of my sites together. There were a lot of lines. I gave up.

    I then looked at the logs prepared by W3Counter for my site as part of the counting service. I went to the Search report to see if lots of people had searched for Vancouver or Waterfront. The answer was no.

    At this point, I’ve run out of research options. I’ll probably never know why the post is so popular. But it will be interesting to see how long it takes for other posts to surpass it in reader views. It can’t possibly stay at the top of the list forever.

    And this brings up another question. Is it good to have so many stats? After all, I just wasted about 45 minutes researching this particular issue and writing about it. When does information become too much information?