Category Archives: Uncategorized

A new lease on life

Two weeks ago I underwent surgery to replace both of my hip joints. I’d been having trouble since the summer of 2012, when running became painful and I found that I couldn’t mount my bicycle by swinging my leg over the seat. These were signs of what would be diagnosed, in April 2015, as moderate-to-severe osteoarthritis. It could have been diagnosed two years earlier, when I presented symptoms I identified as a groin pull and pain in my quads. But I was still able to be very active then and, after a round of physical therapy, regained much of the range of motion I’d lost the year before. Deep down I knew something was really wrong but I convinced my doctor and physical therapist that it was all muscular, that I’d be able to work through it, and that there was no need for an x-ray.

In reality the disease was progressing, and although I returned to cycling, hiking, and running, things never felt right. There were other signs. During my final season of firewood stacking, in the summer of 2013, I found myself sitting on a bench pitching logs. Around the same time I tried working at a standing desk but quickly abandoned that experiment. Stretching didn’t help because it couldn’t. Cartilage was eroding, bone spurs were deforming the balls of my femurs.

After our move to California last year, the signs became impossible to ignore. Halfway through a 12-mile hike at Point Reyes I had to admit I was in real trouble. I went to see Luann’s physical therapist, he leveled with me, and I just about took the poor guy’s head off. Being active is incredibly important to me, I’ve always feared loss of mobility, and I catastrophized the situation.

Conventional wisdom has been that you want to postpone surgery as long as possible. That would mean years of increasing pain and loss of function. I visited the surgeon who would ultimately fix me, Briant Smith, and learned two vital facts. First, the hardware has improved so much that there’s less incentive to delay surgery in order to avoid a repeat. Second, the anterior direct method is massively superior to earlier methods.

Direct anterior hip replacement is a minimally invasive surgical technique. This approach involves a 3 to 4 inch incision on the front of the hip that allows the joint to be replaced by moving muscles aside along their natural tissue planes, without detaching any tendons. This approach often results in quicker recovery, less pain, and more normal function after hip replacement. Because the tendons aren’t detached from the hip during direct anterior hip replacement, hip precautions are typically not necessary. This allows patients to return to normal daily activities shortly after surgery with a reduced risk of dislocation.

At that point I didn’t know when this would happen. Years? Months? Dr. Smith said: “When you can’t take it anymore, we’ll fix it.” A month later I was in San Francisco for a week-long series of events. The first morning I walked two miles, a distance that had been well within my tolerance until then, and was incapacitated. I hobbled through the week, unable to sleep, and pinged Dr. Smith. “Sometimes the progression is linear,” he said, “and sometimes you fall off a cliff.”

On my next visit we discussed tactics. Most bilateral hip replacements are done serially, so you’ve got one relatively good leg to stand on during recovery. In my case, both joints were about equally bad. Should I replace both at once? My primary doc didn’t recommend that. And Dr. Smith didn’t exactly recommend it either. But he let me know that it’s doable. “It’s a big wallop,” he said, and a slower recovery, but people in my cohort — athletic, mid-to-late fifties (I’m 58) — are having successful outcomes, and it’s great to get it over with in one go.

So I signed up for the twofer, and then had a few months to wait, research the topic, and talk to veterans of the bilateral procedure. People were reporting almost unbelievably good outcomes. One fellow I met told me that his post-surgical pain was so minor that he’d needed nothing stronger than Tylenol to control it.

And that’s exactly how it went for me. An hour after surgery I walked from the hospital bed to a recliner, using a walker for safety more than for support. The next day I walked 500 feet, not because I was pushing myself but because the physical therapist invited me to and was confident that I could do it safely. The day after that I walked 1000 feet, navigated some steps in the PT gym to ensure I’d be OK entering our house, and went home.

