Return of a Feature

You might have already noticed that when you look at individual episodes, there’s a list of similar posts at the bottom. I had this feature once before and now I have no recollection whatsoever why I turned it off. Maybe I’ll relearn something shortly.

So what the thing does is compare the text, titles, categories, tags, and whatnot of the episodes and comes up with the ones that match the best. The whole thing is tunable, for those inclined to do things right; I just chose some numbers that seemed reasonable. So far, I’d have to say that the code really likes episodes with exclamation points in the titles. I’m good with that.

I just spent about twenty minutes cruising through history, following one episode to the next (ostensibly) related one. It was pretty fun for me, but probably in a you-had-to-be-there way. To be honest, I think this feature is mostly for my entertainment. But you can use it too, if you want.

It’s Beer-Blogging Thursday, Dammit!

I try to set aside an evening each week to go to a bar, relax, and write up a couple of blog episodes. Thing is, I’ve been completely crushed at work (it’s the end of the fiscal year, and I work in the finance department). Finding time to sleep has been a challenge for a couple of stretches lately.

Yesterday my team released not one, but two software tools. A big day! One of those tools is perennially caught in the confusion of fiscal-year shifts, and so today was about last-minute fixes.

Still, I got out of work at a reasonable time, and drove through unreasonable traffic to reach one of my chosen beer-blogging havens. (They’re playing AmeriFootball on a Thursday. Huh.) Anyway, I carved out some space and set up the ol’ bloggin’ box… and proceeded to extend the custom-search feature in one of my work projects. It’s an elegant solution to a problem that had been haunting me, so it’s by no means time wasted.

But holy heck, here I am, at a time I’ve designated for doing pretty much anything but work, and I’m doing work. My head is completely over on the analytical side of my cranium, to the point that I’ve been dreaming about database queries. I’ve gotta unshackle the creative neurons, the ones that never fire the same way twice. Get out the heart-shock paddles! I need to reset my brain!

2

Pardon the Dust – again


A warning sign I saw between Calgary and Edmonton.

I’m putting in a new comment system that hopefully will answer a couple of annoyances I found with the old. It may look wonky compared to everything else. I’ll probably just turn it on, see how things look, and turn it off again in a few hours once I know the effort it’s going to take to get it looking right.

In the meantime, leave a comment and tell me what you think!

Silver Lining

Traffic in the Muddleverse has been down lately, largely due to Google losing its love for my definitive treatise on over-easy eggs. (Seriously, though, there’s no better tract on that subject out there.) Another formerly-popular page has also sunk below the top-twenty fold: My episode titled ‘New York Sucks’. To be honest, I was surprised that my offering ever rose so high; surely there were plenty of other folk voicing the same sentiment.

Yet, for maybe two years, I was one of the top hits for the phrase ‘New York Sucks’. I learned during that time that idiot mouth-breathers occupied seats on both sides of the debate arena. There were some really cool responses as well, and I’m looking forward to my next venture into the hive. I think it’s going to be pretty awesome.

But now my little rant is off the radar, has been for some time, and I can breathe a sigh of relief.

Idly Pondering Redesign

I was staring blankly at my blog earlier and I thought maybe it’s time to redo the banner. I decided to mention my musings here on the off chance that someone out there cares at all, and has ideas I could mooch. Weighing the good and the bad of the current banner:

  • things move and fade in
  • there's a new haiku every fifteen seconds
  • there's a theme song for the clicking
  • it breaks out of its box
  • never got that wow factor
  • stylistically all over the place
  • Flash - doesn't work everywhere

The last one is the biggie. Flash does not now and never will work on some mobile devices. The number of devices where Flash works is declining now that Microsoft has decided to give up on Flash as well. So… time to move on. Eventually.

One impediment: I don’t know what I want the new header to look like. Something geeky. Gears turning? That would be cool, and could fall back to static gears on older browsers. Maybe some kind of machine that spits out the haiku? Or does a duck poop them out? What should the typesetting look like? How should it reveal?

Maybe a way to pop up a form and submit new guest poems?

Should there be an elevator? An ocelot? A rutabaga?

Frankly, I’m completely stumped.

These sorts of solicitations haven’t met with much response in the past, but if anyone out there has thoughts on the whole design thing, I’d love to hear them.

On the Success of Blogs, and I Don’t Mean This One

One aspect of successful blogs is that they focus on a single topic. If you’re interested in conservative politics, you frequent blogs that speak exclusively about conservative politics. You’re not interested in what your favorite pundits had for dinner last night. You might tolerate the occasional post about some other passion of the blogger, as long as it didn’t get in the way.

