As I wrapped up my work yesterday, I looked around my home office and flashed back to my home office 30 years earlier. My “office” back then was a desk in a small one-bedroom Studio City apartment, with a single 3-shelf bookcase. Today, my office is a room off the living room, a former sun room with a dozen windows overlooking front, back and side yards. I stand writing this essay at a sit-stand desk, and instead of 1 small bookshelf, all four sides of my office are filled by overflowing bookcases.
The most remarkable thing, however, is the change in technology that has taken place over that three decade span. I stood at my desk last night, listening to Elvis Costello on a Bose Bluetooth speaker that sat on a shelf to my right, the music streaming from my iPhone which stood on a wireless charger on the opposite side of my desk. Instead of a single, bulky CRT on my desk, four flat screens sweep across the surface of my desk today: a MacBook Pro, connected to two large external monitors, my MacBook Air, all of which work in concert. The nest of wires that used to accumulate across my desk have been replaced by wireless keyboards and trackpads.
And the software! I remember installing Microsoft Office on something like 26 3-1/2-inch floppy disks. Now, I can download and install a much more advanced Office in far less time than I could install it from those floppy disks. And with tools like Claude and Claude Code, I have a personal assistant to handle routine things for me, leaving me more time to focus on the things that I am most interested in.
Still, despite all of these changes, some things don't change much. I am writing this essay in Vim, which I used back then, and which I have used off-and-on ever since. The muscle memory of the keyboard commands has become second nature. I still spend the vast majority of my time in Unix command line terminals, or in similar LLM chats. In some sense, with the advent of LLMs, UXs have started moving back toward the command line, an irony, which, as a command line enthusiast, I relish.
And while I can simply ask Siri to define or spell a word for me, I prefer to reach for one of the ten dictionaries that sit on a shelf beside my desk. And while streaming music is convenient, and I do it frequently, right here on a cabinet beside me, and sitting next to my ScanSnap ix1300 scanner, is a Victrola turntable, which my son got me as a present, and for which I have started to amass a small collection of vinyl, and which I much prefer for listening to things like Miles Davis' Kind of Blue or the Eagles' Hotel California.
One thing that old office had that my current office lacks is a cabinet full of file folders. Over the three-decade span, my files have slowly made their way into the digital realm, slowly at first, then at a more accelerated pace in the early 2010s when I adopted Evernote. When I gave up on Evernote in the early 2020s, I moved a lot of things into Obsidian, but I found that Obsidian was more of a tool for writing than managing an archive. So after searching around and looking at tools like DevonThink, among others, I finally built my own archive, first testing things out in what I call my Personal Archive System (PAS), and then really studying the problem the way an archivist would, and with the help of Claude Code, building a new and sophisticated command-line system called ark.
Today, ark hosts my entire archive, more than 670,000 items, including every email I've sent or received since late 1994, and digital documents going back to 1992, scanned documents going back to my birth, as well as a pipeline of continually updated data for capturing browser history, CLI history, my entire social media history, photos, calendars, diaries, blog posts, comments, reading history, annotations, Apple Health data, you name it, it is in the archive. The archive has a sophisticated search capability that allows not only full-text search, but embedded searches1 (every item gets an embedding, every photo gets an LLM description and embedding). Because I've created an MCP server2 for the archive, I can “chat” with the archive using Claude. And I've built an egress layer to prevent sensitive information from leaving my local machine (for sensitive data, embeddings and LLM activities use a local LLM3.)
This is a big difference to my office from 30 years ago. Instead of hunting through paper documents, or hacking my way through files in the file system, I can type a simple command on the command line, or even ask Claude, “What posts have I written about my desk?” and it does all of the grunt work for me. That, at least for me, is a change for the better.
(P.S.: if you are curious about Claude's answer to that question, here it is:
I can see the blog post titles clearly from the social media announcements. Here's what turned up — looks like you've written at least four dedicated desk posts:
- “My desk, annotated” (September 2010) — the earliest one, with an annotated look at your desk setup.
- “My Cluttered Desk” (May 2019) — a post about desk clutter.
- “The Desk and The Desktop: Musings on Productivity, Part 1” (April 2021) — a more reflective productivity piece.
- “A Newer Healthier Desk for My Office” (July 2021) — likely tied to the L-shaped electric standing desk you bought from Amazon in June 2021.
- “A Cluttered Desk” (August 2021) — another clutter-themed post, just a month later.
There's also a tweet from August 2021 quoting the Einstein line about cluttered desks and cluttered minds, which may have been a weekly recap referencing one of those posts.
Want me to pull up the full content of any of these?
I told Claude it didn't need to do that. I'll just link to them here instead.