It really was a big wallop, and the energy that’s gone into healing hasn’t left much for higher-order brain function. I’m sleeping a lot, and only gradually getting up to speed with my work. But I’m gaining mobility, strength, and flexibility every day. I used the walker for a week, then graduated to hiking poles — again, more for security than for support. And despite having major carpentry work done to both sides of my skeleton — hammers, saws, dremels — the pain has been minimal, and I too have needed nothing stronger than Tylenol. It’s reasonable to expect that I’ll be hiking and cycling in a month or so, and doing those things pain-free for the first time in years. My range of motion is already better along some axes than it was two weeks ago, and should continue to improve. There’s residual numbness in the skin over my quads, and some puffiness around the incisions, but these effects are normal and should resolve. (No staples or stitches, if you were wondering, they use superglue now.)

What accounts for this astonishingly good outcome? It seems to be a combination of factors. Hip repair has always been more straightforward than knee or shoulder repair, and with the anterior direct method it’s radically better than it was. That’s a recent development, my surgeon only began using the technique five years ago. But the physical therapist and occupational therapist in the hospital told me that they’ve only been seeing outcomes like mine for about two years.

What changed? There’s some fancy gear involved. The Hana table, for example, enables precise positioning, but it’s been around for longer than two years. Maturation of surgical technique is clearly a key factor. When I asked Dr. Smith about this, he said: “Speed matters.” It only took three hours to upgrade both of my hips. I was reminded of Atul Gawande’s 2007 New Yorker story The Checklist, a precursor to The Checklist Manifesto. Part of that story follows a team in Austria that had tried unsuccessfully to resuscitate people who drowned or were buried in avalanches, then managed to save one person, and soon afterward several more.

One step went right after another. And, because of the speed with which they did it, she had a chance.

Another key factor, I suspect, is that surgeons are seeing more patients like me: active people in their fifties who want to stay active, and who are realizing that surgery — this one in particular — need not be postponed.

It’s still not a walk in the park. I’m moving slowly, and there’s a long road ahead. But two weeks ago, every step I took made things worse. Now every step I take makes things better. It’s miraculous, and I could not be more grateful. For most of human history my condition meant a lifetime of diminishing mobility and increasing pain that medicine could do nothing to help. Within my lifetime a fix became possible. In just the last two years it’s gotten incredibly good. I’m well aware that there’s plenty that can’t be fixed at all, never mind fixed so well. I know I’m a lucky guy to be here in 2015 and, crucially, to have health insurance. But I also think Dr. Smith is a lucky guy. Being able to improve lives in the way he has improved mine, day in and day out, has to be an amazing joy and privilege.

A Labor Day meditation on the future of work

I’ve always felt weird about my interview with Jeff Bezos. Amazon’s PR people set it up as a follow-on to a keynote he gave, in 2006, about the suite of web services then coming online: cloud-based storage, computing, and human labor (i.e. Mechanical Turk). This was for InfoWorld, back when it was a magazine printed on paper. The PR folks were determined that we would put Bezos on the cover. We’d already written about all that stuff, so that wasn’t going to happen unless the keynote yielded something new and important.

Predictably it didn’t. But as they led me to the backstage room for the interview they kept pushing for the cover. And something must have snapped. Because when I pointed my camcorder at Amazon’s CEO and began talking, I became somebody I’d never been before and have never been since: the pushy reporter who is determined to frame a narrative, who steers the interview that way, and who interrupts all efforts on the subject’s part to answer questions not asked.

I’m not linking to the video because I still feel conflicted about it, but it’s on YouTube and I watched part of it recently in the wake of the New York Times story about Amazon’s workplace culture. Mechanical Turk was top of mind for me when I did that interview. I had been a customer of a Turk-based service called CastingWords, to which I had outsourced the transcription of several of my then-weekly podcasts. To prepare for the interview I signed up as a Turker and walked a mile in the shoes of a podcast transcriber. Here’s how I reported the experience at the time:

Podcasts are chopped up into six-minute segments. Last night, the segment I transcribed was worth $1.02, which will be credited to my account (and can then be transferred to a bank account) if my work passes several quality review checks. These checks are themselves implemented as HITs [human intelligence tasks].

My encounter with Turk Work wasn’t very satisfying. There was no context, no orderly progression, no sense of collaboration, no awareness of (or pride in) a finished product. If you’re running an MTurk-enabled business, you have to focus on throughput and efficiency. That drives you toward assembly-line tactics. But as Nathan McFarland noted in our conversation, you’d also like to reward excellence:

