March 20, 2007

Redesign (or repair) in progress

Filed under: — 3:54 am

I upgraded this site to the latest WordPress, but unfortunately my ancient template has finally been stretched to the breaking point. This site will be using the ugly default WordPress template for a few days until I straighten things out again. Thanks for your patience.

Update 3/3/2007: Fixed. WordPress kindly changed several things about how templates work since my last update. More on that later.

December 18, 2006

Whatever happened to online etiquette?

Filed under: — 2:56 am

At the New York Times, David Pogue asks Whatever happened to online etiquette? and comes up with a list of reasons for the decline of this etiquette: anonymity, cries for attention, parents failing to teach social skills, young people spending too much time online, and even the current political climate.

Pogue is one of my favorite writers, and I hate to see him become the latest to take up the net’s equivalent of an Andy Rooney “kids these days” rant. I agree with Gina at Lifehacker—David couldn’t be more wrong. Here are the facts as I see them:

1. People are jerks. Not all of them, but many. What Pogue calls “online etiquette” never existed—or if it did, it was just like regular etiquette: something some of us aspire too, and others ignore and mock. People were jerks on Bulletin Board Systems in the 80s and on USENET in the 90s, and people are jerks on web forums now.

2. More people, more jerks. I’ve watched many a USENET newsgroup and web forum grow from a friendly community of 10-20 people to a semi-friendly community of 100 to a cruel, vindictive pile-on of 300 or more. It’s not that large groups can’t work—just that the larger the group, the more controls you need to keep it constructive. When a group outgrows the controls in place, it fails to be a community.

3. Anonymity isn’t the problem. While people have been arguing since the 80s about the lack of face-to-face communication sending common courtesy out the window, people in online communities have proven time and again that it doesn’t have to be that way. I’ve seen anonymous communities that work just fine, and plenty of non-anonymous ones that were overrun by jerks.

4. Maturity matters. One thing Pogue is probably correct about is that sometimes younger people have a greater tendency to be jerks than those a bit more mature. This isn’t an absolute rule, but obviously most of us become more graceful at dealing with society—online or offline—as we gain experience. Sites that have a younger audience need more controls to stay on topic. Needless to say, some younger folks are more mature than some older folks. That’s why I emphasized maturity rather than age.

5. Content inspires community. Quoting Gina’s comment at Lifehacker:

Also, netiquette in public forums has a lot to do with the content around which the community is centered. Lifehacker’s posts set out to help folks, so in kind, our readers want to help us and each other back. Digg is a popularity contest of oneupmanship. Gawker is all about making fun of things, so its readers mock each other and it right back in the comments. Karma’s a boomerang.

The secret to healthy online communities is probably some combination of social responsibility, consequences, and a feeling of community, all of which depend on the size of the site, its content, and how the community is controlled. Are there moderators? Do they deal quickly and fairly with problems? Are there automatic controls to prevent some of the more obvious problems? Or are the moderators so outnumbered that they represent a tiny voice among the thousands? When Pogue looked at digg—an explosively popular, poorly moderated “peanut gallery” where the value is in the links and their rankings, and the discussions rarely add much value—is it any wonder his worst fears were confirmed?

What Pogue has probably noticed is that, as his writing presence grew from a tiny thing read only by techies to a mass-audience phenomenon, he’s getting more and more emails and comments from jerks. It’s easy to look at this and think that people everywhere are losing their manners—as my quotation site grew from zero visitors to hundreds of thousands, I’ve had the same thoughts more than once. But now that my wife and I run several different sites, we’ve learned that the smaller ones have less jerks, and different sites attract different sorts of audiences.

Also, as I’ve run my biggest site for 12 years, I’ve seen good and bad behavior come and go in cycles. If I had to make a guess at an overall trend for today, I’d say it’s positive. At 150,000 visitors a day the site still attracts plenty of jerks, but I’ve been surprised at people’s good manners lately. Even most of the people who dislike the site are communicating it with better manners these days.

Don’t take my word for it, or David’s. Find some good communities and stay away from the bad ones. Give humanity the benefit of the doubt. If you run a site, enjoy and encourage the valuable comments from visitors and ignore the jerks. I for one will wait until I’m a bit older before I start ranting about how much nicer people were in “the old days.”

[via Lifehacker]

November 19, 2006

Technorati’s link count widget

Filed under: — 3:59 am

I’ve never been a big fan of the trackback system. Its use is confusing and inconsistent among weblogs, and the group with the largest motivation to take advantage of it are spammers. Frankly, I’m surprised it’s still so widely supported—trackbacks are enabled on all posts by default in the latest WordPress and even on hosted wordpress.com weblogs.

To avoid hundreds of spam trackbacks a day—which cannot be reliably filtered, period, no matter what anyone says—I don’t allow trackbacks on any of my sites.

Meanwhile, Technorati has released a link count widget for weblogs. This is a very easy way to include a link that displays “blog reactions,” or posts elsewhere linking to the current post. You can see it at the bottom of this post next to the “Comments” link.