I thought about this today as I finished my third episode this week concerning Internet security. I could become a blogger focused on that very important issue. After a while folks would start to look for me, to accept me as an authority, for better or for worse. That would be kind of cool.

Instead, I thought, “I have to break up all these techno-geek articles with something more fun.” I pushed publication of two of the security episodes into the future. (Whether the intervening episodes are actually fun is another story.) I now realize that it’s not merely that MR&HBI is poorly aligned for success, I’m actively working to keep it that way.

You don’t have to thank me, it’s what I do.

1

A Few Links of Note

A buddy of mine sent me an email the other day wishing me a happy Squirrel Appreciation Day. That holiday has come and gone with a minimum of squirrel suicide, but here’s a squirrel video I actually can appreciate. (In case you’ve already seen the video, which has made it’s way around the world via email of all things, I found a long-play version with a little more info and footage of a second clever thief.) Apparently the perpetrator of the video added obstacles one at a time, with this as the final result.

It is purely coincidental that the next two links are by the last two people to comment on this blog as of this writing.*

My favorite climate scientist has given us all reason to fight global warming: the supply of chocolate is threatened! This is a must-read, kids.

And earlier today I popped over to a blog and read an article about… blogs. It’s an interesting read about the blog life-cycle, how they grow and why they die, to which I can add a few musings. Muddled Ramblings is an outlier in blog taxonomy, I think; it lies outside the regular life-cycle, in a place where many blogs die. It’s a blog without any clear theme, and without any real growth in readership. The bloggcomm is small but strong; the comments provide a huge lift in value for everyone. But gone are the days of the Millennial Office Holder and similar hijinks, and no insider silliness has grown to replace them. Still I blog along, more than eight years and 1800 episodes worth. It’s a blog that will not die — a blog zombie!

After reading that article I’m pondering ways to better foster community here at MR&HBI. I don’t want to lose what we already have going, or to diminish in any way the contributions of the faithful, but it seems like there’s more stuff we could do together. I think the collaborative writing experiment It Goes Without Saying was on the right track, but the barrier to participation was a little too high – you had to know what was going on. Something collaborative that people could just drop by and toss in a contribution without too much effort would be really cool. (The Fantasy Novelist’s Scoreboard awaits your input!)

The writers of Web comics often have events where they write episodes for each others’ strips. That would be fun, to have guest posts from other bloggers here, while I blog there. Fun for me, certainly, but would it be compelling for readers? In the comic world, the guest artist borrows the characters from the strip and puts a new twist on them. It would be pretty hard for someone to take such an unfocussed forum as this one and put any sort of twist on it. Then again, since when has ‘not fun for the readers’ stopped me before?

I enjoy writing challenges; Elephants of Doom was the most elaborate response to one such challenge, and just a few days ago I cranked out The Secret Life of Sporks. That was a hoot, and I wouldn’t mind a bit if there were more challenges like that. I’d formalize something (“Wacky prompt Thursday!”) but I’m petrified that no one would suggest anything and the sound of crickets chirping would be embarrassing.

Also, I need to get the Muddled Calendar back up and running. Maybe we can finally name all the holidays.

But now I’m rambling far, far off the “post a few links” intent of this episode, staggering around the blogosphere like a drunken beachcomber with a broken metal detector, looking for answers but really too lazy to find them.

You don’t have to thank me, it’s what I do.

* Actually, that’s not strictly true.

1

How This Blog Works

Over the years, the technology behind this blog has gone from cave-dwelling stone-knives-and-bearskin static pages to cloud-city jet-packs-and-lightsaber dynamic yumminess. That transformation starts with WordPress but does not end there. Not by a long shot.

I started the Muddled Media Empire using a tool called iBlog, because it was free and worked with Apple’s hosting service, which I was already paying for. iBlog’s claim to fame was that it didn’t require a database – every time you made a change it went through and regenerated all pages that were affected. Toward the end, that was getting to be thousands of pages in some cases, each of which had to be uploaded individually. When iBlog’s support and development faltered, it was already past time for me to move on.

WordPress is an enormously popular Web-publishing platform. It comes in two flavors: you can host your blog on their super-duper servers and accept their terms of service and the slightly limited customization options, or you can install the code on your own server and go nuts. I chose the latter, mainly because I wanted to be able to touch the code. I’m a tinkerer.

So I signed up for a cheap Web host and set to work building what you see now. At first things were great, but after a while the host started having issues, and the once-great customer service withered up and vanished. So much for LiveRack. I think they just didn’t want to be in the hosting business anymore. I moved to iPage.

