the further adventures of

Mike Pirnat

a leaf on the wind

Next Page »

125/365: Fully Armed

125/365: Fully Armed

I splurged on an experiment, and I'm pleased to say that it's gone even better than I expected. At long last, I've finally moved to the world of two screens for my primary home computer. To accommodate my slightly goofy desk setup, I ended up mounting the second screen on an Ergotron LX arm. The assembly was a breeze and it fits my space perfectly. I didn't even have to relocate our ancient FAX machine! I'm pretty much in love with it at this point and can't believe I waited this long.

What finally pushed me over the edge? Trying to work through iOS tutorials in Xcode with the documentation open in a browser window absolutely drove me crazy. I had to choose between tiling windows at a size where neither was comfortable, or switch back and forth between them, meaning valuable info was obscured no matter what I did.

The other thing that did me in was batch photo uploads. I had relegated iPhoto to its own desktop space, which I'd leave to go waste time surfing or catching up on RSS feeds while the upload happened. Inevitably, I'd get distracted and not notice that the upload had finished and end up wasting tons of time that would be better spent waffling about which is "the" shot, or composing the undying prose to accompany them. So, we'll see if this helps on that front.

Here in today's picture, we see the VESA mount, the end of the arm, and a hint of the power and DVI cables.

Read and Post Comments

121/365: Mulligan

121/365: Mulligan

Monday was made even more special by learning a hard, hard lesson as I experienced my first serious betrayal by an Apple product.

When I started up my shiny new Air to prepare for a presentation the next day, I I found myself caught in a reboot loop. I'd get the grey screen and spinner for a few seconds, then it would stop, go dark again, then back to the grey screen and spinner again. I booted into the recovery mode (hold down Command-R while booting) and to my horror discovered that the FileVault-encrypted filesystem was unrecoverably corrupt.

Attempts to reinstall efficiently while in the office failed, as my bootable Lion install stick apparently doesn't have some driver kung-fu that the Air demands, and my friend Cory's Lion stick wasn't even bootable. I next gave up on the network reinstall when it estimated that it would need over 667 hours to download what it needed. Fortunately, the bandwidth at home is mine (all mine, muahahahaha!!) so it didn't take too long to restore once I got home. I'm also lucky that, as new as it was, it really didn't have anything critical on it; I'd mostly been storing documents out on Dropbox, so getting it back in shape was mostly just a matter of downloading and reinstalling things.

I think what killed it was leaving it asleep for several weeks, until the battery was completely flat, and that the filesystem never got put away cleanly when the charge completely expired.

So--don't do that.

Read and Post Comments

Thanks for Everything, Steve


Thanks, Steve
by Jonathan Mak Long

I had meant to write this when Steve Jobs announced his departure from day-to-day operations at Apple, but life, as it tends to, intervened, and I never quite found the time. Now that he's gone, I'm compelled to get this out while it's still fresh in my mind.


I learned about Steve's passing on my iPhone.

Music is an integral part of my life, for years before and after my time as a radio DJ, and it's a large part of how I process the emotional ebb and flow of my life. After I put my phone down, I picked up my iPad, fired up the Remote app, and in seconds I had Lisa Gerrard and Patrick Cassidy's Immortal Memory going on the AppleTV, while a smart album of my favorite photos--of my wife, of my daughter, of vacations and adventures--scrolled by.

I felt the urgent need to type, reached into my backpack, and drew forth my trusty unibody MacBook, felt the familiar keys under my fingertips, activated the Python virtualenv that houses my writing, fired up vim.

It's worth a moment of pause to realize that in a matter of minutes, I've had a personal interaction with four devices that wouldn't have been without Steve's vision of personal computing. Reflecting on these magical, science-fictional devices--I still maintain that the iPhone plus Wikipedia is the Hitchhiker's Guide to the Galaxy made real--I am dumbstruck with the realization that I don't just owe Steve my thanks for my favorite shiny toys.

I literally owe him everything.

Once upon a time, my parents bought an Apple II+. Must have been about 1981. That wonderful machine, connected first to a fairly awful '70s TV, was my introduction to computing. We played games on it at first; my parents and I took turns reading aloud from the text output of Zork and all the other great Infocom games, to which I credit my precociously early literacy, my goofy vocabulary, and my love of puns and puzzles. Then I discovered BASIC, and the die was cast. I loved typing in programs from magazine code listings, seeing what they did and how they worked, and even more fell in love with writing my own programs. From that moment, the die was cast--while I excelled in many subjects in school, I was always happiest when tinkering with computers.