This is an ideal replacement for trackbacks—it keeps the links at Technorati, which has professionals to deal with spam, rather than on my sites, and it serves the purposes of enabling discussion across weblogs and enabling weblog authors to brag about how many links they’re getting. It would be perfect if not for two flaws:

  • If there are no links to a post, it displays a generic “View blog reactions” link, which appears not to be customizable. This is unfortunate for those of us who have less popular weblogs, since the link is usually useless. I’d much rather have the link disappear until there’s a “reaction” to link to.
  • Technorati’s database is a jumbled, inconsistent mess that cannot be counted upon to reliably report links. That’s a topic for another day, though, and I’m hopeful that they’ll improve with time.

Despite these issues, it’s still better than Trackback. Goodbye, Trackback, and good riddance.

August 22, 2006

Post-Digg Analysis

Filed under: — 11:02 pm

Traffic graph

I had my first experience with exposure on Digg the other day when my article on The Gadgets Page, 10 ways to make your digital photos last forever, hit their front page. Here’s a bit of analysis of the impact it had on the site.

You can see in the graph above that The Gadgets Page previously had about 900-1000 visitors a day. We hit the Digg front page at 10:30PM on Tuesday, August 15th. We had nearly 7000 visitors by the end of Tuesday and a whopping 30,949 visitors on Wednesday. Traffic tapered off after that, but we’re still seeing more visitors than we used to: 2196 on a normally quiet Sunday, and 2430 (not shown in graph) on Monday the 21st.

The impact on our server was minimal. I assume a Digg at 10:30PM has a less dramatic effect than one in the middle of the day. Our server is built to handle the insane traffic of The Quotations Page so it was only subjected to about a 40% increase in traffic Tuesday night.

Here’s a look at the various links we gained and how many visitors they sent us:

  • Digg: We hit the front page at about 50 diggs, and quickly rose to 600 or so. Now there are 1880 diggs total. Since the incident, we’ve had 27,699 total referrals from digg.com.
  • Problogger: Darren’s group writing project was our first link and probably led to the Digg attention. We only had 39 visitors directly from Problogger, but there were definitely some influential types among them.
  • CNET: They linked to us in this post, probably after seeing it on Digg. 3559 total visitors.
  • del.icio.us: Bookmarked by 272 users, and a brief appearance on the Popular page. 2014 total visitors from del.icio.us.
  • Lifehacker: We appeared in this post shortly after the digg. (I had submitted the link to them, as had Darren at Problogger.) We had 2368 total visitors from Lifehacker.
  • Other links: According to Technorati, we have 77 new links from weblogs to that article, bringing our total number of links to 143—in other words, we gained more links from this single incident than from the last year of regular posting. Along with the ones mentioned above, highlights included links from BBSpot (961 visitors) and MSNBC (465 visitors).
  • Ad revenue: About $20. Sudden spikes in traffic are not very profitable.

As I’ve seen others mention, Digg sends you a storm of traffic that quickly dissipates. However, I was pleasantly surprised at how many permanent links we gained in the process, and it looks like our number of regular readers has more than doubled. I look forward to more fun with Digg in the future.

July 12, 2006

Bloglines Publisher Tools

Filed under: — 1:55 am

I’ve long complained about the fact that Bloglines lists several feeds when you try to subscribe to a WordPress weblog. This isn’t their fault, of course—it’s because WordPress offers a bewildering array of feeds by default, and that in turn is an indirect result of years of bickering among RSS standardistas. But that’s another story.

At any rate, the folks at Bloglines have come up with a solution to the problem. You can now claim feeds in a process similar to Technorati’s. Once claimed, you can mark all but one of the feeds as duplicates, so that only your One True Feed is listed when people try to subscribe.

Two caveats:

  • The feed you choose as “Not a duplicate” must be the first one Bloglines lists for the site. Otherwise, it won’t list ANY feeds when someone uses their bookmarklet to subscribe. I’ve verified this on two of my weblogs, but it may not be consistent, so some testing is called for.
  • I’m not sure what happens when existing subscribers are subscribed to a feed you mark as a duplicate. In one case, I was still subscribed to an empty feed, and in another, the feed disappeared from my subscriptions. Proceed with caution if you have lots of subscribers.

Aside from that, it works well. You can also edit your feed’s description, image, and favicon for use on Bloglines, and specify whether the feed will show up in searches. Nice work!

[via Lifehacker]

March 11, 2006

At SXSW this week

Filed under: — 9:52 am

If you’re wondering why I’m not posting much this week, it’s because I’m at the sxsw conference in Austin. On the other hand, if you’re wondering why I haven’t posted much the last two months, I have no excuse.

I’ll update this today with some actual detail about what I’m seeing here, hopefully.

February 18, 2006

I’m sick of CAPTCHAs

Filed under: — 3:14 am

?????? <br/> Quick, what does the image above say?

If you answered jhQH4f, you’re wrong. jnQH4f? Wrong. jhQ44f? JhQA4f? Also wrong… at least according to the forum that required me to enter the correct code to prove that I’m not an evil spam-generating hacker robot. Apparently I’m more of a robot than I thought, because I have no idea what that fourth glyph is. I tried about 5 other combinations before giving up and reloading the page a couple of times until I found one I could read.