“We’d be willing to pay certain workers more and other workers less, but that’s not an option right now.”

So for now, that’s a hard constraint. Here’s another. From my perspective as a CastingWords customer, there are clearly some transcribers who have a better feel for my material than others. I don’t know who they are, though, or who’s transcribed which parts of various podcasts. If the goal is maximum throughput, that may be necessary. But that’s not my goal. Transcribing 620 minutes of audio for $260 in six days was darned impressive, but two months later I’m still only halfway through the final polishing, which I’m tackling in fits and starts. If this winds up being a long-term relationship, I’d rather identify the transcribers who do well on my stuff and give them whole tasks. And some transcribers would likely prefer that too. I sure would. Apart from the question of whether it’s in CastingWords’ interest to allow such relationships to form, the current MTurk architecture precludes the possibility.

I pressed Bezos hard on that point. Too hard, some thought at the time. Perhaps they were right. Perhaps it was none of my business to suggest that Mechanical Turk ought to optimize for worker satisfaction as well as for throughput.

My first encounter with a digital sweatshop was in 1993, in Bombay (as it was called then). I was visiting a software industrial park. In one company’s office I saw a room full of desks at which workers were digitizing maps of US telecommunication infrastructure. It seemed like dehumanizing work. Then I looked out the window at laborers carrying piles of bricks on their heads in 100-degree-Fahrenheit heat and realized that those map digitizers, in their air-conditioned office, had some of the best jobs in town.

I have no inside knowledge of Amazon’s blue-collar or white-collar workplace cultures, so I’m in no position to judge. Given that MTurk was a forerunner of the gig economy, though, here’s the follow-up question I wish I’d asked Jeff Bezos then and would still like to ask now. Do you believe that optimizing for customer satisfaction and worker satisfaction is a zero-sum game?

“It is always quiet enough to talk”

Our favorite local spot in Santa Rosa so far is The Toad in the Hole. It’s an English-style pub on the west end of downtown, an easy walk from our house. We like their brews, we like their Cornish pasty, and most of all we like their atmosphere. Sports bars aren’t really our thing, nor is soccer, but while soccer games are often playing on TV, they’re not intrusive and not usually a focus of attention.

Toad in the Hole wants to be a place where people come together to talk. The flip side of the menu reprints a 1946 George Orwell essay, The Moon Under Water, a fictionalized amalgam of the best features of all the pubs he knew and loved. At the center of the essay is this pivotal sentence:

“In the Moon Under Water it is always quiet enough to talk.”

I’m not any kind of audiophile but I’ve long been bothered by the awful acoustics in so many establishments. It’s hard to have a conversation in a room full of music and voices bouncing off hard surfaces. And while it’s easy to mitigate those sounds with baffles, that’s rarely done. One reason Toad in the Hole lives up to Orwell’s ideal is that it gets that right. It eluded me on our first few visits, but the other night I looked up and saw this:

You can see two acoustic baffles hangling from the ceiling. There are more like that all around the perimeter. It’s a subtle thing that most patrons may not notice. But it makes a huge difference!

It’s also a nice lesson in product design. Vanish into the woodwork, solve problems that people may not even recognize in a way they may not even notice, and let them just get on with what they care about.

Farewell to bookmarklets

The Hypothesis web annotation system is a browser-based application that talks to an annotation server, finds annotations for the current page (if any), highlights the selections to which the annotations refer, and dispays them in a sidebar alongside the page. We load a fair bit of JavaScript to do our job, and in the olden days we would simply have relied on bookmarklets to activate that code.

But times change, and bookmarklets are mostly dead. They’re not all dead yet. I expect I’ll still be able to use simple ones, like‘s, for a long time to come. But a new security regime limits the scope of what bookmarklets can do, and is forcing developers to create browser extensions instead — extensions that must be created and deployed differently for each browser.

So the realm of web applications that extend the browser is now becoming as balkanized as the realm of mobile apps. Developers target the dominant platform first — currently, that’s Chrome — and then port their extensions to other browsers as and when they can.