Over the years, the Apple II+ gave way to the IIe, and eventually to a long series of Macintoshes. I got into BBSes, and that eventually got me into a (ahem) borrowed VAX account at the local college, where the natural outlet for my text adventuring was playing MUDs, which I turned into class credit by landing an independent study project on writing code for MUDs. When it was time to pick a college, I knew that I was looking for a computer science program. A long-distance friend that I kept in touch with via VargonMUD got me introduced to Case Western.

Case got me to leave southwest Colorado, arguably the most beautiful place on earth, for Cleveland, Ohio. Not only did I survive the grueling computer engineering curriculum, but I came out on the other side with a job at IBM and a fiancée.

The IBM travel schedule and its impact on my personal life drove me into the arms of American Greetings and its spunky internet startup, AG.com, just as the first bubble was beginning to burst. We had some rough years on the road to profitability, but I hunkered down, got stuff done, and thankfully held onto my job, where I became increasingly enamored with our primary language, Python. Python's "it fits your brain" feels a lot to me like Apple's "it Just Works", and I see easy parallels between Apple's design aesthetics and Python's Zen. Is it any wonder that the number of Macs at PyCon has exploded over the past five or six years? Working with Python led me to helping David Stanek start up a local user group, and then to attending PyCon, which in turn brought me to speaking and volunteering at PyCon, which have been some of the most satisfying experiences of my life thus far. Moreover, PyCon is responsible for getting me serious about quality and craftsmanship, and has rewarded my risk-taking with friendships, self-confidence, and composure under pressure.

Thanks in part to this earnest desire to grow in my craft, the growth from my speaking experiences, and that Infocom-kindled love for tinkering with a puzzle until solved, I've come to a pretty awesome place in my career--basically I go where I'm needed most, to get hard things done, to shake things up, to band people together, to transform, to raise the bar. On good days, it feels like being Doctor Who in a Kurosawa movie, all flashing swords and sonic screwdrivers and the triumph of intellect and romance over brute force and cynicism. It definitely never gets boring--I'm coming up on twelve years at AG, and in some ways I feel like I'm just getting started.

And on the home front? Things have been good; house, cars, cats, good food, great travel adventures, some of the best friends I could ever ask for. Liz and I have been married for almost eleven years.

Our daughter is four and already enchanted by computers and iPads. Her entire concept of what a telephone is will be rooted not in rotary dials and POTS but in a kind of mobile computing that was science fiction when I was a kid. She may not remember it, but I used to read Learning Python to her as a baby, and I've got the photos on my AppleTV to prove it to her. But that's not what's really amazing about her--it's that she's been so instrumental in overcoming the depression that plagued my 20s; she blew into my life like a fresh breeze and swept away so much garbage. Sure, parenting hasn't been easy, but when I stop to take a breath, I'm struck by how much better I've become for the experience.

Education, career, friends, family, community--literally my entire world--all because of that Apple II and Steve's vision. Surely in some alternate, Steveless universe, similar patterns might have emerged, but this one, these friends, this path, this wife, this child, I can trace very clearly to his influence.

Words seem useless to express my gratitude for the profound effect Steve has had on my life. My sadness that this titan is gone. My regret that we'll never know what other transformations he would have brought to the world.

So, how then to cope with this sudden absence, the sinking of the rock that has so rippled the waters of my life? My inner child will hold to the illusion that Steve's gone to the same tropical island paradise as Jim Henson, Isaac Asimov, Richard Feynman, and Carl Sagan. My outer adult will try, even if it's only in small ways, to make the world a better place, to touch the lives of those around me, to encourage them to grow, to become, and to help them in turn shape the lives of others. And hopefully that will be all right.

Thank you, Steve.

For everything.


Read and Post Comments

AppleTV and the Mysterious iTunesDB.tmp Files

So after I upgraded to iTunes 10 and did the necessary bits of extra hackery to make the UI reasonable again, iTunes decided to lose track of my AppleTV (probably as a result of my fiddling with plists to try to fix this annoying regression), which forced me to do a full re-sync of my entire library.

Three days later (I pushed around 165GB over my wireless network), the sync was complete, but I noticed a giant 282GB blob of "Other" stuff on the disk allocation graph in iTunes. When I logged into the AppleTV to see what was going on, I discovered that during the sync process, something was causing my AppleTV to drop 78MB iTunesDB.tmp files in my /mnt/Media directory.

A lot of them.

Just north of 3600, in fact.

So... yeah, there's my 280+ GB of "Other". Ouch! So much for that nice new 500GB external drive! My initial testing didn't seem to indicate that their presence or absence mattered at all for normal use, so I nuked them and freed up a ton of disk space. I have observed that I get one to three more of them every time iTunes syncs to the AppleTV, though, so eventually they'll be a problem again.