This is, of course, a CAPTCHA test, something that has lately joined spam, pop-up ads, browser bugs, and people who use the word “blogosphere” on my list of Things That Annoy Me About the Web. It’s supposed to prevent spammer scripts from registering, but I’m guessing tests this difficult prevent a good number of honest-to-goodness humans from accessing sites.

Coincidentally, a few minutes before running into this, I read Seth Godin’s post about running into the same problem at Ticketmaster’s site. At least I’m not alone.

Attention webmasters: If you want users to sign up, please don’t use a CAPTCHA system in your site unless it’s really easy for ordinary people to read without pulling the graphic into Photoshop for sharpening and enlargement. If you don’t want users to sign up, you could just remove the registration page rather than torturing people with one of these MENSA-level CAPTCHAs. Thanks for your time.

December 31, 2005

2005: A recap

Filed under: — 7:08 pm

As the year ends, it reminds me of what I’ve accomplished in 2005, and what I haven’t accomplished. Here are some highlights:

  • January 1, 2005: Laura and I launched a fitness weblog, Starling Fitness. It’s now quite popular, with 1400-1500 visitors a day, and has built enough of a community that we get comments often.
  • March 3, 2005: Facing unprecedented levels of traffic, I moved most of my sites to a new dual-Xeon server. It handled the beginning-of-the-school-year rush nicely, and hopefully will last another year or so.
  • March 31, 2005: Darren at Problogger published an interview with me, probably the first time I’ve been interviewed.
  • April 12, 2005: I wrote my first WordPress plug-in, View Future Posts. It was well-received and the announcement has over 40 comments. I’ll be releasing an updated version soon.
  • May 17, 2005: I launched a new weblog, Sequenced Notes, focusing on making music with computers and electronics. That one’s mostly for fun, and it still doesn’t have much of a readership, but I’ve enjoyed writing about my musical hobby.
  • May 19, 2005: Google launched their Personalized Google feature, and included my Quotes of the Day as one of the default components. This has brought an extra 100,000+ visitors a month to the site and is now responsible for just over 5% of its total traffic.
  • July 21, 2005: We launched The Quotations Weblog as part of my most popular site, The Quotations Page. Thanks largely to Laura’s regular writing, this weblog now gets about 1200 visitors a day.
  • September 4, 2005: We launched the new WordPress-based version of The Gadgets Page. It’s grown rapidly since then, now seeing about 800 unique visitors a day.
  • November 7, 2005: The Quotations Page had its best traffic day ever, with 124,687 unique visitors. The holidays slow things down, but I expect to beat that record in January.

Now that I list it all out, it’s been a busy year, and I haven’t mentioned the book project that’s kept me busy the last couple of months. I’ve missed out on a few accomplishments—like my goal of posting here once a day—but all in all, 2005 was a pretty good year. I’ll save my 2006 goals for the next post.

November 11, 2005

WordPress security notes

Filed under: — 12:13 am

There are rumors about a Linux worm that may affect WordPress, but the WordPress Development Weblog says not to worry – “WordPress 1.5 or higher is safe.”

While that’s true as far as this particular worm is concerned, there is definitely at least one exploit in the wild that can affect WordPress 1.5.1 and earlier. I’ve seen some attempts at using this exploit on my sites before I upgraded to 1.5.2. Don’t assume your WordPress installation is secure unless you’ve upgraded to 1.5.2.

October 12, 2005

Comment spam gets personal

Filed under: — 3:24 pm

I’ve been dealing with comment spam for years here and on other weblogs (my software blocks about 400 a day) but now I’ve had a chance to deal with another aspect of this plague. A couple of people emailed me yesterday to tell me they’d received weblog comment spam that included URLs pointing to The Quotations Page. Sure enough, I found a couple of hundred of them in my own spam filters today.

The comments are the same “enjoyed your site” gibberish as usual, except that they include URLs of legitimate sites. Along with my quotation site, URLs included those of several other popular quotation sites and a couple of Linux-related sites. I didn’t find a single suspicious URL that could be that of the spammers, so this appears to strictly be an attempt to victimize popular sites.

The spam seems to use anonymous proxies or compromised machines, because it uses a wide variety of IP addresses, mostly in third-world countries. I can only guess their motivations:

  1. To discredit popular sites with “spam” links and attempt to damage their rankings in Google
  2. To get whitelisted by appearing as a legitimate comment (not likely, but maybe the legitimate site URLs will confuse some webmasters)
  3. To pollute spam URL blacklists by getting popular sites into them
  4. To further confuse the whole comment spam issue by making it look like “good” sites engage in it

Number 3 looks like the only thing that has any possibility of working, and in general I doubt this will accomplish anything at all. It’s still very annoying, though—just like running a mailing list, here’s another way that running a popular site means having to deal with people who think you’re spamming them from time to time.

September 13, 2005

Speeding up WordPress administration

Filed under: — 11:45 am

WordPress is a very efficient, resource-friendly software platform that can handle lots of traffic without slowing down or putting too much load on your server. Unfortunately, while your readers may enjoy the speed, two default settings might be making WordPress very slow for you:

  • The Dashboard’s display of RSS feeds
  • Pingback attempts when posting

Changing these (or working around them) can make your experience as a weblog writer much more pleasant. Read on for details.

