Tag Archives: wordpress

The Thrill Of The Hunt

You ever have one of those moments when you observe yourself impartially and think “Good God…I really haven’t made any progress since junior high, have I?”

This is such a moment. I’ve been in a coding trance and my mental CPU was wonderfully overclocked and the last thing I want to do is knock off for the night and go to bed…but it’s 4:20 AM and I need to go to bed.

Yup, the 4 AM point of no return. It’s a bedrock spot on my personal clock, right alongside lunchtime, suppertime, and Time For Letterman. As a kid, I knew it as the time when I had to decide whether I wanted to get two or three hours of sleep in my bed, or if I wanted to keep right on writing or coding and sleep at my desk instead.

(I never, ever made the wrong choice. Which is probably why I graduated 22nd in my class instead of in the top five.)

Now that the blog is back up and running, I can recreationally begin Phase Two: building a custom CWoB theme for WordPress. This requires me to sharpen my PHP-fu skills and also to learn just what the bloody hell goes on under the WordPress hood.

And I’m absolutely delighted that there are two perfect resources out there. The tutorials at WPDesigner.com are absolute godsends. You can jump in without knowing squat about PHP or even HTML and make satisfying progress in your first 15 minutes.

If you do know squat…well, you’re that much ahead of the game.

After spending so much time suffering with a broken blog, I sure don’t want to go and break it again. So I’m inflicting my theme experiments on a “Skunk Works” version of the Celestial Waste of Bandwidth, hosted by a WordPress installation right here on my iMac.

Mac OS X already has everything WordPress needs, right out of the box. You gotcher PHP, you gotcher MySQL, you gotcher Apache webserver. You do need to execute a lot of mojo before WordPress is up and running, and that’s a newbie nightmare.

So thank heaven for MAMP. It’s a magical free utility that runs those services for you. Double click on the app and hey-presto: you have a functioning Apache webserver with SQL and PHP.

I love that it doesn’t mess with your Mac’s configuration or mung up your system in any way. It’s designed specifically for my kind of purpose: when you’re developing something offline and you need a functioning test system that can be turned on and off. When I click the “Stop Servers” button, that’s it: the Skunk Works is closed and my Mac’s configuration is no different than what it was when I started. Even when it’s running, the “webserver” is only available to the user of this iMac. I’m not accidentally publishing my PHP thoughtcrimes to the actual Internet.

I’ve no idea when this new theme will be finished. I’m still at the stage where I’m surprised and pleased that I haven’t turned a lovely iMac into a dignified blob of drippy metal and plastic slag on my desktop. But as they used to say at GE, “Progress is our most important product.”

It’s interesting. The purpose of transitioning away from my AppleScript blogging tool was to have a more powerful and ambitious blog. It wasn’t so that I could stop writing code. But in the past few days I’ve come to understand that if I really want to exploit the power of a full-featured content management system like WordPress…well, I still have to write lots of PHP scripts. WordPress has two faces. It’s a user app and it’s a development environment.

If you’re happy with all of the canned solutions that are out there, you never have to leave the friendly user interface. If you want something that’s tailored towards your own inclinations, you’ll need to put on those special pants that are tailored for extended coding sessions.

The Morning After

Hmm. The site was a bit slow in loading this morning. I hope we’re not seeing the head-reading of ugly thing, best left beh…

(hang on…let me get a bowl of Rice Krispies and a Coke.)

There. That’s better. I always write better after some breakfast.

Hmm. The site was a bit slow in loading this morniing. This fills my day with the salt-encrusted sweatstain of uncertainty. You’ll recall that the whole (bloody) point of moving to a new server was so I could put an end to that sort of thing.

I suppose if I pretend I didn’t see that, then it won’t affect my plans to get the hell out of the house in the next twenty minutes and enjoy my Saturday.

So! Wow! The new server has never seemed slow to me! Not even once!

What a relief! Off I go.

Huh? Wuzzat?

Do I dare dream it?

Am I dreaming now?

Or is my blog finally back up and running?

No, I mustn’t believe it. I’ve had my heart broken before. I’ve had some false starts, made some hard decisions, learned some tough lessons, emerged with a soul that had been hardned in the hottest fire and with my eyes able to see clearer for the tears I had shed.

And even then all of the Comment links were 404.

But it appears to be working.

All of my images. Even all of my custom styles.


Okay, well, clearly I’m going to post this and then a hand is going to reach out from the screen and do that thing to my face that Moe used to do to Larry. But I won’t find out for sure until I…

(Wait for it…)

Push the button, Frank…

Downtime, followed by lots and lots of uptime!

I call your attention to the middle of the floor. See that crumpled orange and green and purple mound of terry cloth? Yes: that’s the towel. I threw it in just a few minutes ago.

It’s a beach towel. Sorry, it’s the only thing left in the linen closet. I haven’t done a wash in about two weeks because I’ve been so busy wrestling with the Massive Overkill hosting plan that I originally signed up for.

Y’see, when you’re an Internationally-Beloved Technology Pundit, mundane decisions can become intensely complicated.

Case in point: I’ve had it with cassette adapters. I’m finally buying a car stereo with direct iPod input. A civilian would just walk into any store, pick out a model with the right features at the right price, and be out of there in less than an hour. But this represents an opportunity for me to do…

(wait for it…)


…for an upcoming column. It’s now down to three choices, even after I made that important initial decision that I shouldn’t spend more on the stereo than the actual car is worth.

And so it went with my search for a new webhost. I sincerely have a responsibility to become less dumb about things as time moves forward and this is a swell opportunity to be able to one day say “Look, I was in precisely the same position as you last year. I completed the Warrior’s Pilgrimage and here is the Wisdom that I gained during the journey…”

Yup, I could have just dropped a quarter in the slot, turned the crank, and extracted a perfectly serviceable hosting solution packaged in a cool little plastic bubble. Instead, I wanted to check out the whole landscape of hosting solutions. I looked just about everywhere. Eventually, my cover was blown and my queries to the general customer email address were suddenly being snapped up and replied to by people with stock options.

