The Bear and Friends have a way to speak truth. Just before heading to the doctor this morning, my wife put on The Many Adventures of Winnie the Pooh for our son. It’s been years since I’ve seen this, and my ear caught something of it while it played in the background. Pooh has eaten too much hunny and is stuck in Rabbit’s front door. Owl comes by to try and solve the problem. Does any of this sound familiar to you as you’ve seen other IT folks talk to business people about how to solve their problems:
Pooh on Projects
GMail IMAP in Mail.app Slow?

I never download anything in Safari this slow. It’s easily hundreds of times faster. It’s been well over a month since I setup my GMail IMAP. I’ve done some initial investigation, but nothing concrete showed up that I hadn’t tried. Any ideas?
Using Google’s Chart API to Create Sparklines
Just a couple weeks ago I was wondering how Google made its sparklines for Google Analytics. I was creating a Health Page of sorts for my application (a rudimentary listing of recent performance statistics, like how long it took to get a DB connection). I had designed my stats collection piece to keep track of data over the last 15 minutes or so, hoping to show a chart of recent activity when I hit my health page. I had plugged in the Colt statistics library to perform some calculations on the set of measurements in each minute. I had a lot of data points ready to display.
But I didn’t like how the Java Sparklines library worked, and I couldn’t see an easy way to mimic Google. Then just a short time later, they released their Chart API. So this morning I put my data into their API and the charts came out pretty decent (ignoring the fonts, decimal formatting, and alignment of my other stuff):

I can’t figure out how to get rid of the x and y axes entirely. I mimicked the Analytics chart size of 75×18 (or thereabouts), and it’s close. The Analytics charts also seem to have a minimum 2px buffer of fill along the bottom, so even 0 has some fill below it. They also seem to auto-size so the max measurement it at the top. There are several ways to refine what I’ve started with, but for an admin page that’s full of 80-150 charts, and only viewed by a few people, it’s a decent start.
Please leave a comment if you’ve got any tips on how you use Google’s Chart API to create sparklines.
How to Setup Google Apps Chat SRV Records For iChat and xmpp4r-simple
I’ve registered several domains using Google Apps. Lately I’ve been fiddling with using Jabber with those domains, and I wanted to have a program be able to interact on IM using an account like tim@example.com. Furthermore, I wanted to have everything Just Work.
The place to start was with DNS. Google has a help page about how to setup your DNS so that your Google Apps accounts can be federated with other non-Google Jabber communities. The problem is that neither xmpp4r-simple nor iChat simply work if I use tim@example.com as my JID. Then I stumbled across this post that connected the dots for me.
Here’s a screenshot of how I setup my SRV records over at eNom:

After that, my simple chat listener worked:
im = Jabber::Simple.new("tim@example.com", "secret-password")
puts im.connected?
im.accept_subscriptions = true
while true
sleep(5) unless im.received_messages?
im.received_messages {|msg| puts msg.body if msg.type == :chat }
end
My little “bot” silently accepted new buddy requests, and printed out recent messages every 5 seconds.
UPDATE: Something’s amiss here, I think. I’ll update when I have more details. Guess not. I tried this out on another domain, and thought that things didn’t work right. But I was mistaken. Everything looks good.
iPhone: Using video more than I expected
When I first thought of getting and iPhone I never figured I’d use the video feature much. But it turns out that I was wrong.

I’ve found that things like Railscasts are both incredibly useful, and surprisingly readable on the 160 dpi screen. I’ve also just loaded up the Apple Video Tips to check them out.
These short kinds of video tutorials are great for short waits, and I like the way that video can illustrate the point quickly.
Oh — and having a kids movie like Finding Nemo on there can really help out when you end up waiting WAY longer than you expected somewhere JUST before nap time…
Just one more way the iPhone has really changed the way I do many things — for the better.
Watch Out For Exploding Water
Odd as it may seem, the wife of one of the guys on my team got hit with some Exploding Water on Sunday morning. First degree burns on her face; glasses protected her eyes. Didn’t know nuking water in a Pyrex container could be so volatile under just the right conditions. Guess this gives you an excuse not to scrub your dishes too clean.
Company Picnic Cancelled