(more…)

September 4, 2005

The Gadgets Page 2.0

Filed under: — 12:23 am

I launched The Gadgets Page in late 2003. I had high hopes for it at the time, imagining I’d be writing tons of in-depth articles. Instead, the design and the content spent the last year or so stagnating. I’ve decided to make an effort to revive the site:

  • I’ve turned it into a weblog—it was essentially a weblog before, but all of the content was in the form of longer articles, and I rarely have time to write more. Allowing room for shorter links and articles as well as longer ones will let me update the site frequently.
  • The site was running some homebrewed CMS software. It is now running WordPress 1.5. Weblog software didn’t really fit my focus for the site back in 2003, but WordPress has grown since then, and I’ve learned to work with it. This will allow me to focus on writing, not programming.
  • I’ve created a new design for the site. It’s minimal, but it works and it’s a table-free CSS layout, unlike the previous design.
  • Matthew Strebe (of SlashNot) and I wrote all of the earlier content. My wife, Laura, who has been writing like clockwork at Starling Fitness, will be joining us to provide regular posts.
  • Since I’m trying to develop a daily writing habit, I’m setting a goal of writing one post per weekday on The Gadgets Page, starting Monday.

So, I’ve added a gadget weblog to my rapidly growing empire of multiple personalities. I have no intention of competing with Engadget or the other big ones—I can’t even keep up with reading them—but I’m looking forward to writing about gadgets, and I hope the site will evolve a unique voice and audience. Time will tell.

August 25, 2005

Why I don’t sell text links

Filed under: — 11:45 am

I wrote about people asking me to sell them text links to exploit my Google PageRank a couple of years ago. Since then the practice has become much more legitimate in some circles, but recently there’s been some controversy when it was discovered that a couple of technical sites were selling text links. Most recently O’Reilly’s under attack for selling links for things like “cheap hotels” on some of their sites.

Tim O’Reilly’s response is open and honest, and he’s still debating over the ethical issues. Greg Yardley responds by saying that search engines aren’t public utilities, and thus this is a business issue more than an ethical one:

It’s time to stop thinking of search engines as a common resource to be nurtured, and start thinking of them as just another business to compete with or cooperate with as best suits your individual needs.

I tend to agree—there are moral arguments both for and against this, and Google is a business like any other. But the most informative text in this whole discussion comes from Matt Cutts, a Google engineer who responded on Tim’s post:

Tim points out that these these links have been sold for over two years. That’s true. I’ve known about these O’Reilly links since at least 9/3/2003, and parts of perl.com, xml.com, etc. have not been trusted in terms of linkage for months and months. Remember that just because a site shows up for a “link:” command on Google does not mean that it passes PageRank, reputation, or anchortext.

I don’t think Google has ever been this specific about pagerank in public. He’s confirming that O’Reilly’s sites have been penalized for months—they don’t pass PageRank. This makes the advertiser’s links worthless, and worse, the links to other O’Reilly sites aren’t creating the value they should. This isn’t new—phpbb.com has been selling pagerank for years, and there’s evidence that their site no longer passes pagerank.

[Aside: Matt’s listing of “PageRank, reputation, or anchortext” as if they’re three different internal ranking schemes used at Google is very intriguing.]

So why don’t I sell PageRank on my sites? First of all, I want to pass it on to my own sites. Second, messing with things like this can leave you with a site that doesn’t pass PageRank at all, and when you’re trying to build a network of quality sites, that’s the last thing you want.

July 21, 2005

New site: The Quotations Weblog

Filed under: — 8:43 pm

We’ve finally added a weblog to our massively popular quotations site. At The Quotations Weblog my wife Laura and I are writing about quotations and related matters.

The site (The Quotations Page) has actually had a couple of semi-weblogs on it since 1997: A once-regular “quotes of the week” feature and the site updates on the home page. I’ve imported all of those into the new site, and now it will be much easier to post regularly.

This weblog runs the latest WordPress, with a couple of quirks:

  • I’ve crammed WordPress into the site’s existing (table-based HTML 4.0 transitional) layout. The whole site including the weblog will be moving to a CSS-only layout soon.
  • Since this will be an ideal spam target (page rank 7) we’ve required people to sign in to leave comments. Since we have an existing phpBB forum, it detects whether you’ve signed on to the forum and allows you to post without a separate WordPress sign-in.

Here’s something interesting: I launched the weblog yesterday with little fanfare, simply adding “Weblog” to the site’s navigation bar. Yesterday there were approximately 66,000 visitors to the site, and the number of visitors to the weblog was 394. So apparently merely having a weblog isn’t getting this mainstream audience excited, and we’ll actually have to promote the thing…

July 20, 2005

WordPress plugin: Enhanced post management

Filed under: — 10:00 am

I’ve written another quick WordPress plugin. The Enhanced Post Management plugin adds three optional features to the Manage Posts page in the WordPress Administration interface:

  • Adds the day of the week to the post times (The seconds are removed to make room. Do you really need to know whether you posted at 2:20:17 or 2:20:41?)
  • Turns the post titles into links to view the posts, like WordPress 1.2 used to have
  • Colors the titles of future posts red (or the style of your choice)