With this added attention came many interesting opportunities to (as I say) become Less Dumb. And as usual, sometimes the most valuable thing you learn from such an opportunity is that you is much more dumberer than you thought.

Surely I’ll write a column or two about all of this eventually. But here’s the broad strokes of what I’ve learned: web hosts are like living spaces. The easiest ones are like hotel rooms. Once you’ve squared things with the front desk you can stroll right in, climb into bed, and turn on the TV. But all the furniture is bolted down.

If you feel as though you need a place where you can tear up the carpet and splash some orange paint on the walls and you don’t have at least five tracks on the Billboard Hot 100, a hotel room won’t work. You’ll be happier in one of the “apartment”-style hosts. You can really settle in and make the place your own…though there are still plenty of situations in which the best you can do is call the super and hope that he agrees with you that a skylight in the bedroom would really brighten up the room and is more than worth the minor inconvenience to the tenants in the three floors above you.

My first hosting plan was a real top-level thing, or near as it gets. It was ownership of a whole virtual server, which is like taking ownership of a converted factory building. Power and freedom are limitless. I could even turn it into a hotel or an apartment building if I wanted to, so to speak, and rent out spaces on my own. Golly!

But really, it just comes with water, power, and sewer hookups. It contains all of the infrastructure of a living, breathing, working space, but it doesn’t become habitable until I’ve made lots of smart decisions and done a lot of hands-on construction.

So: this sort of service scored ten points out of ten for providing me with a keen learning experience about installing and configuring webapps and creating services. But zero out of ten as a speedy solution to the performance issues of the Celestial Waste of Bandwidth. There’s just so much to learn and (as I commented on Twitter the other day) setting up a server is like playing an old Infocom adventure. It’s an endless series of puzzles and even when you think you’ve solved them all…you’re eventually totally screwed because three months ago, you didn’t FEED CHEESE SANDWICH TO DOG.

(A reference to the most unforgivable trick from “Hitch-Hiker’s Guide To The Galaxy.” Very early in the game, you pass by a dog and the game really does nothing to tip you off that there’s anything important about him. But at the very end after you’ve successfully navigated weeks’ worth of puzzles, you revisit that scene from a different perspective and unless the dog’s been fed…you die. Ha ha. Ho ho.)

(Yes, it still stings.)

The difference here is that the price of such innocent ignorance is a server that just flat-out stops working eventually, or which is useful only as a way of moving terabytes of credit-card numbers through Nigeria, the Sudan, and ultimately the Russian mafia without my knowledge or being cut in for a piece of the action. I deem this as not acceptable.

I don’t think Media Temple can be blamed for being so tough to use at this level of service. If I complained that I couldn’t install WordPress until I’d created my management account and then created a “client” account that would “own” that directory and then had to manage permissions through two levels of abstraction, all they needed to do was silently tap on a little sign behind the counter reading “Most People Who Sign Up For This Service Know What The Hell They’re Doing.”

In fact, if you own your own server (even a virtual one) you want as little “help” as possible. We come back to that new car stereo I want. My chief motivation is my escalating frustration at my factory tape deck’s auto-reverse feature. I’m in the middle of a really keen podcast when the deck arbitrarily decides to flip to the “other side” of the cassette adapter, forcing me to punch a button if I want to continue to hear the show.

“Just…do…NOTHING!” I shout. Yes, at an inanimate object but look, it’s frustrating as hell. “If you do NOTHING and make NO decisions on your own, you would be functioning PERFECTLY. And I would not now be whacking you furiously with this empty glass IBC root beer bottle.”

And that’s what server owners want. Just a bare structure that they can build out on their own.

Me? I have filled up a five gallon bucket with Wisdom and Experience and now it’s slopping over and getting my sneakers all wet. I am now very very very ready to downgrade to a level of service in which I can push a big green button labeled “Make Blog Start Now.”

Fortunately, Media Temple does indeed have that kind of service, and it’s affordable. I’m fairly sure that their Grid Service will give me the ease of management that I crave and the power for future expansion that I want, while handling the rare Slashdotting and Farking with dignity.

I hope.

Well, let’s see.

So! All of this is by way of announcing that there’ll be some downtime coming soon. And not of the “my host is excruciatingly slow” variety. I mean of the “the DNS change is moving through the system” and “I’m migrating the old database” kinds. I’ve been using Feedburner for CWOB’s RSS feed, so if things work according to plan, your Google Reader and Bloglines (etc) subscriptions should continue to work.

Remember, you can always check in with me on Flickr and Twitter, or what the hell, just pipe me an email. If you can spell my last name correctly and follow that triumph with an “at” symbol and then the Gmail domain, your email will find its way to my inbox.

Fingers crossed. I’ll set this in motion in a couple of days, after this post has had time to populate.

Then it’s time to push the button, Frank…


Time for an update, sensation-seekers. The biggest CWOB-related news is that I’ll be moving the site to a new host soon. Page load times degenerated to such a point where I practically dreaded doing anything that would encourage people to, you know, actually visit Ihnatko.com. Every time I’d go on Twitter and post a link to a new article, I could count on a flurry of replies in which the word “borked” featured prominently.

That said…I couldn’t be happier about my current webhost.

Last year, a friend of mine was kind enough to offer me a directory on his own server so that I could install a bunch of different content systems, pick a winner, and learn the system. It was a very generous offer and allowed me to really take my time choosing a winning horse (which is what I have here with WordPress).

Obviously, he’s not set up as a webhost and so when bottlenecks and other various problems cropped up, my banging on doors for a fix was simply not the best way to show my gratitude for his kindness. Instead, I kept pulling Scrabble tiles out of a bag at random, hoping that a solution would present itself. Lo and behold, the letters spelled out “Pay for real hosting, you cheap, pathetic bastard.”

(No, there aren’t any punctuation tiles in Scrabble. But I pulled out blank pieces after the G and the D and I; the Fates may be fickle, but don’t claim they don’t know the rules of Scrabble.)