There’s another way to add behavior to a web page, though. You can send the page through an intermediate server (a proxy) that injects that behavior as the bookmarklet or extension would do. The Hypothesis proxy is, and you can use it to activate annotation for any web page — including this one — like so:

The nice thing about this combo URL is that you can share the annotated page along with its annotation layer. Of course there are tradeoffs:

– Properly rewriting all the URLs in the proxied page is a tricky business.

– You can’t annotate pages behind paywalls (as you can with our bookmarklet and Chrome extension).

– You still need a way to activate the annotation layer for the current page. (You can use a bookmarklet to redirect to the proxy, but … sigh.)

The upshot is that we’re struggling to simplify the decision tree that Hypothesis users must traverse. You want to activate annotation for your current page? If in Chrome, install the extension, otherwise for Firefox or Safari or IE use the bookmarklet, unless the page enforces Content Security Policy, in which case use the proxy, unless the page is behind a paywall, in which case, sorry, you’re out of luck.

And that’s just for the desktop! Mobile browsers make things even crazier. I’m able to perform the gymnastics required to use the Hypothesis bookmarklet on my Windows Phone, on my iPhone, and (most acrobatically) on my Android tablet, and I really need to document those procedures, but it’s so depressing I’ve avoided doing so.

What seems most promising, for mobile browsers, is to add Hypothesis as an option that shows up when you ask to Share a web page. Activating annotation for the current page isn’t really Sharing, but the Share mechanism looks like the sanest way to redirect through the proxy, which in turn looks like the sanest way to activate the annotation layer in mobile browsers.

It looks reasonably straightforward to create an Android app that shows up when you Share a page and broadcasts the intent to view the proxied version of that page. Things look a bit more complex on iOS. Should there be a Safari-specific extension that redirects to the proxy? A system-wide Share extension that Chrome could also use? Both?

Of course activating Hypothesis on the mobile browser is only half the battle. As a sidebar-based app we manage pretty well on the desktop and large tablets, but are uncomfortable on smaller screens. If we’re routing through a proxy anyway, maybe the proxy should also do a Readability-style rewrite to simplify the page. We’re good at fuzzy anchoring and can anchor annotations to different representations of the “same” document.

There’s lots to do, and while bookmarklets will continue to help us do it, their era is over. Browsers are more standards-compliant than ever, which makes our mission to bring an annotation layer to the web easier than it would have been five or ten years ago. But browsers are now also less easily extensible and that’s a new challenge.

My last run

Here’s a picture of my last run.

I don’t mean last as in most recent. I mean last in my lifetime. What I thought was a groin pull a few years ago turns out to have been hip osteoarthritis.

So that sucks. It isn’t life-threatening. I am OK and will be better. It’s not breast cancer, or macular degeneration, or any number of worse things that friends and family have suffered through. I get that. But it’s going to be a hell of an adjustment for me. I’m an active person. I was always planning to be that guy who does mini-triathlons into his 80s. Turns out that wasn’t in the cards.

There’s a tendency to blame yourself. If only I hadn’t been a runner all those years. Or maybe if I hadn’t been a gymnast before that, and landed hard a bunch of times. But the orthopedic surgeon who will repair me, at some point, said no. It’s not your fault. Plenty of people run in their 80s. Some gene now being expressed says you’re not one of them.

I guess the strangest part of the experience is that I never located the problem in my hip. Or, actually, in both of them. Hip osteoarthritis can manifest as groin pain, so that’s what I told myself was happening — and only on the right side. Yeah, it shouldn’t go on for 3 years. Yeah, your quads shouldn’t hurt like hell after a run or a long hike. Yeah, you shouldn’t dramatically lose range of motion in your legs. Yeah, it shouldn’t keep you up at night.

But the brain is powerful. It enabled me to believe, for several years, that this was just one of those soft-tissue injuries I’ve worked through in the past. With stretching, and the right kind of exercise, I’d get through it, just like I always have.