Like my future posts plugin, this was inspired by managing weblogs that use future posting. The days of the week help me make sure regular weekly features are posted and the red titles make it very clear which ones are future posts. These two plugins work fine together, and the links on future post titles won’t work unless you have both.

To use this plugin, rename it to enhanced_pm.php and save it in your wp-content/plugins directory, then activate it on the Plugins page. There are three values you can customize at the beginning of this file:

  • $mm_add_day: Specify true to add the day of week, or false to keep the default date format.
  • $mm_link_title: Specify true to make post titles into links, or false to leave them alone.
  • $mm_future_title_style: If you are using link titles, you can modify the CSS style applied to future posts here. The default is red text.

I’ve tried this plugin on five different sites and it works fine, but there may be bugs. Post a comment here if you have trouble with it, or if there’s anything you’d like to see added.

  • Note: While searching for similar plugins I found the enhanced view plugin, which doesn’t do what I wanted, but does add some useful features to the post management page. My plugin is not compatible with that one, since it rewrites the entire page.

July 19, 2005

Attack of the Amazon spiders

Filed under: — 10:30 am

While investigating a traffic surge at The Quotations Page, I found something interesting: between 4:00 AM and 10:00 AM I received almost 10,000 hits from two particular IP addresses. Things like this happen every day, and it’s usually just a referral spammer or email address harvester. Today’s attack had two interesting qualities, though:

The user agent on the requests is libwww-perl/5.35, so apparently somebody at Amazon is having lots of fun with Perl at my expense.

This leads me to wonder if Amazon is experimenting with a new search spider for A9.com. But if they are, it’s gone horribly wrong…

July 15, 2005

Django – Python web framework

Filed under: — 11:56 am

Django is a new web framework for the Python language created by Adrian Holovaty, Simon Willison, and Jacob Kaplan-Moss. I suspect this is going to become as popular as Ruby on Rails in no time at all. Judging from the overview, this looks pretty easy to learn. I actually understand most of the code, despite knowing almost nothing about Python.

It just launched today, so the documentation is a bit sketchy, but it looks very interesting so far. The data modeling and the automatic administration interface look especially nice. Considering that most of my web sites are basically homemade content-management systems, it would be great to use a framework meant for the purpose.

I guess I should start learning Python…

[via lesscode.org]

July 8, 2005

Alertra.com site monitoring

Filed under: — 8:00 am

When you make an income from web sites, keeping the servers running is very important. I used to pay for a service that regularly checked my servers and alerted me with a text message to my phone when one of them went down. I abandoned that service for two reasons: first, I didn’t always get the alerts, and second, often the problem was connectivity at their network and nothing to do with me.

This week I found Alertra.com and I’m pleased to report that it solves these problems. They avoid false alerts by rotating checks from eight different locations and not alerting you until three of the stations agree that the site is down.

The fees are reasonable, although they can add up if you’re monitoring lots of servers or sites. I’m using their HOST service, which monitors pretty much everything you need on a Web server: Ping, up to three HTTP ports, HTTPS, DNS, SMTP, POP3, IMAP4, FTP, SSH, TELNET, NNTP and up to three other TCP ports. Pricing varies depending on the monitoring frequency—I’m having my main server checked every 5 minutes and the secondary server every 30 minutes, and the total monthly fee for both is just over $30. A basic service to simply check your URL every 5 minutes is only $8.75 a month.

Alerts can be sent by email for free, or by SMS, pager, or voice phone for a small per-notification fee. I’m using the email notification to reach my cell phone, which avoids paying the SMS fee. You can set up a complex notification schedule if you want (for example, notify Bob at the first sign of downtime, and then notify Alice if the downtime lasts 60 minutes.)

I ran some tests by taking various services down in the middle of the night, and so far the alerts have been very prompt. My hosting provider has their own monitoring system, but this works much better, and an external monitor can spot problems in their network as well.

July 7, 2005

WordPress 1.5 notes

Filed under: — 9:33 am

Last week I upgraded this site to WordPress 1.5, upgraded some other sites to the latest security update, and worked on a new weblog. Here are a few random notes about things I ran into in this process:

  • Upgrading templates: The WordPress Wiki has a pretty good guide to upgrading a template from WP 1.2 to 1.5. This process has gone smoothly on all of my sites.
  • Spam Filtering: I use WP Hashcash by Elliot Back on all of my weblogs, and it effectively eliminates comment spam. Occasionally someone will manually enter a spam message, but the automated ones are stopped 100%. It uses JavaScript to verify that a real browser is involved. This shuts out a few potential commenters, but at least the new version displays a friendly message when JavaScript is disabled instead of responding to comments with a blank page.
  • Trackback Spam: Unfortunately, since trackbacks are supposed to be automated, there’s no easy way to stop them, and I’ve had hundreds of trackback spam comments this week. I’ll probably end up disabling trackbacks altogether. Let’s face it, Trackback is dead, and any system that lets anyone add a link to someone else’s site is inevitably going to be abused.

Here’s an interesting statistic: according to my WP Hashcash reports, there were 2472 spam comments blocked from July 3rd to today for this site alone. Now you know why I install spam filtering plugins on new weblogs before I even launch them…