One of the (many) benefits of my job is that minor annoyances can become fodder for good columns, and the problem of choosing a webhost is no different. And I have an awesome resource helping me out: the 7,000 people following my Tweets. I’d already surveyed the landscape of webhosts by the time I put out a query on Twitter, but over the next couple of days the opinions, details, and character assassinations that were put before me were invaluable.

At this point, I think I’ve homed in on three candidates: Pair, Media Temple, and A2Hosting. I’ve come to casually think of them as “Rock-solid hosting maintained by steely-eyed missile men,” “Lots of online hosting tools that I can actually understand, even as static screenshots” and “The folks who have been responding to my emails quickly and in great detail.”

These are all good things. Negotiations are still underway and I don’t really know which way I’ll go. At this stage, one of the most compelling arguments for any of these hosts is “Well, Merlin Mann uses A2 for 43 Folders…I mean, if it’s good enough for him…

I’m in sort of a funny niche as a consumer. Ihnatko.com was just building up when the server melted down, but even so, it was getting way too many hits to entrust it to a basic, consumer-level webhost. And while I’ve no (concrete) plans to create the next HotButteredNurses.com, I could be quite happy with a couple hundred thousand unique visitors per month…and I’m optimistic enough to be choosing a host that can support that kind of traffic.

So at some point in the next couple of weeks, Ihnatko.com will be at a new host and we can put any previous ugliness behind us.

First Flight: ScribeFire

Time to test one last blog editor. This time, we have one from out of left field: ScribeFire, a free blogging plug-in for Firefox. It’s potentially a v.meaty idea. See a page you wanna talk about on your blog? Just click on the ScribeFire button in the corner of the browser window and a blog editor appears in a new window pane, thusly:

Okay, weirdness already: I’ve hit “return” to get to a new line, and find that it’s done a simple linefeed instead of what might be termed a “Please start a new paragraph, Mr. Editor.” Let’s hit “Return” again and see what happens.
Nope. Same thing. That’s weird. The first line of the first paragraph was even indented like a real paragraph…though now I notice that it’s just a batch of spaces. Return
Damn. Does it expect me to tap “Return” twice to communicate a new paragraph?
Easy way to find out: this editor has both Rich Text and HTML views. Let’s just flip on over to the crunchy-wheat HTML side and see how it thinks this should be formatted.

Ooof. That’s no good. Not only is it not wrapping these paragraphs in paragraph tags, but those four spaces have been burned into the post as nonbreaking spaces. Meaning, the indent will be there even if my style sheet says “No indent, please; we’re English.”

Okay, I’m doing double-returns at the end of each graf.

(Note: I’m inserting these graphics after having finished the First Flight. I’m putting this one a couple of paragraphs “late” so that you can see how the earlier grafs got formatted before I started doubling the space between manually. Anyway, here’s what i was seeing in the editing window:)

(Back to your regularly-scheduled First Flight.)

I keep meaning to mention: command-I is intercepted by Firefox’s “Page Info” menu item. So you can’t italicize a word via a keyboard shortcut. But if you click the ital button in the editor, at least you “see” italics.

Like I was saying: I’m now doing double-returns at the end of each graf. Now will ScribeFire wrap the paragraphs with the right HTML tag?

Assuredly not.


Yeah, that’s a problem. In a “first flight” situation, I have no idea how these double-returns I’m inserting are going to be parsed. I assume that it’ll be handled the same way that WordPress’ online editor handles them (meaning: correctly) but I won’t know until I push the magic button.

On the whole, I like the richness of this editor. There’s this little yellow notepad icon in the bottom corner of the Firefox window and hey-presto, clicking it panes the browser window into the page you were viewing and an editing deck so you can comment on the page you were viewing.

I just wish I could easily work out how to pop stuff out of that page. For reference, I’m looking at the World’s Hardest Easy Geometry Problem. I’ve just selected that title and clicked the “Add A Link” button. You’re guessing that ScribeFire automatically chooses the URL of the page that you were viewing when you opened the editor? Nope.

Okay. I’m clicking “Cancel,” I’m selecting the address, doing a Copy, selecting the title here in the post again, and clicking the “Add A Link” button. Paste…good, ScribeFire didn’t screw it up.

Oops. The editing pane here isn’t scrolling down properly. I’m now at the bottom of the pane. It should automatically scroll up far enough to give me plenty of white space to edit in. In reality, it hasn’t even scrolled enough to display the descenders of the letters (oh, seems to be working now. But at first, the “p”‘s and “y”‘s were being cut off.)

Hmm. I’m having one of those moments where my thoughts begin with the phrase “It can’t be like this, can it? Because that would be idiotic.”

Specifically I mean that an embedded blog editor would almost automatically have all kinds of features for quoting and incorporating content from the original webpage I was visiting, right? Right?

In truth, I’m not seriously interested in ScribeFire as a main blog editor. But I want a good “Blog This Here Page” tool and this would seem to be just the ticket.

But I don’t see any tools like that. Hence my confusion. They have to be here; I’m just not finding them.

So let’s look for Help.




Can’t find any Help. Nothing more than ToolTips, anyway. Okay, here’s the “ScribeFire” logo in the toolbar. I bet this takes me to online help…

…Nope, it opens a new tab and loads in the main ScribeFire page. Maybe the little graphical dingus on the left of it is a separate button?


Hmm, again.

Oh! There’s a dingus on the extreme left of the top toolbar, which some certain misguided individuals think means “There’s more menu items hiding here somewhere.” I patiently explain to the ScribeFire author who isn’t here in the room with me: no, it doesn’t mean that. It’s pointing in the wrong direction, for one. You need an image thingy here that makes it clear. See, sir, I am now going to click that thingamabob because I don’t think you’re such an idiot that you didn’t include either system help or that…what was I looking for? It seems so long ago…oh, right: tools for including content from the current webpage.

Here I go, clicking the dingus.

A stacked column of buttons appears. A road trails off to W. You hear a babbling brook to the E. ?

Umm…okay, I’ll take “Page Tools” for $500, Alex.

No, that shows you Technorati stats for the page. Useless for the task at hand, which is writing a blog post.

Let’s go to “Bookmarks,” same dollar amount?