iPage was cheap, but I was crammed onto a server with a bunch of other people and sometimes my blog would take an agonizing time to load. Like, almost a minute. Then there was the time a very popular Geek site linked to my CSS border-radius table and iPage shut me down because the demand on the server was too much. Ouch! My moment in the sun became my moment at the bottom of a well.

I set out to find ways to make this blog more server-friendly and more user-friendly at the same time. Step 1: caching. WordPress doesn’t store Web pages, it stores data and the instructions on how to build a Web page. So, every time you ask to load a page here, WordPress fires up a program that reads from the database and assembles all the parts to the page. The thing is, that takes longer than just finding the requested file and sending it back, the way iBlog did. Caching is a way for the server to say, “hey, wait a minute – I just did this page and nothing’s changed. I’ll just send the same thing I did last time.” That can lead to big savings, both in time and server load.

I looked at a few WordPress cacheing programs and eventually chose W3 Total Cache, because it does far more than just cache data. For instance, it will minify scripts and css files (remove extra spaces and crunch them down) and combine the files together so the browser only has to make one request. It will zip the data, meaning fewer 1’s and 0’s moving down the pipe, and it does a few other things as well, one of which I will get to shortly.

I installed W3 Total Cache, and although some settings broke a couple of javascripts (for reasons I have yet to figure out – I’ll get to that someday), the features I could turn on definitely made a difference. Hooray!

But Muddled Ramblings and Half-Baked Ideas was still way too slow. I continued my search for ways to speed things up. I also began a search for a host that sucked less than iPage. (iPage was also starting to have outages that lasted a day or more. Not acceptable.) I decided I was willing to pay extra to be sure I wasn’t on an overwhelmed machine.

I’m not sure which came first – new server or Amazon Simple Storage Service. S3 is a pretty basic concept – you put your stuff on their super-duper servers, and when people need it they will get it really quickly. Things that don’t change, like images and even some scripts, can live there and your server doesn’t have to worry about them.

This is where W3 Total Cache earned my donation to their cause. You see, you can sign up for Amazon S3, and then put your account info into the proper W3TC panel and Bob’s Your Uncle. W3TC goes through your site, finds images and whatnot, puts them in your S3 bucket, and automatically changes all the links in your Web pages to point to your bucket instead of your own server. (Sometimes I find I have to copy the image to my S3 bucket manually, but that’s a small price to pay.)

Now a lot of the stuff on my blog, like the picture of me with the Utahraptors the other day, sits on a different, high-performance server out there somewhere, and no matter how overwhelmed my server happens to be at the moment those parts will arrive to you lickety-split. Amazon S3 is not free, however – each month I get an invoice for two or three cents. Should Muddled Ramblings suddenly become wildly popular, that number would increase.

About that server – the next stop on my quest for a good host was a place called Green Geeks. I wanted to upgrade to a VPS, which means I get a dedicated slice of a server that acted just like it was my very own machine. There is a lot to like about those, but my blog just wouldn’t run in the base level of RAM they offered. I upgraded and reorganized so that different requests would not take up more ram than they needed. Still, I had outages. Sometimes the server would just stop freeing up memory and eventually choke and die. Since it was a virtual server in a standard configuration, logic says it was caused by something I was doing, but all my efforts to figure it out were fruitless, and Green Geeks ran out of patience trying to help me figure it out.

The server software itself is Apache. At this point I considered using nginx (rhymes with ‘bingin’ ex’) instead. It’s supposedly faster, lighter, and easier to configure. But, I already know Apache. I may move to nginx in the future, but it’s not urgent anymore.

During the GreenGeeks era I came across another service that improves the performance of Web sites while reducing the load on the servers. I recently wrote glowingly about CloudFlare, but I will repeat myself a bit here for completeness. CloudFlare is a service that has a network of servers all over the world, and they stand between you the viewer and my server. They stash bits of my site all around the world, and much of the time they will have a copy of what you need on hand, and won’t even need to trouble my server with a request. About half of all requests to muddledramblings.com are magically and speedily taken care of without troubling my server at all. They also block a couple thousand bogus requests to my server each day, so I don’t have to deal with them (or pay for the bandwidth). It’s sweet, and the base service is free.

Unfortunately, it was not enough to keep my GreenGeeks server from crashing. Once more I began a search for a new host. I found through word of mouth a place called macminicolo. Apple employees get a discount, but I wasn’t an Apple employee yet. It was still a bargain. For what turned out to be the same monthly cost of sharing part of a machine at GreenGeeks, I get an entire server, all to myself, with plenty of RAM. I’ve set up several servers on Mac using MacPorts, and I knew just how to get things up and running well. It costs less than half what a co-located server costs anywhere else I have found (Mac, Windows, or Linux). (Co-location has up-front costs, but in the long term saves money.) So I have that going for me.