June 8, 2005

Tracking yourself with RSS

Filed under: — 10:00 am

One of the nice things about RSS is that it makes it easy to find people who talk about or link to what I write online. I can search for my name in services like Technorati, Bloglines, or Pubsub and quickly find references to my name, or sites that link to mine.

Tracking Your Name

A feed that searches for your name lets you know when someone mentions you. Having a somewhat unique name like mine helps—if your name is John Smith or Bill Gates, this is a bit trickier. In that case I recommend giving your site a unique name so you can search for that.

I’ve subscribed to a search feed for “Michael Moncur” on all three sites. Here are my impressions of the results:

  • Bloglines finds my name mentioned in other people’s weblogs, comments I’ve posted elsewhere, and occasionally my own postings. It’s by far the most useful of the three. Unfortunately, as far as I’m aware, this feature is available only for those who use Bloglines as their feed aggregator.
  • Technorati mostly finds my own posts from my own weblogs. Not too useful to me, but I suppose if you were keeping tabs on someone else it might help.
  • Pubsub tends to find my name mentioned on other people’s sites, exactly what I’m hoping to find—but it doesn’t find all mentions.

While I find Bloglines the most useful, none of these is perfect, so I subscribe to all three feeds. For some reason, almost every new mention of my name shows up in just one of these (usually Bloglines) and not the other two.

Tracking Links

Technorati lets you set up a feed that tracks links to your site. I use one feed for each of my sites and find them pretty reliable, catching most mentions of my sites on weblogs. It also finds blogrolls and other links to my sites. Unfortunately, old items show up in the feed as new from time to time, but it’s usually relevant.

I’m sure there are other services besides Technorati, Pubsub, and Bloglines, and other ways to use those services. Any ideas or tips?

May 17, 2005

New weblog: Sequenced Notes

Filed under: — 10:40 am

Sequenced NotesWhen I’m not working on websites, one of my favorite hobbies is making electronic music with computers and synthesizers. I’ve been thinking for a while that I’d like to write about making music, but this isn’t the place for it—first of all, I like to keep this weblog somewhat focused on web development and computers, and second, music can be an obsession at times, and it would take over this site for months at a time if I allowed it.

Besides, another of my obsessions is starting new websites.

Sequenced Notes is my new electronic music weblog, where I’ll be writing regularly about synthesizers, sequencers, and other aspects of digital music production. I think it will be fun to write about something a bit more “right brain” than anything else I do, and I’m hoping it will convince me to spend more time actually working on music. It will also be an outlet for another of my hobbies—building my own synthesizers.

I had a bit of fun with this site’s design, which is inspired by the “piano roll” editor used in sequencers. It uses a CSS layout loosely based on the one I did for Starling Fitness. It’s a bold, kind of intentionally geeky look—believe it or not, I toned it down a bit before finalizing the design. I’m particularly happy with the way the top graphic merges seamlessly with the background grid.

The logo font is Jason Kottke’s Silkscreen. I used this font directly for the tagline, and built the logo text in the sequencer grid one giant pixel at a time based on the letters in the font. I’ll probably use Silkscreen column headers in the sidebar too, but I haven’t done that yet.

This site is my first experience using WordPress 1.5, and the source of my earlier post about WP 1.5. I’ll be upgrading my other sites soon.

Let me know what you think, and I hope I have a few readers who are musicians and will find it worth a read. Stay tuned for next week, when I further expand my portfolio of multiple personalities weblogs with an additional unrelated site.

[The name of the site is a pun: “sequenced notes” could describe a weblog, as well as the primary component of electronic music. Get it? No? Congratulations, you’re not as much of a nerd as I am.]

May 11, 2005

Making RSS more visible

Filed under: — 1:35 pm

The Quotations Page has supported RSS for several years—in fact, our Quotes of the Day RSS feed is currently #10 on Bloglines’ list of most popular feeds, and it appears as a default in a number of news readers. Nonetheless, people have been emailing me asking if we have an RSS feed. This isn’t surprising, since the details about the feeds were buried at the bottom of this page.

So, I’ve finally made a few changes in an effort to make the feeds for Quotes of the Day and our lesser-known Motivational Quotes of the Day a bit more visible. I added the ever-popular orange XML icon and subscription buttons for Bloglines, Yahoo, etc. below the current day’s quotations on each page, and added the appropriate <link> tags for RSS autodiscovery.

I’m also experimenting with Feedburner to take some of the RSS load off of our server and produce some useful statistics. Another benefit of Feedburner is that it provides a nicely-styled RSS page to browsers, so if you click on the XML icon you get some useful instructions instead of raw XML code. I’ll post more about Feedburner after I’ve tried it for a few days.

April 12, 2005

WordPress 1.5 plug-in: view future posts

Filed under: — 10:00 am

At Starling Fitness we write many of the posts a few days in advance, which makes it much easier to ensure that we meet our goal of at least one post a day. WordPress lets you publish posts with future dates, and they stay invisible until their time comes. Unfortunately, you can’t view these future posts (except in the editor preview), and we like to see them as they will appear, complete with the site’s styles. So, I installed a Cheesy Hack(tm) a while ago to allow administrators to view future posts just like current ones.

