Last time, I wrote about turning Obsidian into Claude Code’s external memory. Riding that momentum, I decided to back up Claude Code’s own scattered settings next — the global config under ~/.claude/, each project’s .claude/, and my own scripts in ~/scripts/. None of it was under version control, so it would all vanish if the machine died.
I consolidated it into dotfiles and had Claude Code automate the whole thing. It promptly leaked a GCP service account key to my own GitHub repo. Here’s the screwup, the recovery I did on the spot, and the guardrails I built so it never happens again.
The most wasteful thing about using Claude Code, in my opinion, is that it loses all its memory the moment a session ends. Whatever tripped it up last time, whatever preferences I mentioned, whatever assumptions the project runs on — the second I start a new conversation, I’m explaining everything from scratch again. It’s brilliant, but it feels like calling a call center where you’re a stranger every single time.
In a previous post I wrote about youtube-to-obsidian. Since then I’ve wanted to turn PDFs and slide decks into notes the same way, so I wired in Microsoft’s MarkItDown to handle them. It’s no longer YouTube-only, so I renamed the repo to obsidian-import.
Now I can pull long academic PDFs, 100-plus-slide decks, lengthy blog posts, and TED talks into Obsidian as summary notes without reading or watching the whole thing. Instead of sitting through a one-hour video, I can skim a well-organized note in a few minutes. The input efficiency is on a different level.
Last time, I built a pipeline that automatically converts YouTube cooking videos into Obsidian recipe notes. It was just two scripts dropped straight into ~/scripts/, but it got me through 43 cooking videos. Since then I worked with Claude Code on a code review, added tests, set up CI, published it on GitHub, and eventually rebuilt it from a recipe-only tool into a general-purpose one. Here’s how that went.
My YouTube “watch and cook later” playlist had ballooned to 43 videos. I kept saving cooking videos and never actually using them — every time I stood in the kitchen I’d end up pulling out my phone and reopening YouTube, wondering “wait, how did that recipe go again?” I’ve lost count of how many times I’ve done that. I already manage my recipes in Obsidian, so if I could just convert the contents of these videos into Obsidian notes, the problem would go away. I gave it a shot with Cowork (the desktop version of Claude), and the process turned out to have more twists and turns than I expected — worth writing down.
Now that the blog is finally back from the dead, I figured I’d write a life update while I’m at it. Covering eight years in one post is a bit much, so here are a few of the bigger things that happened, roughly in order.
Since my last post, I’ve changed jobs two more times. Just counting the number might make me look fickle, but the criteria I use to pick a company have stayed consistent the whole time. One is: “how much benefit can this company realistically bring to Japan as a country?” The other is: “can I genuinely get behind what this company is trying to do, as if it were my own cause?” I’ve only moved when I could nod confidently on both counts. The jobs kept changing, but the yardstick never did.
Turns out my last update was back in 2018. Eight years. I’d left it sitting there for eight years. When I finally opened my own blog again, it wasn’t even rendering properly anymore. The build was permanently broken, every photo in every post was gone, and the code blocks were a mess. I thought this was my castle. Turned out it was a ruin.
I couldn’t just leave it like that, so I threw a lazy request at Claude Code: “CircleCI’s failing, can you fix it with GitHub Actions?” It ended up doing about three times more than I expected, so I’m writing it down.
A Porsche 911 Type 996 Carrera 4S, late model, registered in ‘04, fitted with a high-performance kit. Stock output is 320 ps, but the kit bumps it up to 345 ps.
Drivetrain: AWD
Engine: 3.6L flat-six, DOHC, 6-speed manual
Max output: 345 ps @ 6800 rpm
Max torque: 37.7 kgm @ 4750 rpm
Length x width x height: 4435 x 1830 x 1295 mm
Wheelbase: 2350 mm
Curb weight: 1520 kg
It’s naturally aspirated, but as a 4S it gets the same wide body, stronger brakes, and retuned suspension as the turbo model. The AWD system uses a multi-plate viscous coupling that shifts torque to the front axle anywhere from 5% up to 40%.
I’d left this blog untouched for two years, and in that time an insane number of unpublished photos piled up. I hadn’t even developed most of them, so I spent a weekend wrestling with Lightroom, blasted through a batch of edits, and now I’m posting them all at once.
A record of a solo trip I took from 2016/05/01 to 2016/05/04, three nights and four days, leaving my wife behind to work while I wandered off on my own. There’s no real point to it. Just a bunch of photos below.
On the 1st I took the Shinkansen from Tokyo to Hiroshima. Since I’d be staying at @WINGS1685’s place in Kyoto, I wanted to bring a souvenir, so I arrived at Tokyo Station about two hours before departure to buy the requested Toshimaya Kizahashi… or so I’d planned. I’d gotten the Shinkansen time wrong and couldn’t buy it. I’d originally booked the 13:00 departure, but since the night cruise to visit Miyajima at my hotel required dinner starting at 17:00, I’d changed it to 11:00 so I’d arrive around 16:00 — and then completely forgot I’d done that. So off to Hiroshima I went, empty-handed, getting an earful over chat the whole way.