A story

How I planned a two-week trip to Norway, one conversation at a time.

Not one long planning session — nine or ten short ones, spread across six weeks, in whichever app I happened to have open.

It started the way these things always start: half an idea, said out loud to ChatGPT on a Tuesday night because I was too tired to actually book anything. Somewhere between Norway and Iceland, leaning Norway, fjords over cities, second half of June. I didn’t save anything. I just closed the laptop and went to bed, the way you do when a trip is still more of a mood than a plan.

A week later I was back, this time actually comparing regions — the fjords stretch from Bergen up past Ålesund, and trying to do all of it in two weeks is how you end up seeing everything from a car window. I settled on the southwest corner: Bergen, then a slow loop through the fjords around Geiranger, nothing further north. I told it plainly: “Save the decision — southwest Norway only, Bergen plus the Geiranger fjords, not trying to cover the whole coast.” That was the first thing that actually existed anywhere outside my own head.

Three weeks in, the actual dates moved — work pushed my available window back by five days, which meant the ferry schedule I’d been planning around no longer worked the same way. I went back into the same conversation and said: “Update the trip dates — it’s now July 2 to 16, not June 18 to July 1.” The old dates didn’t just get quietly forgotten; they’re still sitting in the project as what I’d originally been planning around, kept as dated history — which turned out to matter two weeks later when I was double-checking against an email confirmation that still had the old range in it.

By early May I’d mostly stopped using ChatGPT for this and drifted over to Claude for the harder logistics — comparing car rental one-way fees between Bergen and Ålesund, working out whether the cabin I liked near Geiranger was actually bookable for our dates. First thing I did was ask it to check the trip project. It read the current dates and the southwest-only decision back to me correctly, despite the fact that I’d never told Claude any of this in the first place. I had told the other one.

One thing never got resolved, and I let it sit: whether to do the one-way rental (pricier, but no backtracking to Bergen) or a round trip and just eat the extra driving day. I told Claude to log it as open rather than force a decision I wasn’t ready to make — “still deciding, leaning one-way but haven’t checked the actual fee difference yet.” It stayed there, unresolved, for another ten days, which was fine. Not every question needs an answer the day you notice it.

The one time I reached for Gemini was almost an accident — I was already using it in Spark for something unrelated, and asked it, mostly out of curiosity, to check the trip project too. Spark could read it, the same way Claude and ChatGPT could, because I’d connected it the same way — through Spark specifically, not the ordinary Gemini chat I normally use. It just meant a third place now had the same current answer, without me typing any of it out again.

The rental question finally got resolved on a Sunday afternoon, cross-referencing actual prices: one-way it was, the fee difference was smaller than I’d assumed. Told Claude to resolve it, with that as the reason. Small thing, but it’s the kind of detail that would’ve otherwise lived in my head until I forgot I’d ever been unsure about it.

The night before we left, I didn’t scroll back through six weeks of half-finished conversations across three apps to remember what we’d actually decided. I opened the project itself — no assistant, nothing to ask — and it was all just there: Bergen and the Geiranger fjords, July 2 to 16, one-way rental, no open questions left. Nine or ten short conversations, on and off, across six weeks, and none of them had to remember the other ones. I just had to tell each one where to look.

Keep what you figure out with AI.

Want the short version of what this looks like as a product? See the trip-planning overview.