I was working on a 1.5 version of the Cheesy Hack, and stumbled across a plug-in hook—so I realized I could write a proper plug-in instead. So here it is:

With this plug-in, an administrator can view future posts at their permalink, so the View links in the administration panel work just like regular posts. The posts only appear at their permalink page—they are omitted from the home page, archives pages, category pages, and RSS feeds. You can modify two variables to change these behaviors:

  • $future_min_level—the minimum user level required to view future posts. The default is 10 (administrators). Set this to zero to allow everyone (even anonymous users) to view future posts.
  • $future_single_only—if set to true (default), future posts are available from their unique permalink only. If set to false, future posts appear on the categories, archives, and the home page.

To install the plug-in: (WordPress 1.5 only) Download the file, rename it to futureposts.php, save it in your wp-content/plugins directory, then activate it from the administration Plugins page. That’s it!

This is my first attempt at a WordPress plug-in, so please let me know if you’ve found it useful, if it’s not behaving as you expected, or if you have a feature suggestion. Enjoy!

Update 7/20/2005: I’ve written an Enhanced Post Management plugin that adds additional features you might find useful for managing future posts.

April 11, 2005

WordPress 1.5 first impressions

Filed under: — 3:28 pm

I’m setting up a new weblog (to be announced shortly) and have been experimenting with the recently-released WordPress 1.5 for the first time. It’s an incremental update from 1.2, but there are some nice new features. Here are some of my first impressions:

  • The Dashboard: This is the new front page of the weblog Administration interface. A sidebar shows a few statistics about your weblog with links to latest posts and comments, and the rest of the page is essentially an RSS aggregator that displays WordPress-related items. I found this clever, but since I already have an RSS reader most of the screen’s contents are redundant. I’d rather see more statistics and a larger display of recent comments and posts, but I’m sure others find it useful, and it will expose things like security updates to a much larger audience.
  • Administration: Aside from the obvious Dashboard, the administration interface has been rearranged a bit, but it’s essentially the same as the 1.2 interface and easy to get used to.
  • Themes: I have to admit, one of the reasons I’ve put off upgrading to WP 1.5 was that I use custom templates on my sites, and it would take some effort to convert them to 1.5’s new theme support. These concerns were mostly unfounded—it turns out creating a theme is a simple matter of creating a directory, copying the files for an existing theme into them, and editing the PHP and CSS files. Adapting a WP 1.2 template is also a simple process. Switching themes takes a single click from within the Administration interface, so this will be a great way to experiment with updated looks without messing up the site.
  • Default Themes: WordPress 1.5 includes two themes: WordPress Default is the new theme based on Kubrick and WordPress Classic is the theme that came with WP 1.2. Both are decent looking, but considering how many people use WordPress without ever changing the theme, I’d like to see a bunch more included by default. At the very least, the Themes administration page should include a link to wherever one goes to find new themes.
  • Pages: Pages are similar to posts, but aren’t time-dependent. With the URL rewriting feature, you can create pages like www.example.com/about/ without editing a single file. Pages look just like a post (including a comment form) by default, but you can create a custom template to fix that.
  • Nofollow: The rel=nofollow attribute is enabled by default for all links in comments, so spam comments won’t receive any pagerank. I think this is a very good thing as a default, but I’m disappointed that there’s no way to turn it off—I micromanage my comments and have no use for the feature, and I’d like my commenters to benefit from their legitimate links. Fortunately there’s a plugin that turns off this feature, but this should really be a built-in option.
  • Comment Spam: WordPress 1.5 defaults to moderating all comments except those from previously approved posters. I’ve turned that feature off, but it’s wonderful to have it as the default—this will lead to less freely-spammable abandoned weblogs in the long run.
  • Logged-in Users: If you’re logged in to the weblog (as the administrator usually is) you don’t have to enter your name and email address when posting a comment. Yay! This is a reason to actually enable the registration feature that I’ve previously ignored.

I’ll write more about WP 1.5 as I discover more about it, but in general I’m impressed—I look forward to many more great things from the team. I will hopefully be upgrading this weblog to WP 1.5 this week, and I’ll let you know how that goes.

April 8, 2005

Making Money from Content Sites: Search traffic and regular readers

Filed under: — 10:03 am

Reading Paul Scrivens’ article at WorkBoxers, Search Engine Traffic or Daily Visitors, Which is better?, I was reminded of a similar article that’s been sitting in my pile of rough drafts for a while, so I decided to finish it. Here’s my take on search traffic and regular visitors.

(more…)

March 3, 2005

New Web Server

Filed under: — 4:19 pm

Once again, my sites have become so busy that the servers are overloaded, leading to slow response and the occasional crash. I’ve done what I can to optimize MySQL, Apache, and so on, but definitely reached the point of diminishing returns.

So for the next few days I’ll be working on moving sites to a new leased server. The new server is a dual 2.4 GHz Xeon machine with 2 GB of memory and dual SCSI drives, which should be substantially faster than the single-processor 2 GHz IDE machine it’s replacing.