Does anyone know what these files are or why they're written to disk during syncs? Or more importantly, do you know what should be--but clearly isn't--cleaning them up?

Read and Post Comments

Reconciling Leopard and the Brother 5070N Laser Printer

Once upon a time, I upgraded to Leopard on my Mac Pro, and, though I did not mention it at the time, something in upgrade land totally pissed off my Brother 5070N laser printer.

I'd bought the printer in the first place because it was one of the first to support Bonjour (née Rendezvous, née Zeroconf) networking. With good ol' Tiger, it Just WorkedTM, and all was milk and honey as far as printing went in my home. But noooo, it didn't like the hoity-toity, super-duper-greatest-thing-since-sliced-bread Leopard attitude, and just spat out endless reams of cryptic stack dumps instead of, say, directions to wherever I was in a hurry to leave for. I poked around a little, checking for new drivers and all that sort of common sense stuff, and found that even Brother's website claimed that the drivers were bundled with Leopard and that there was nothing for me to download.

I never did get around to figuring out the problem at the time, and being a sleep-deprived and very busy new dad it unfortunately hasn't been much of a priority. Somehow I've learned to live with six months (!!!) of not being able to print a damn thing. And worse, I've had to hold off on upgrading my wife's machine, which has kept her from being able to enjoy the goodness of automated Time Machine backups.

I finally got fed up with it today and decided to finally sort things out once and for all. I even indulged my inner noob and followed Brother's directions, even though it meant assigning a static IP to my printer and dropping it back from the awesomeness of Bonjour to the semi-awesomeness of old-school IP printing. It turns out that, even though no one says it anywhere, that was the key. So, here's a bit of advice for future Googlers: the 5070N will not print correctly using Bonjour under 10.5. You want the CUPS driver and the "HP Jetdirect - Socket" protocol. Then poof! It's all happy again.

Now to go about breaking upgrading Liz's laptop...

Read and Post Comments

Trading Stripes for Spots

So now that things have calmed down a little bit, I finally had time to install Leopard on the Mac Pro this weekend. I know I'm a bit late to the party, but here are a few quick thoughts so far...

The Good:

  • Time Machine -- syncs happily to the 500GB internal drive I installed last weekend (amusingly, with the words "honk if you love internal hard drives" printed on the inside of the box). Finally, something is doing at least some level of backup in our house!
  • Safari -- holy crap, fast fast fast! Feels like driving a zippy little sports car compared to the increasingly SUV-like Firefox (which has similar problems on tight corners).
  • Searching for text -- I love the visual emphasis on the search hits that "pops" the search result. It's subtle, but really helps quickly identify where the result is, which is not always easy when looking at a wall of text.
  • Searchable Help highlights menu options -- freaking brilliant. No more wondering where your favorite menu options got moved to (*cough* Adobe *cough*).
  • The Downloads folder. Yes, I already had my own that worked fine, but it's nice that it's earned an official special place, and it works well with the new Stacks feature for getting quickly to whatever I've just downloaded.
  • Hot diggety, Python's really nice out of the box!
  • Quick Look is pretty nice; got a feeling I'll be using it a lot soon.
  • Grammar checker is now just as widely available as the spell-checker. Nice touch.
  • Okay, the eye candy factor is nice too. I do like me some shiny things. :-)

The Indifferent:

  • The new 3D-ified Dock -- not as horrible as all that. I'm slightly amused by how it picks up reflections from the windows above it. I could use nicer "here's what's running" indicators, but I'm just not seeing a justification for all the controversy.
  • The new menu bar -- square corners and semi-transparent... It'll take a little getting used to, but it's not going to upset me.
  • Stacks -- I kind of like these, but I'm not 100% in love with them yet.
  • The new folder icons. Not doing it for me.
  • I wonder how long I'll want to live in the "deep space" look.

The Really Annoying:

  • I have to upgrade Photoshop and friends. Granted, I was still running Photoshop 7, so I'm a bit behind the times on that, but it still sucks that what was working like a champ for me under Tiger completely craps out in Leopard. Boo, hiss.
  • XJournal, my LiveJournal client of choice on the Mac, crashes upon log-in to LJ. No Leopard-friendly upgrade is available yet. Again, boo, hiss.
  • Startup disk? What startup disk? Immediately after my first boot into Leopard, there was a software update that wanted to be dealt with promptly. So I took care of that, rebooted, and was greeted with the blinking file folder of doom, signifying that no startup disk could be found. Not the most rewarding experience after all of the anticipation and the lengthy upgrade.

And now back to actually doing stuff with the computer instead of poking it to see what it does...

Read and Post Comments

Heck Yeah