No, sorry…the answer were were looking for was “What is ‘Bookmark this page in del.icio.us’?” Here’s an intersting fact: this, too, has nothing to do with creating a blog post. Alice, you have control of the board.

How about “Settings” for $600.

An audio daily double! Alice, you are currently in the lead with $7300. You can risk as much of that as you want on your ability to predict that this menu will be the correct answer.

Uh, I’ll wager $100, Alex.

Nooooo, sorry: this, too, has nothing to do with editing blog posts. Wait, that’s not entirely true: you can do things like choose whether it uses CSS or HTML styles and other options.

Okay, let’s close out the board with “About.”

SO close! It’s a list of links to the ScribeFire RSS feeds, blog, etc., and a link for “Help”…aha!

Mmm, no, it just takes you to the main ScribeFire.com page and leaves it up to you to find its Help system.

Honest to God, I have now spent so much time searching for Help on this plug-in that I’ve forgotten what I wanted to get Help about.

(Right, right: integrating content from the webpage you were visiting before you activated ScribeFire.)

Sigh. So it’s willing to tell me to check the website for help. Which is what the airline does when it screws me at the airport. “Our main 800 number can help you.” “But you’re standing right here!

Ohhh-kay. I’m clicking the “New users: Read This First” link. Yes, dear readers, I am now liveblogging what it’s like to read a webpage. This doesn’t bode well for me (what, I think you’re interested in this?) nor for you (what, there’s nothing else on right now on the whole Internet?) and certainly not for ScribeFire.

(Seriously. A button or a link marked “Help” that takes you right to a QuickStart guide or something. I can whiteboard you an explanation of this concept if y’like.)

Annnd the “Read This First” contains four (4) one-sentence items, explaining that the software won’t work until it’s installed and that it won’t run until you run it. Whoah…slow down, Professor Feynman!

I see a “Support Forum” link in the sidebar. I could click that. Or, I could take this Uniball Signo model UM-153 black gel pen from my pocket, ask it “Signo, how do I integrate content from the webpage into a ScribeFire-generated post?” and then sit patiently until it speaks the answer.

Don’t know which one is the smarter play. Same result, same wait, but if I ask the pen, I’ll won’t have to type anything.

Okay. I’m going to just let this go. I should mention that ScribeFire adds a new menu to the universal Firefox contextual menu and one of the items therein is “Blog this page.” I’ve just tried to activate it via a new window but ScribeFire failed to load itself. Maybe because I had another instance of SF going in this window right here?

Well, I dunno. Later on, I’ll see what happens when I try that contextual menu.

(Incidentally, when it creates new tabs, the embedded editor belongs to the window, and not to the individual tab that was open when I activated ScribeFire. I don’t know that this is the wrong answer, but this definitely disconnects ScribeFire as a “this webpage was so interesting that I had to blog about it right away” sort of tool.)

Here’s what I would expect an embedded editor to do: you activate it and you see pretty much what I’m looking at right now. Except there’s also a whole palette or menu of “this page” buttons. Click this button, and ScribeFire embeds the page’s title, which has been wired up as a hyperlink. Click another button, and whatever text you’ve highlighted on the page copied into your post formatted as a quote. In fact, if text is already highlighted when you activate ScribeFire, the quote is already in the editor.

Bonus points: a JPG thumbnail of the page. Double-bonus: a “gallery” of all of the embedded media on the page so I can “quote” an image (though, hmm, whether it’s a hotlink or a downloaded JPEG served from my own server, there’d be some ethical dilemmas, I guess…)

I mean, anything would be better than what I see here in ScribeFire now…which is nothing.

But let’s move forward. Time to post. Installing ScribeFire in my browser and configuring it for the Celestial Waste of Bandwidth was so fast and trouble-free that both tasks were successfully finished before I started talking about them. So that’s all you need to know about that. Bravo, well done.

(Not me…ScribeFire.)

Oh, right…pictures. I’ve been taking screenshots as I go here. I bet that inserting pictures into this post is punitively hard. Deep breath: let’s see how hard it is to insert an image from my local drive.

Click the “Add an Image” button. Hey, very nice. A dropdown dialog appears, inviting me to select either a local image or an image URL:

And what’s this? If I click on it, standard resize handles appear and I can scale it down proportionately. Awesome. Every editor should do it that way. I can select it and center it on the page, right?

Yup, apparently so. Good, good.

(No, bad; it means that now, I have to go back through this post and add the images I’ve been shooting. Sigh. Let me get a Fresca out of the fridge first and then I’ll be right on that…)

The bad news is that you can’t get access to the image detals without going into HTML mode. I’d like to say “please slap this little image on the left and allow text to flow around it” but there doesn’t seem to be a way to do that. ScribeFire also got discombobulated pretty easily about where the images ended. I centered an image and then couldn’t type “un-centered” text anywhere underneath it until I clicked into some text that was already left-justified.

Okey-doke. Time to post. ScribeFire lets me add WordPress categories, Technorati tags, trackback URLs…cool, the whole schmeer.

If the “Publish” button works as advertised, this will be my last chance to talk about ScribeFire “live.” Time to sum up:

I should say that this tool seems to be a man without a country.

It’s just another blog editor, in a field filled with apps that are far more than merely adequate. If ScribeFire were a standalone app, it would have lots of advantages over an embedded tool that’s dependent on the infrastructure and UI of FireFox. If it had a level of intimacy with the content of the webpage you were viewing when you brought up the tool, it’d be able to do things that no standalone editor can even touch.

As is? There’s no advantage to this. It works just fine, but not in any particularly good way that causes it to distinguish itself. I can’t really see why ScribeFire needs to exist. Unless it’s for the carnal glee of telling people “It’s a blog editor…as a plug-in!!!

Kids, we were all once excited about the ability to make a phone call…from the car!! But eventually, we realized that the technology sucked until it also let us play Freecell.

Push the button, Frank…

On Vodcasting…

I asked for your feedback on the idea of putting my YouTube stuff in a companion video podcasts. There were way, way too many helpful replies, so instead of responding individually I’ll do it collectively.