One great thing about this server is that it includes a remote access card that has its own IP address and power supply and can be reached via secure HTTP. I can access the card even when the server is powered off, shut it down or reboot it, and access the console for debugging. It makes it much easier to deal with problems despite the server being in another state.

This site is the first to move—so if you’re reading this, you’ve reached the new server. Let me know if anything here doesn’t work the way it should.

February 10, 2005

Live HTTP Headers

Filed under: — 11:49 am

A post of Simon’s reminded me about Live HTTP Headers, a Firefox extension I have used before, but had neglected to install on the new version of Firefox. This tool lets you watch the headers sent between web servers and your browser, and look at them for any page you’ve loaded.

This might sound purely like a toy for web server developers, but it’s actually very useful for anyone who runs a web site. I’ve found it handy for a few recurring situations in particular: first, to find out whether web server features like gzip compression or caching are working properly.

Second, if you run a complex web site, especially one with advertisements, you’ve probably run into this situation before: pages are loading slowly, or not at all, or only displaying partially. Is the problem your overloaded web server? A delay on the server that hosts an image? A delay or downtime with an ad network? That 3rd-party web counter you installed the other day? One look at the HTTP headers after loading a page will tell you what you need to know.

Third, like Simon did with Google Maps, you can use it for an inside look at the operation of someone else’s web site.

Oh, one more thing: if your site uses cookies, you can view all of the cookies and their values in the headers, which has saved me lots of time debugging my sites.

February 7, 2005

Web icons for the design impaired

Filed under: — 11:33 pm

iconsA while ago I wrote a popular post called color tools for the design impaired. It seems there are lots of non-designers like me looking for ways to make quality pages, so I thought a sequel was in order.

While pretty colors are nice, sometimes a few good icons can make a web page look better and make key functions much more clear, especially with web services. If you’re not a graphic design wizard, you may find the prospect of designing ten matching 16×16 icons daunting. Fortunately, you don’t have to resort to using characters from Wingdings—there are some great icon collections you can buy for a small fee. Here are some I recommend:

  • Dan Cederholm of Simplebits makes two excellent sets of icons available: Stockholm has clear, colorful icons and Overcast takes a more subtle monochrome approach. Both sets include 16×16 and 32×32 versions of each icon. I own Stockholm and have used these, and modified them slightly to create a new one or two, on my quotations site.
  • twothirty media inc. offers the twotiny icon set. It’s $40 (only $30 until March 1st) for 79 well-designed 16×16 icons. I purchased this set for use in a couple of current projects.
  • IconBuffet has several collections ranging from $19 to $289. They all look great.
  • Buyicons.com offers two collections of icons at $49 each. They seem targeted more toward Mac applications, but can be used on websites also.
  • Update 8/1/2005: Iconkits.com has some great icon collections also, although their prices are a bit higher.

All of these collections are royalty-free: after purchase, you can use them on any of your sites without a fee. See the icon vendors for the specific legal terms—I only have direct experience with the first two.

Yes, there are some free icon sites out there too, but I haven’t found any that have the quality or the clear-cut licensing of the above. The best site I’ve found for free icons is The Iconfactory, although they have more picture icons than simple navigational icons. Suggestions of quality free icons are welcome. Using non-free icons has one clear advantage, though—less people use them, so your site will be a bit closer to unique.

If you want to create your own icons, Dan Cederholm’s article Anatomy of an Icon is the best tutorial I’ve found on the subject.

February 3, 2005

The truth about search engine optimization

Filed under: — 11:22 am

In Basics of search engine optimisation, Roger Johansson of 456 Berea Street explains the essentials of getting your site noticed and indexed by the search engines without being a spammer. I wrote something similar a while back (Top Search Engine Tips) but he includes some information on meta tags, frames, and browser detection that my article didn’t cover.

I also enjoyed Roger’s article on the writing process. This one and its comments are worth a read if you regularly write content for your site. (In case you missed it, regular updates with good content are the most essential part of search engine optimization.)

In other search engine news, Darren reports that google is updating again. Another roller-coaster ride begins…

January 31, 2005

Tuning Apache memory usage

Filed under: — 8:27 pm

Every now and then my web sites’ traffic (and the load on the servers) increases to the point where I have to do something about it. I start finding out whatever I can about optimizing Apache, MySQL, PHP, and other components, simplify my code and database queries as much as possible, then if that fails, start pricing higher-powered servers.

Last time this happened, a few months ago, the main server was running out of memory and nearly crashing several times a day. I ran across this O’Reilly article on tuning Linux web servers and followed a few of the suggestions that were new to me.

One thing that really helped: it seems that Apache threads gradually increase their memory allocation as they run, depending on what dynamic code you run with them. Setting the MaxRequestsPerChild parameter in httpd.conf forces it to start new threads periodically, and this memory growth process starts over. (I used the value 200, but you need to experiment with your server.)

It’s only a temporary measure, but this kept the server running smoothly for the last few months. The server load reached 20 (very bad) on a typical day before the change, and stayed around 5 (slightly bad) after.

Now traffic levels and server load have nearly reached critical again, so it’s back to the drawing board… Anyone got any amazing apache speedups?

(c) 2001-2007 Michael Moncur. All rights reserved, but feel free to quote me.
Powered by WordPress