An interesting thing happened this weekend that allowed me to fully appreciate what it must be like to use a computer without the benefit of sight.
I have a nearly new Macbook Pro that has been seeing action in some rough circumstances of late, and while a relatively rugged machine, it is still a pretty delicate piece of expensive consumer electronics.
As the result of carelessness and daredevilry it ended up with a fancy Retina display of the busted variety.
I have multiple machines, so using this particular one as desktop until I can replace the display has worked out thus far with some minor annoyances here and there mostly related to having only an external display available.
Recently however, I was prompted to upgrade an application that makes use of a kernel extension.
This application has previously never given any issue, so I proceeded with the upgrade. Given that I was using the machine that evening and didn't want to be interrupted further, I elected to not restart when prompted to do so.
Once I was ready for sleep later, I hit the Restart button on the installer dialog, powered off the external display and called it a night.
That's odd, I thought the next morning; when I sat down to some usual daily activities, I noticed that the machine was no longer powered on. That was the first sign of trouble and the first step in a long path of troubleshooting.
I powered up the laptop — GOHHHHNG... so far, so good.
However, the external display did not spring to life as usual, and the indicator on it blinked away while the on-screen display showed that it was still seeking signal from the laptop.
Hmm, let's try turning it off an on again! Same behavior. Immediately, I did a few basic hardware level things. I reset the SMC with ⇧⌃⌥ plus power. I powered on with ⌘⌥-p-r and let the system restart once more...
Well this mystery was sure deepening.
I let the machine go and jumped onto another system, ran a quick
noticed no additional devices besides the ones I could account for on the
That's when it hit me: the upgraded application's kernel extension was probably interfering with the system's bootup! (the old "what changed last?" question)
I immediately tried booting into safe mode by holding ⇧ while powering on and waiting for the external display. Nothing happened, so I figured that external displays probably do not work in safe mode. As a last resort, I tried Recovery Mode with ⌘R while powering on.
I got a sync on the external screen, and a simple solid gray screen. Within seconds, a nice voice said, "To use English as the main language, press the Return key". So here I was, in the recovery mode, but unable to see anything!
I closed the lid on the machine and voila! There was the recovery mode interface staring back at me. At this point, I knew that I could beat this issue. There was just one little problem...
I had no external keyboard or pointing device on hand.
My plan was to disable the rogue kernel extension so that the machine could normally boot again. At first I was tempted to obtain an external keyboard and mouse so that I could keep the lid closed and proceed with my plan.
Then, I though why not try to have the computer help me fix it? and with that, I proceeded to enable VoiceOver with ⌘F5 and follow its lead with the laptop open by using nothing but keyboard navigation.
The steps were roughly as follows:
- Open Disk Utility
- Mount / unlock my primary disk
- Open Terminal
- Locate and remove the offending kernel extension
All of the above was carefully performed with a bit of trial and error over the course of approximately 10 minutes. During this whole time, I was constantly mindful that this is what it is like for visually impaired persons to use a Mac every single day.
After the reboot, my trusty Macbook Pro was back in action and I found myself both completely proud and profoundly humbled by the experience.