(It also gives me a chance to test Version 2 of the WordPress mobile admin plugin. I’m hoping to post stuff from Macworld Expo & thus is probably the first real post I’ve done with it since I installed it a few months ago.)

The defining question regarding any idea you have for the distribution of your work should be “do I actually want people to see this?” This is why CWOB’s RSS feed features full posts. I’m not 100% happy encouraging people to avoid visiting my site directly, but it does mean that more people will read these posts. So, sure.

A vodcast would help more people to see these videos…plus I admit that if Robert Llewellyn’s YouTube vids were available via podcast, I’d happily sign up. YouTube is a snap to watch, but it’s nifty-cool to pick up an iPod or an AppleTV remote and presto! There’s a new show, all downloaded and ready to go.

And finally, that was no joke in the video…the two I’ve shot and edited so far are in HD, as will the future ones. T’would be a shame if nobody got to see these at decent resolution…

That said: one thing at a time. I want to get the CWOB podcast up and running first, and apart from the blog, the priority is on getting regular podcast and YouTube content out there.

There’ll be plenty of time to freestyle later. For now, I’d better make sure that the compulsories are all on their feet…!

More About Offline Blog Editing

Hmm. It’s possible that my expectations for both Ecto and MarsEdit are too high. But I’m an internationally-beloved technology pundit so I’m more inclined to say that no, my standards are actually spot on the money; damn these apps for not reaching for the stars!

This point of view has the advantage of putting the responsibility for my disappointment in other people’s hands. So as you can guess, this is the one that I’m really putting my shoulder behind.

Each of these apps reflects a different approach to blogging. I’ll set that discussion aside for another day. But they seem to be geared towards fairly simple and straightforward posts. They do allow you to jazz things up with a little CSS voodoo, but it isn’t done with any particular elegance…at least none that I’ve spotted so far.

This morning, I wanted to post my latest Sun-Times column. It isn’t a hugely complicated deal. These columns are all BBEdit documents, so the apps ought to have no problems dealing with the content. All I need to do is add a couple of lines of CSS-ified text and then write the “Bonus” material.

Neither editor did a particularly fantastic job of turning that text file into a nicely-formatted blog post. That really surprised the hell out of me. I can get the results I want, sure. But if I use friendly, word processor-style editing (a mode in which I don’t have to throw tags around every individual element), I get funky and unpredictable HTML. If I use the HTML-style editor, I get perfect, reliable results…but jeez, if I’m going to do all of that stuff by hand, I might as well be using BBEdit.

There has to be a good middle ground. The whole experience left me thinking that the optimal solution is to just write an AppleScript that can transmogrify a Sun-Times column automatically and then pass it to my editor of choice.

Reasonable reactions to this lament:

“Andy, you’ve absolutely no idea how to properly use [editor whose logo you had tattooed on your ass a month after downloading the first beta].” That’s a fair cop. When evaluating a new app, I intentionally avoid looking at documentation during the first week or so. This gives the very best apps a good chance to distinguish themselves. With ecto and MarsEdit, it’s entirely possible that a quick and handy solution is just a Command Option Shift F7 Right-Click-And-Drag away.

“It’s unreasonable to expect an editor to be both as easy to use as TextEdit and as powerful as a dedicated CSS-aware code editor like BBEdit.” Maybe. But I should point out that there are golf balls and recreational vehicles on the surface of the Moon. The Humans are an exceptionally clever species; we really ought to be able to find a way to make this happen.

“Well, duh, Ihnatko! The best and easiest answer is always to customize an app to your personal needs via AppleScript!” We’re on the same page, m’friend. So, cool: I have my solution. But what about folks who won’t see this as an “easy” answer because they don’t know AppleScript?

It does look as though when I choose one of these apps for my personal use, the decision will largely come down to figuring out which one has the best support for customization. I was awarded my AppleScript 10-Year-Pin in 2005. As a user, my natural attitude is that an app with sparser features but fantastic AppleScript support and integration is almost always more useful than a more feature-rich one that barely acknowledges scripting at all.

ps – I still haven’t figured out how ecto’s bulleted-text feature works. Humbug!

The Power of the Oppressed…

Okay! Well, I’ve made another new decision about the future of this blog. My original plan to use it as a place for occasional first impressions of stuff I’m playing with? That could probably benefit from a certain amount of modification or refinement. I look at way, way more stuff than I can possibly publish about. I thought it’d be kind of cool to use the blog for some less-formal opinions.

I guess that as an Internationally-Beloved Technology Pundit (Certification pending;. Lots of red tape. I’m told that they still haven’t finished processing Tracy Kidder’s paperwork), the line between an off-the-cuff blog post and a formal review can get a bit blurry.

I stand by what I’ve been saying about MarsEdit and Ecto, of course. And after looking at reader comments as well as the original posts again, I do call everyone’s attention to the places where I explicitly stated that these posts were written with the authority of someone who’s been using the apps for all of 15 minutes. So I don’t think anyone has any particular reason to fly off the handle about what I said.

In any event, I am indeed planning on writing a formal review of both apps in the near future. So believe you me, any points you wish to make about either tool — pro or con — will be read and mucho appreciated.

This has been an interesting demonstration of the advantages of a “real” WordPress blog over my old AppleScript-powered one at YellowText. I’ve been in “beta” mode for so long that I’ve sort of forgotten that people out there are actually reading these things. I still haven’t made a real “announcement” that this new blog exists. Most of the referrals are still from people who were Googling my name or other things.

My old blogging software was my own creation and it didn’t have commenting tools, so I was cut off from user responses to my blog posts. I got plenty of emails, but the blogging community’s culture isn’t based on private emails to authors. It’s in taking part in public discussions with a group.

From 1995 to September of this year, I was blogging in a near- vacuum. YellowText was largely cut off from the rest of the world, too. I’d wired in support for RSS just a couple of months after the first standard was hammered out. No worries there. But I had never bothered to research and code up any connections to the invisible architecture that makes the world aware of what I was posting.