Dang, it's suddenly turning out to be a great week! In brief:

  • After a couple miserable days of near-100-degree temperatures, the weather has cooled off and is now downright awesome.
  • Got my monitor back from Apple (no thanks to DHL, who apparently don't even believe in leaving slips at the door when they ignore the "no one will be home between X and Y, please deliver when it will actually make sense to do so" instructions). It's all fixed and happy, and now the cats have a new box to play with. It really is amazing how much better the ACD is than the old 19" monitor I'd been using in its stead...
  • I totally aced the infant CPR course we did last night. Plus, since everyone else was either too timid or too cool to do the "say stuff out loud along with the script" part of the training, my long-dormant inner theater geek had an excellent opportunity to ham it up loudly, to the amusement of all. Thought for today: "The scene is safe!"
  • This is the week that I finally have cleared enough off of my plate at work to dig into fixing the crapton of problems on our new site that are Safari-specific. It was an uphill battle for a few days, but this afternoon I finally had the "eureka!" moment of complete enlightenment and discovered the one bug in the JavaScript framework we're using that seems to be the lynchpin holding everything up. With what's literally a one-line change, close to twenty really horribly broken things on our site suddenly and miraculously work. Huzzah! I'll probably have something more on this once I get the legal OK from work to the disclose details of that portion of my brain...
  • We had a major project launch and data conversion that started last night at midnight... and for the first time in forever, I didn't have to do anything to support it. No being online from home, no camping out in the office, no having to monkey with it in the morning, nothing. After seven years of driving in at two or three in the morning, I can't describe how great that feels to just not have to worry about it. :-)
  • Liz kicked ass on her most recent papers! You go, girl!
  • The window's open, the sunset was lovely, the breeze is delightful, good music on the ol' MP3 player, and a cold beer. Ahhh, bliss.

I'm not entirely sure whether recent events are karma's equivalent of the cash-back bonus, or if I've just taken out a karma-equity loan that'll eventually catch up to me, but for now I'm just going to enjoy feeling happy.

Read and Post Comments

This Little Piggy


This Little Piggy
Originally uploaded by mikepirnat.

After a long day of fighting with Safari issues and worrying about shipping my monitor off for repair, I was rewarded with a lovely dinner with my wife, a surprise early result from the frame shop, a little bit of work in the baby room (hung pictures, hooked up the old iMac), and then... photo opportunities!

First, Valentine got a turn in the baby chair, which she has so far been uninterested in. But after a brief but non-violent dispute, she reneged and Julia tucked in to play and relax.

I think I'm starting to get the hang of my new 50mm prime lens, though I think it might be just about time for a flash to try to balance out the harsh light of the CFLs that we've been switching to. This is also probably just about the point where Liz will begin to regret encouraging me to get a hobby. :-)

Read and Post Comments

Fantastic Timing

Naturally, right at the height of the iPhone hooplah, the USB ports on the back of my 23" Apple Cinema Display would decide to die a sad and lonely death.

I woke up this morning to find that neither my keyboard nor mouse (the USB devices attached to the back of the ACD) would wake Serenity from its slumber. I gently caressed the power button on the front to trigger it to wake, and found that mouse and keyboard had left the building; it was totally unresponsive. I tried both ports on the back of the ACD and had the same result. So, like a good little geek trained in the scientific method, I started isolating variables, testing each of the USB ports on the Mac Pro itself (all good), testing other USB gizmos in the display (no joy), testing the display against each USB port on the Mac Pro (also no joy), testing a different keyboard and mouse against the display (nothing) and each of the ports on the box itself (all fine), and finally testing the display plugged into an entirely different Mac (still no luck).

My super-awesome wife has volunteered to call Apple tomorrow since I missed the cut-off time for the Apple Care hotline. I strongly suspect that Saturday or Sunday will involve another trip out to the Genius Bar, which I'm sure will be a delightful place to visit among the throngs of prospective iPhone buyers... Snarf. Hopefully they can just swap it out with a new display since it's still under warranty (just barely six months old!); I'd really hate to be without a display for days or weeks.

Meanwhile, I've discovered that there is great wisdom in never throwing out extra cables. (Hooray for USB extenders!)

Read and Post Comments

Awesomeness in the Absence of Awesomeness

Three cheers for my amazing wife, who this morning kicked my ass, made me go work out, and called Apple while I was taking out my frustration on the elliptical machine. She is a saint for putting up with me when I'm being a whiny little bitch (fairly infrequent these days, but still happens now and then).

After going through all of the standard stuff with Liz (to no avail), Apple scheduled an appointment for us, so this afternoon gets a surprise road trip with the MacPro. Let's just hope my precious doesn't have to be at the shop for too long... Either way, my computer-related plans for the weekend are pretty much shot.

Read and Post Comments

Next Page »