The only thing missing is that at GreenGeeks I had a fancy control panel that made it much simpler to share the machine with my friends. I do miss that, but I’m ready now to host friend and family sites at a very reasonable cost.

So there you have it! This is just your typical Apache/WordPress/W3 Total Cache/Amazon S3/CloudFlare site run off a Mac mini located somewhere in Nevada. Load times are less than 5% of what they were a year ago. Five percent! Conservatively. Typically it’s more like 1/50th of the load time. Traffic is up. Life is good.

Now I have no incentive at all to learn more about optimization.

2

A Big Muddled Milestone Approaches

Down near the bottom of the sidebar over there, you’ll see a few stats about this blog. There is one stat of which I’m really rather proud, even though it’s not really my accomplishment. The credit goes to you guys out there.

Muddled Ramblings and Half-Baked Ideas will soon have its 10,000th comment.

That’s a big deal. All those comments represent a huge amount of content and, well, intelligence that this little media empire would not have had otherwise. The comments are the second layer, the extra reward for those who choose to dig a little deeper.

How should we reward comment 10,000? Certainly it should not go unmarked. My first thought is to offer the same prize I did in a previous contest: the winner provides the opening sentence and I write a silly story based on that. It was a fun prize, especially since Bob (Bill Bob’s brother’s brother) came up with an excellent opening that resulted in Elephants of Doom.

Is there a better prize? Leave your ideas in the comments!

Harlean on the Move

This is just a quick note to tell folks that Harlean Carpenter (who is a fiction) has moved her blog from MySpace (which is becoming a fiction) to Blogspot. Right now she’s moving her favorite posts from the old to the new, so you can get a nice ‘best-of’ album right now to introduce youself to her inimitable style. Check it out!

Appreciating Fonts

The look of this blog when viewed on a Windows machine has always subtly annoyed me. I’ve been using the default font setup for WordPress, which uses Lucida Grande first, and if that is not available it uses Verdana. Verdana to me looks, I don’t know, thin or stretched or something. Loose. Unfortunately most Windows boxes don’t come with Lucida Grande, so Verdana is what most people experience. Today I decided to do something about it.

It’s possible now to tell a broswer to load a font from the Web when displaying a particular page. I could quite easily put @font-face directives in my files, load copies of Lucida Grande onto the server, and I’d be done (except for Internet Explorer, and those people can get by with Verdana). Unfortunately, although technically pretty simple, that course of action would not be legal.

There’s a font on Windows called Lucida Sans Unicode (or something like that) which is very similar to Lucida, but is not nearly as good for italics and bold face. This will be my fall-back solution.

For a while today, however, I thought I might go look for a new font, something that caught the spirit of this blog, yet was easy to read on a screen and had a nice ink density. On top of that, it had to be free or at least reasonably priced, and it had to include good italic and bold versions, and it had to include the wacky Czech diacriticals for those few episodes where I use them, plus the full range of punctuation including a variety of dashes, copyright symbols, and stuff like that.

I came up empty. Making a good font is not at all simple, and the people who make the great ones quite understandably want to be paid for their work. If I found one that measured up to Lucida Grande in usefulness and that would give this site a unique feel, I might be tempted to pony up.

The closest thing I could find was a font called Liberation, which is a favorite in the Linux world. At this writing, those without Lucida Grande will see that font (unless you’re using Internet Explorer). It’s OK, but the text is actually a little smaller for the same font size. That certainly is annoying. I haven’t looked at the text on enough different screens to know for sure, but I think right now the lettering is too small.

How’s it looking for you, my windows-using readers? Do you have any favorite fonts? I think with screen resolutions improving, it’s even possible to consider a serifed font these days.

New Features here at MR&HBI!

First, allow me to call your attention to the episode immediately before this one. You might notice the little icon is a camera. “huh,” you might be saying to yourself, “I don’t remember seeing that one before.” Very observant, Buckaroo! It’s for a new category, Photography, that I added. “But,” the even more observant amongst you might say, “There are already a handful of episodes in that category.” Right again, Wisenstein! I recategorized a couple episodes that were under The Great Adventure and found a couple in Idle Chit-Chat that were better filed under the new category. I expect there are plenty more; the trick is finding them.

The icon is actually my camera sitting on an opened unabridged dictionary. That may seem staged, but that’s actually where we keep the camera these days. Yes, we have an unabridged dictionary open on a stand at all times. No, that does not make us geeks.