Welp, the almost immediate reaction to my casual posts about offline blogging apps is a pretty resounding demonstration of that infrastructure’s power and importance. Awesome.

This is an ugly little blog and I’m still learning WordPress. I’m happy for it to continue to be ugly while I learn more about theme building. As with YellowText, part of the fun of not hiring people to do the job for you is that you learn a hell of a lot, even if it does mean that you have to eat your own dogfood from time to time.

But to be honest, although I’m damned proud of my homemade blogging software and I’ve enjoyed using WordPress for these past few months, I’ve never been more happy to have made the switch than I am tonight.

(Now buy my books, already. C’mon. I’m so desperate to find a Wii for my niece that I’m this close to buying the $700 Super Package at Wal*Mart. I’m an honest freelance journalist and thus every additional royalty counts.)

“iPhone Fully Loaded” (Andy Ihnatko)

“iPod Fully Loaded: If You’ve Got It, You Can iPod It” (Andy Ihnatko)

Back to Ecto

Dammit, I’m just going to capitalize Ecto from now on. Why live like an animal?

So clearly I’ve made my choice. Although “choice” isn’t the right word. Just as I sifted through a half-dozen blog services and CMS’s and then said “Right, I’ll go with WordPress and see if that works out” I’m going with Ecto and seeing if I prefer an offline editor to WordPress’ standard visual thing.

I mean, WP’s editor works just fine. In fact, it’s probably about 80% as good as Ecto or any other desktop app. I see a lot of similarities between the layout of the editing tools.

But that extra 20% might be a big deal. I’ve rarely included images in my blog posts because they’re just too much trouble. In Ecto…well, they’re still too much trouble. At least it’s an improvement. The point is that when the limits of your tools causes you to place limits on your creativity…that’s no good.

Oh, and I have a theory about Ecto’s bulleted-list tool. Let’s do an experiment:

[Experimental stuff deleted.]

Nope. Dammit. I thought maybe you’re supposed to type out the whole list, select it, and then click on the List tool. I’m now prepared to call this a defect.

I should mention that Ecto also has a pretty ambitious Scripts tool, supporting all of the usual suspects. Given that I’ve written loads of BBEdit scripts for automatically creating, formatting, and inserting content…well, that could be a Very Big Deal for me.

Methinks I’ll fire off a little email to the good folks at Ecto to get their comments. I wonder if I can nudge them into improving the Media tool. At the very least they can tell my how the holy **** to get the list tool to work…!

Methinks I’ll also have to do something to fix those two test posts. See, this is why I want a decent image tool: as-is, both Ecto and MarsEdit did something so weird that my WordPress theme doesn’t know how the hell to make these images fit inside the template.

Warlord of MarsEdit

Continuing my first impressions of offline Mac blog editors…I’ve now moved on to MarsEdit.

Hmm. Already I’m liking it less than ecto. Although as I typed that last word I have to give MarsEdit’s developers proper respect for being unafraid to use the “Shift” key when naming a product. Every type I type “ecto” I feel like I’m using an open-source product or something.

Whereas MarsEdit feels like an open-source product when I’m actually writing a blog post with the thing.

I mean, oh dear. Let’s see if I can insert a shot of the editing window so you can see what I mean:

Picture 43.png

(Note: after posting this, I had to go back in and manually resize the pictures. It was screwing up the layout of the blog.)

So the good news is that MarsEdit does indeed allow me to upload an arbitrary file. The bad news is that it doesn’t offer any integration with iPhoto or Aperture at all. The good news is that it does let me access my Flickr stream, viz:

The Long View

…And I certainly dig that. But the bad news — I know, I’m violating some sort of rule about nested Good News/Bad News loops; let’s just press on — is that it apparently doesn’t resize these images.

Hmm. The best answer is a hybrid of both ecto and MarsEdit. To put a finer point on it, I want ecto’s approach, with additional support for both Flickr and arbitrary files.

I also want this new solution to do something that neither one can apparently handle: the image should be scaled down to 400 pixels wide, and clicking on the image should open the full-rez version in a new window. I was able to code that up in less than an hour with my old AppleScript blogger. Why is this such a mystery?

But I digress. If you look at the MarsEdit window, you essentially see the exact same thing I used to see when I was using BBEdit as my post editor. There’s a preview window behind it, but why on Earth wouldn’t they support visual editing? They are aware that this is a Mac product, and not something intended for a Sun workstation, right?

And I don’t see a tool for italicizing text. Let’s go look for it…

…Yup, but it’s under the “Post” menu, and not under a “Format” menu, which is a standard Mac UI standard. And of course, it just wraps what you write in HTML tags. Like this. But then after you’ve typed the word you wanted to italicize, you have to move the cursor past the closing tag before you can continue editing.

Dear oh dear. This won’t do. This won’t do at all.

I command-tab back to ecto. I note that on top of all of the goodies that I already miss, I can easily flip between that rich, visual editor and the actual, raw HTML. Not merely tags, but complex formatting. So it would appear that anything I might want to do (like those iTunes divs) would be a piece of cake.

Even cakier, in fact: ecto allows me to define my own styles.

MarsEdit is nice enough to include an “Edit in BBEdit” command, but for $29, should I really need to have a second app already installed to share the load?

I note that ecto costs ten bucks less.

Hmm. This little contest appears to be going to ecto, in an utter blowout. In fact, I’m finding MarsEdit so difficult to like that I wonder if I haven’t simply overlooked a separate user mode. You know…a mode which causes MarsEdit to work the way I’d expect a blog editor to work.

If you folks have anything illuminating to share, then comment away by all means. Keep in mind that I’m literally commenting on what I’m experiencing as I’m creating this blog post. So these are the impressions of someone with just fifteen minutes’ worth of experience with MarsEdit.

But for now…I mean, ick.

Ecto Plasmer

Nothing to see here, folks. I’m just testing out a couple of offline blog editors.

I like WordPress’ visual editor. I just wish it didn’t have a little black lump of chilled steel where a human heart should be.