Then I went to see Luann’s physical therapist and he leveled with me. This was 99% certain to be osteoarthritis. There was no other explanation for my symptoms. I feel bad for the PT because I went kinda ballistic on him. I knew he was right, and I started cursing like a sailor because I knew what it meant.

And suddenly things felt different. I began to visualize what was going on in my joints, and my subjective experience began to shift. A week later the orthopedic surgeon showed me the X-rays and that really clinched it. The balls in both of my ball-and-socket joints are deformed, it’ll get worse until I cry uncle and replace them. I’m feeling that now in a way I was denying for years.

The good news is that we live in a time when that’s possible. And that hips are way easier than knees. (Luann already replaced one, may face another.) And that we have health insurance. And that we’ve moved to a place where cycling — my best exercise at this point — is a year-round activity.

I don’t know if I’ll pull the trigger in a year, or two, or five. I’m guessing not longer than that. I took a 2-hour hike yesterday and I’m really feeling it today. That’ll only get worse. When they fix me I should be fine doing things like that.

But no more running, ever. I’ll adjust. But it’s hard to let go. And it’s hard to explain to Tuck. We brought him home in 2009, he was our first dog ever, and he got the job because he was the best of his siblings at running alongside me. Now he looks at me and wonders why we don’t do that anymore. Sorry, pal. Really wish we could.

Adventures in annotation

I just wrote my first blog post for Hypothesis, the web annotation startup I joined recently. In the post I talk about how a specific feature of the annotator — its ability to sync annotations across local and/or web-based copies of the same file — illustrates a general approach to working with copies of resources that may live in many places and answer to many names.

When I finished drafting the post I pinged Dan Whaley, founder of Hypothesis, to review it. Here’s the IRC chat transcript:


Dan: I'm annotating!

Jon: The preview URL?

Dan: :-)

I was a bit surprised. The preview URL was password-protected but annotations against it would not be, they’d show up in the public annotation stream. But hey, I’m all about transparency when appropriate, so bring it!

Over the next few minutes we traded annotations and I tweaked the post. Here’s a picture of Dan asking to add space around an element.

And then jgmac1106 jumped in.

That’s Greg McVerry, an enthusiastic user of Hypothesis. I’d been in touch with him earlier that day because he’d asked a question about local annotation of PDFs, we’d conversed, and I wrote the post partly to answer the question as broadly as possible. I couldn’t easily grant him access to the preview, but I’d sent him a copy of the post as an attachment. And suddenly there he was, contributing to the collaborative edit that Dan and I were doing. It was a nice surprise!

After I published the post I got another nice surprise. I had realized that the annotations on the preview would remain visible in Hypothesis. But when I cited it in an internal forum, Dan responded with the canonical WordPress URL,, and when I loaded that into a tab where Hypothesis was active, all the preview annotations were intact.

It took me a minute to realize how that was possible. A WordPress preview URL knows the eventual URL at which a post will appear, and encodes it in the HEAD section of the HTML document like so:

<link rel=”canonical” href=””&gt;

When the Hypothesis service receives an annotation for the preview URL that declares a canonical URL, it remembers both as aliases of one another. That is, of course, exactly the point I was making in the post.

We hadn’t planned on this but, as a result, you can see the chatter that preceded publication of the post, as well as chatter since, through the lens of Hypothesis, at either the preview URL or the published URL.

Note that you don’t need to install the Hypothesis extension, or use the bookmarklet, to load Hypothesis on our blog, because it’s already embedded there. You only need to activate Hypothesis as shown here (click to play the mini-screencast).

I haven’t thought through all the collaborative possibilites this will enable, but it sure makes my spidey sense tingle.

Annotating the web: my new job

I’m delighted to announce that I’ll start a new job tomorrow, as product manager for Hypothesis. We’re a small team chartered to build open annotation software for the web. We expect it will be useful in many domains, including education, science, journalism, and government.

Some of you who know me in one or another of those contexts will be hearing from me in coming weeks. I’ll want to know how you annotate the web now, what you need annotation software to be, and how we can work together to meet that need.

I’ve long imagined a standards-based annotation layer for the web. Now’s my chance to help make it real. Exciting! If you’d like to get involved, ping judell at