Second, way down at the bottom of the sidebar, there’s a section called Other Muddled Stats (or something like that). That’s a wordpress widget I made that counts all the words in all the episodes, and keeps a tally of how many comments there have been as well. I plan to add other stats as well next time I have the hood open. Perhaps the number of times I’ve said “You don’t have to thank me,” or the number of times I’ve blamed the Chinese for things. (Hm… haven’t done that in a while…) Anything you’d like to know? The number of letters typed? Words in comments? Most prolific commenters? If it’s on these pages, I can count it.

The WordPress plugin itself is hand-crafted by yours truly. I started by downloading a different word-counting plugin, but it counted the words on every page load and didn’t have a sidebar widget. All it was was a database query and a loop. My version only counts when the relevant value changes – it only counts words when a new episode is posted, for instance. Once I tidy it up I’ll be adding it to the WordPress repository, so others can also gather useless stats about their blogs. It’s all about sharing the love.

The Book Review that Wasn’t

Last night I wrote a review of a book. I was pretty pleased with the results. It actually talked about the book for a while. This morning I tweaked it a bit and hit post.

It vanished.

Well, mostly vanished. The title was there, as was the little blurb at the top. Everything else was gone. “Poop!” I said (or something like that).

I use ecto to compose my larger blog episodes; the offline editor is much nicer than any in-browser editor I’ve encountered, especially on my 8-year-old laptop. I don’t call it Ol’ Pokey for nothing. Plus there are times I want to write an episode but the Internet is nowhere in sight. ecto has been working very well for me. Except when it loses my work. This is the second time, but somehow this one hurt more. Also, ecto was recently bought from the original developer and seems to be stagnating.

“Looks like it’s time to give MarsEdit a serious look,” I said, and downloaded the latest. I fired it up and was greeted with “Your trial period has expired.” Dang. I’d launched it once when comparing ecto and MarsEdit back in the day. MarsEdit was missing a particular feature (don’t remember exactly what) and that made ecto the winner. Before it started losing my work.

Lots of people like MarsEdit (lots of people like ecto, too), but am I willing to pay for it without writing a single episode with it? That’s hard to justify. I’m downloading a program called Qumana to rewrite the book review with. We’ll see how that goes.

Edited to add: Nope. Qumana didn’t work. At all. I checked the system requirements, and it should work. But it doesn’t.

New Sidebar Feature – Tag Cloud (sort of)

Most blog systems support tags these days. Put simply, tags are just words that can be used to create informal groups of posts. Tags aren’t as rigidly defined as categories, and so a ramble that covers many topics can have many tags. The purpose of the tags is to allow folks like you to find similar stuff. Since moving to WordPress I’ve started to pay more attention to tags, and at the bottom of each episode you can find a link or three to episodes with similar tags. It’s kind of cool, and it’s search-engine friendly.

Now I have added a widget to the sidebar that provides a ‘tag cloud’ — a list of the tags with the most-used tags in larger font. (I think this is a misuse of ‘cloud’, which in this context is also supposed to show relationships. A true cloud would group tags by how often they are used together.) There are much fancier tag cloud widgets out there, but I was starting to spend way too much time investigating the options. I settled on a nice, simple, colorful widget which is over there now. It’s called “ILW Colorful Tag Cloud” (or something like that). There are a few aesthetic tweaks I’d like to make, like condensing the text, but that shouldn’t be too much trouble.

The widgit’s all right, but the colors are arbitrarily set by me. It would be cool if the colors actually meant something. Since the number of times a tag is used is already represented in the font size, color could be used to show relationships or (better yet) indicate how many times a tag has been clicked. That way the tags more people found interesting would be highlighted.

Another minor problem with the tag cloud as it stands is that most of the 1200 episodes I created with my old blog system have no tags. I’ve gone back to retrofit tags on a few obvious ones, but overall most of this blog is untagged.

But no, not today. No widget modifications, and no more tag retrofitting. I’ve already spent far too much time on this silly feature.

Programming Note

I’ve put in a new anti-spam layer in the comments. It’s supposed to nip spam in the bud before it even reaches the spam-catcher I already have in place. Almost no spam has been getting through to your eyes, but behind the scenes the comments have been building up, and this should simplify administration of the site. In addition the new spam layer helps prevent robots from scraping email addresses off the site and other antisocial behavior (not that I will depend on that stuff). The name of the Plugin is “Bad Behavior”, for those who might want to try it out.

The system uses a variety of techniques that are supposed to be completely invisible to you, but please let me know if you have any trouble leaving comments. My email address is addy