(Assuming for the purposes of this post that WordPress’ visual editor were a human being. But if it were, I wouldn’t waste time making analogies about its insensitivity to my needs as a fellow person. I’d just start slapping it right away, and I wouldn’t let up until it promised to finally behave.)

It does what it says it does: when I italicize something, well, by God, it looks like it’s been italicized. But it also does things that it doesn’t say that it’ll do, namely: completely screw up any formatting that I’ve socked between DIV tags.

Given that every single day this month I’ve posted something with big, complicated styled DIV blocks, this problem is seriously dampening my élan.

Actually, it’s giving me a keen sense of nostalgia for my old blogger. The big deficiency of CWOBber (my AppleScript blogging app) was that once a new post was published, editing it was frustratingly complicated. It’s the same deal with these “iTunes Advent Calendar” entries. If I so much as open one of those posts up for editing, it’ll be grabbed by the Visual Editor, which will then attempt to “help” me by automatically reformatting everything I’ve already styled.

And the only way out of that one, dear friends, is to trash the entire block and rebuild it from scratch.

So at some point in this little pageant, I sighed, reflected once again that Mankind is born unto trouble just as surely as sparks fly upward, and unchecked the “Use Visual Editor” option in my user profile. I’m back where I was before.

I dunno where I’ll go from here. I’ve got Ecto — oh, did I mention that this post is being written with Ecto? Sorry, prolly should have mentioned that straight away — and I’m likin’ it. But I’ve also got MarsEdit (oooh, cool; when I clicked on Ecto’s “link” tool, it automatically inserted the URL I had in the Clipboard. Ten points to Ecto), with Qumana in as a dark-horse candidate. I’d never heard of it before and it’s possible that it’s an ad-insertion tool with a posting tool grudgingly included.

Well, let’s wrap things up with Ecto. Hey, let’s throw in a picture and see what happens:


Hmm. Not a dramatically good inning for Ecto. Here’s what I want a blog image tool to do:

  • Allow me to arbitrarily choose a file from my desktop. Ecto apparently needs the photo to already be in my iPhoto or Aperture library. Which is fine with photos of my beloved niece, but when I want to put an Ecto screenshot into the post, this behavior forces me to open a whole big app to perform a function that I don’t need it to do (take a one-use picture and incorporate it into my permanent library).
  • Resize the photo on the fly. I mean, come on people…this isn’t rocket surgery. The original file is 10 megapixels. This would seem to be somewhat overkill for a blog post. Can’t you automatically resize it to a width of 500 pixels? Or at least do the proper ratio and insert a set of scaled-down dimensions into the Image tag?
  • Oh, dear…and it appears that there isn’t an obvious way to end a bulleted list, either. Do I just click the tool icon again?
  • Nope, that just increases the indent level. Click on the “left justify” icon?
  • Nope. Okay, to the Help System I go.
  • “Help isn’t available for ecto.” Whee!
  • Why don’t I just click “post” and let this bulleted list be my last memory of this test of ecto.

Edited: Okay, I told you guys that this was my first post with Ecto. It turns out that Ecto does indeed have nearly all of the image tools I wanted to see. They’re just not as visible as I’d expect them to be. To resize a photo, you have to click on a tab in the Import panel to reveal a new pane.

The label of that important tab is “Upload.” There’s already an “Upload” button at the bottom of the panel, so I sure wasn’t expecting such a basic function to be hidden under what I logically concluded was a redundant tab.

You can also import arbitrary image files. But you have to do it through the Media Manager tool, which also allows you to resize.

So: I was wrong about this being a missing feature. But if you’ll excuse my use of a hockey metaphor, the person who designed Ecto’s UI deserve an assist on my mistake.

The Blog Slouches Towards Bethehem

I haven’t talked about the transition to WordPress in a while because the transition is pretty much complete. I had hoped to have this Celestial Waste of Bandwidth complete by the time my new iPhone book came out, but I can’t say that I’ve reached the “Golden Master” stage yet.

The stages of project development are as follows:

  1. Recognize how much better your world would be if [state your desired result].
  2. Define your desires in terms of an articulated goal.
  3. Break down a series of steps that you can complete, in sequence, to realize said goal.
  4. Explore the tools that you’ll need to complete each step.
  5. Successful proof-of-concept, confirming that all of your preceding choices are sound ones.
  6. Developmental deployment.
  7. Project achieves functional stability.
  8. Private beta deployment.
  9. Project is feature-complete, but still awaiting fine-tuning and incorporation of as-yet-unknown bugfixes and new features.
  10. Assemble input from beta group; evaluate data collected thus final re-evaluation of what defines “success” in this deployment and what’s required to get there.
  11. Widening from a private beta deployment to a public beta deployment.
  12. Official public release.

I am currently at Step 8. The Celestial Waste of Bandwidth isn’t finished yet, but I’m tempted to get out a Sharpie, jot a simple phrase on a Post-It note, and slap it down over Stages 9-12.

That phrase is “**** it; let’s just go with what we’ve got and add things as we go.”

If the Linux community had a company store, you could buy pads with that phrase pre-printed for your convenience.

Here are the major Action Items that are still open:

I still need to wire up a navigation bar under the header.

Ranking: Critical.

I’ve been playing with Tigra Menus and I think that’s going to be my solution. I was hoping I could find plug-in that would reduce this thing to an utter no-brainer. I mean, to my delight, I’ve found that this is usually the case. I’m about to crack my knuckles and rock out some JavaScript or PHP, but nope…all I actually need to do is download some scripts and copy them into a directory.

That is, there are indeed some WordPress horizontal navigation thingies. But none of them seem to be as simple to use or as flexible as just pasting Tigra’s mostly-JavaScript mojo into the theme templates.

I need to commit to a structure for the whole site.

Ranking: Critical. 

I do want the Celestial Waste of Bandwidth to have various sections, and based on things that are happening right now and things that’ll be happening soon, I know what some of those sections are going to be. But if I make sloppy choices early on, a year from now I’ll have a navigation menu that contains about 40 sub-items. And the menu next to it will contain just “About This Site…” and “This site: About it.”