One of the great things about living and working in Phoenix is the weather in November. All the books say hiking season is October – April, and they’re right. The company picnic was planned for today, but it’s been cancelled since it’s predicted to rain all day. I don’t recall a rainy day this month (but I rarely pay attention to the weather), but it’s a bit funny to me to have something cancelled due to threat of rain in November. Very different from when I lived in Vermont.
Maybe I’ve been busy
Dilbert’s gone unread for a while.

Switching the Mic
It’s been an eternity since I’ve created a podcast. The kids have grown, but both are still in diapers, neither can dress, and both still need assistance with food. It’s a ton of work, and I totally LOVE being a dad. This has had a tremendous impact on my time over the last 18 months, but it’s also meant that the location of my gear has moved quite frequently as well.
When I started podcasting, we lived in a small apartment in downtown Phoenix where we could watch both the Fiesta Bowl Parade and the APS Light Parade just 20 yards from the pool. Now we’ve moved to a house in the suburbs where I drive past our old freeway exit to the other side of the valley each day for work.
My home office has moved. Twice.
I had lots of thick audio cables running around, connected to various devices. Kids are prone to pulling cords.
I kept pulling out the equipment after months of ignoring it, only to completely forget how to plug it all in and tweak it just right.
So I’m giving up on the big-time equipment. I’ve sold my condenser mic. I’ve sold my mixer. I’m throwing in the towel on keeping track of cords. I need something simpler.
I’m planning to buy a USB mic. I only want one cord.
I’m done trying to fiddle with the sound to make my voice appear to be the 17th string NPR announcer. My published podcasts never had that sound; and when I worked on it I didn’t publish podcasts.
Instead, it’ll just be me, the one-cord-usb-mic, and GarageBand (I hope).
I know there’s a bajilliion things out there that can do better than the these tools. But I want just plain and simple because I’d rather produce something annoyingly below the audio quality of others than simply be silent.
I’ll probably still have ahs and ums. I’ll probably still ramble. I’m too busy changing messy diapers, answering phone calls to help people from church, writing Ruby in the evenings, telling bed time stories, and running to the grocery store for more formula to devote lots of time to editing.
And I don’t think I’ll ever return to the 3-podcasts-per-week format. So be it. At least I’ll be back with Zdot: Thinking Out Loud In Color every now and then.
Inbox Zero
I’ve been a fan of David Allen‘s GTD book and Merlin Mann’s 43folders site for a long time. I go through waves of dedicated times and waves of lax times. Inspired a few weeks ago by Merlin’s recent Google talk, I tackled my home inbox and won:

Now I just need to do something about my work inbox (hundreds of emails in there)…
Project or Product?
Jim Shore’s recently made some observations about projects and products, James Shore: Successful Software.
Rather than thinking in terms of projects, I’ve come to prefer thinking about products and releases. Rather than talking about the project I’m working on and the tasks it involves, I’ll talk about the product and how it’s valuable. Rather than talking about deadlines, I’ll talk about releases.
I doubt companies will ever stop using the word “project”. I’ll play along. But when somebody says “project” and “deadline”, I’ll think “product” and “release”.
I like what he has to say about the lifecycle of software products: the initial release is often the start of the path rather than the end. I take a slightly different view than Jim on the choice of vocabulary (though I am tainted by ). My team works on a particular product. We release every two weeks. My business users, however, view large institutional changes as projects. For example, we’ve spent much of the last year working to bring about a big change in how information flows through the business. We’ve released useful pieces at least every 4 weeks. We released the bulk of the work months ago, and the business has been tweaking pieces of it since then.
The overall project is done. Another project iteration has begun. We’ve started and completed dozens of small projects during that time, and a few medium sized ones as well. All of these are improvements to the same product, and delivered using our release cycle.
Another influence in my use of the term project is the work of David Allen. His definition of a project (from Getting Things Done) is anything that takes two or more steps to complete. Using that definition, just about anything from a bug fix through a multi-year improvement to a product is deemed a project.
For working with others, I find that the business definition of project meets what most people expect and I find I can apply it well to my product and make progress toward the project through releases. For organizing my personal work, the GTD concept of project is flexible enough to handle the various things that come up.
You begin to wonder what normal is…
All 32 CPUs showing 97% or greater. Is this “normal”?
I got CC’d on an email this morning that included this statement. While I’m sure the answer is a very clear ‘No’, the email made me start to question the reality I inhabit just a bit.