Alas, this is a critical part of product development. It costs nothing to sit down and figure out the answer to the question “What is this thing supposed to do?” but there’s nothing more expensive than a wrong answer.

I need to retool CWOB.COM as a “magazine cover” for IHNATKO.COM.

Ranking: Important.

I’ve been mulling over the problem of choosing an “official” domain for the new site. When I first set it up, I used “ihnatko.com” because I wasn’t actually using it for anything else. I bought the domain years ago chiefly just to take if off the playing field. I get so much email addressed to “Andy Inkato” and “Andy Inhatko” and “Andy Ikanato” that I never had the slightest inclination to use it as an official domain or email address.

Now that the site has been up for a few months, I must say that I rather like seeing my name in the URL. You can’t buy publicity like that, you know?

But from a practical standpoint, CWOB is a much better name. If you hear CWOB.COM in a podcast or somewhere, you’re 97% sure to type it in correctly; that goes up to 99.99% (I have research; excutive privilege prevents me from releasing it to the public) if you hear the name of the site, too.

Plus, I’ve been going back and forth about what people should see first. A big “Welcome to the frabjous land of Andrew Fillmore James Ihnatko” page with some sample content and a link to the blog? Or just dive people right into the corn crib of delights known as the Celestial Waste of Bandwidth?

So, two birds with one stone: CWOB.com will be the “front page” of IHNATKO.COM. Which makes sense. The folks who are the most likely to type CWOB into their browsers are people who have just heard me mention the site in a podcast, so they’d be the most interested in learning just what the hell any of this is actually about.

Come up with a custom site theme.

Ranking: Need to get to it eventually.

Meanwhile, I’ve made practically no progress in building a wizzo custom site theme. I’ve started learning the basics but haven’t written a scrap of code.

Clearly it’s gonna have to happen sometime but it doesn’t look like I’m going to have enough free time to really work on this. So I’ll stick with what I’ve got an keep modding its built-in stylesheets as desired.

I do wish I hadn’t been so hasty about choosing a layout format. The final version needs to be wider, methinks. I still don’t know if I wanna go with two columns or three.

My resistance to using a whole lotta columns is that I’m regularly shocked (seriously: afterwards, I can’t feed or bathe myself) by the sight of incredibly popular blogs that are buried in multi-column clutter. And these sites are making lots of dough! They can afford to pay someone to make it look nice, right?

It’s taken a while to figure out how I’d use a third column. Left gutter would be stuff related to me (my upcoming appearances, my books, my Twitter and Flickr feeds, etc.) Right gutter is for stuff related to the blog (calendar, search, popular tags, RSS links).

But to make that happen, I’d have to make a bunch of changes. It seems like the sort of thing that will either take twenty minutes (five minutes to select a new layout from the theme menu, fifteen minutes to make whatever little tweaks are necessary to make it look nice) or twenty days. And I won’t have time for anything ambitious until the end of next month, y’know?

If I were thinking “wide layout” earlier on, I also would have designed a wider masthead. So back to Photoshop for a few hours to figure out what to do with the extra space.

(A masthead redesign would give me a chance to fix something that’s been bugging me for weeks: the top of my head should poke up above the rest of the masthead, shouldn’t it?)

Anyway. So there’s where we are right now. I’m still 100% convinced that WordPress was the right choice. It’s a great system to work with and (here’s the dealbreaker) it’s clear that if my needs ever outgrow WordPress, then clearly it’d be a time for me to hire professionals to design and build a site for me.

and until the end of January at

Head Games

Behold, the new Celestial Waste of Bandwidth header image. I had a little time last night (rather, I had something else I really needed to be doing instead, but couldn’t get started on it) so I started launching stuff and playing with some ideas.

The fonts are all from the fabulous Comicraft font collection. My name is in DigitalDelivery, the Waste of Bandwidth is Spills, and the big word is Sentinel (tarted into 3D by Adobe Illustrator).

Boy, it really is the little things that matter. I’ve been working on this blog off and on for more than a month and it’s always seemed like something that’s been firmly in beta and barely a blog. But now I click the link and instead of a generic default header with a PHP-generated title, I have a proper masthead just like a “real” website. There’s still lots and lots of work left to be done (I need to either build a new theme or heavily restyle the one I have now, plus I have to set up all of the subpages and the navigation thereto) but oddly enough this small patch of visual fluff makes me feel like this thing has moved forward.

For all that, I’m still trying to decide whether I’ll go with two columns or three. I hate the clutter of sites that keep adding column after column instead of taking a step back and figuring out how to make a cleaner and more accessible site.

WordPress Embedding

Dear Andy of Yesteryear:

You have the right idea. You’ve known for years that when it comes to web development, the best way to learn is to see how other people did it. Bravo on taking it to the next level by actually taking a peek at the future state of your own blog and stealing from your Future Self.

No, I’m not mad…not at all. Time is merely an illusion and if Past, Present and Future Andy put our heads together and work collaboratively, we can get this new site finished in no time. Literally.

Anyway. I found out something astonishing yesterday: it turns out that WordPress’ visual editor, while not full of crap, definitely could stand a good scrubbing out with a 15% bleach solution. You know all the times you’ve clicked into the “Code” tab, pasted HTML code into a post (to create some fancy formatting, a YouTube embed…that sort of thing) and WP screwed it up?

Yup, that’s the Visual Editor causing trouble by trying to be helpful. It adjusts the code when you switch back.

So I’m hoping that you’ll read this post before I wind up wasting lots and lots and lots of time downloading lots and lots and lots of plugins for embedded content. I know it’s reasonable to assume that you need one — because for God’s sake, what’s the point of having a Code editor if all the code is going to be ruined once you click back and continue writing your post? — but you really  don’t. All you need to do is NOT return to the visual editor before you publish the post.

No need to thank me, Past Andy. I figure that instead of wasting hours on this problem you’ll spend that time cleaning our office, and I’ll finally be able to find the red iPod Nano that I lost track of last month.

Oh, and be sure to shave before you go out to run quick errands on October 18…you’re going to bump into a girl you briefly dated and you won’t feel quite so awkward without the three-day beard.