In 2025, my partner worked as a real estate photographer. Over the summer while I was pregnant, I took over planning his routes, and booking appointments with sellers or estate agents. I used a Spreadsheet—and wondered if there wasn’t a smarter way of doing it.
Whenever I’m faced with a problem, I start thinking about potential solutions.
Some years ago I redesigned a tickets app because it frustrated me, and a travel planner app because it intrigued me. I even did a Keynote presentation called Stop Complaining, Start Designing.
So while my partner worked as a real estate photographer, I took over planning his routes and booking appointments over the summer—at the very the peak of the house selling season.
Challenge
But the process of planning routes and calling to book the sellers or real estate agents required some serious calendar Tetris and braincell gymnastics. It was:
⚡️ Constant content switching between open tabs and different tools
⚡️ High stress when plans changed—often while on the phone with seller/agent
⚡️ General information and memory overload while having to make decisions
⚡️ High risk of making mistakes

The photography agency expected a reaction on new cases within 24 hours and a booked appointment within 5 days, preferably sooner, despite not wanting to compensate their photographers for the time.
Every minute I spent on planning and booking decreased our total earnings.
Discovery
The agency had provided access to their system where the cases came in, and they were working on expanding that system with planning and booking features. But progress was slow, very slow. My partner and I had many talks about how smart it could be–but just wasn’t.
Apart from having direct access to the photographer I was planning for, I was in the unique position where I was experiencing all the challenges myself. Every frustration immediately became an opportunity to improve the product.
But that also meant a solution needed to work instantly, because I desperately needed it, and I was still working under expectations from the agency.
Spreadsheet system
I very quickly built a Google Sheet for planning, not being able to keep all the information and calculations in my head without the risk of it exploding.
It started simple—a Google Maps integration calculated the travel distance, and a sheet with photography “Packages” added the time the appointment itself would take, depending on how much work. I also added a manual buffer to make up for traffic or road blocks on the way.
That way, I had a date and a realistic time I could offer the seller, and could book appointments back-to-back.

I also quickly upgraded with analytics, primarily using a calculated hourly rate, to help me plan more profitable routes. A pretty cool sheet if I may say so myself.
But it didn’t change the fact that I was still creating and checking the routes in Google Maps, copying and pasting like mad, 500 tabs open, and still having to keep too much information in my head. Now, I was also making copies of a Spreadsheet for each day I wanted to plan—yet another context on top.
Flexibility was the key
I also realised the biggest challenge was constantly having to make good decisions while the plan kept changing. Though it worked, my Spreadsheet just wasn’t flexible enough.
The biggest challenge was constantly having to make good decisions while the plan kept changing.
Every change rippled through the entire day: a seller didn’t answer, someone cancelled, a priority case came in, the weather changed, an estate agent closed earlier because it was friday. Hours of careful planning could disappear in a matter of seconds. I needed to be able to move things around, offer different time slots, and even predict future routes: this area this day, that area that day.
I was constantly juggling questions in my head. Can this appointment be moved to tomorrow? Is it worth driving another 20 minutes for a premium package? Where can I put this appointment? Should I wait and hope for a case coming in, in the same area? Can this key still be collected before the office closes? Will bad weather ruin today’s route? (Spoiler alert: yes, yes it will.)
Strategy
I turned to ChatGPT to help me build an app based on my Spreadsheet, and it suggested a webapp using React, Node.js and versioning with Git. Boy, was there a lot of trial, error and learning to find a good way to prompt, learn how to understand Reach code, move the project forward, and most difficult of all; keep that mothereffin context.
Whatever I spent time developing, I needed to be able to use right away.

But having all the power in the world (almost) is dangerous. A few times I fell into the hole of hey-I-wonder-if-it-can-do-this. Many times, I had to stop and question whether I was solving the right problem and working on the right thing.
Every time I disappeared into directing and implementing a new feature, the cases piled up. Any time spent on the product was time lost booking.
Process
Over the course of one month, Lumen and I—that’s what the ChatGPT decided to call itself—built “FotoFlow“—that’s what Lumen decided to call the project. Every feature was challenged against real-world use before becoming part of the system. You could roughly put the product in a few different phases, though the reality is of course way more messy than that.
MVP
A Spreadsheet to help me plan routes
✅ Could search, add and remove addresses as route stops
✅ Could add “start” and “stop” address, start time, buffer
✅ Could choose “photography package” to include work time in the route
✅ Could plan OK routes
❌ Couldn’t see the route – had to use Google Maps, first
❌ Still a lot of context switching and many Spreadsheet copies
❌ Couldn’t easily move stops around without having to update all the other route stops
❌ Still a lot of context switching and many Spreadsheet copies
❌ Couldn’t quickly offer a good alternative date and time
❌ Manually added case address and package type from agency system
❌ Very hard to plan for key pickups at the realtor’s offices
❌ Couldn’t plan for the weather
Route Planning
An app to replace the Spreadsheet
✅ Everything the Spreadsheet could do
✅ Could see the route on a map
✅ Less context-switching
✅ No more Copy of Copy of Copy of Copy of Spreadsheets!
✅ Reordering addresses updated the entire route 💚
✅ Could plan routes faster
⚠️ Import cases from agency system didn’t work
❌ Could only plan one route at a time and had to memorize the date
❌ Manually added case address and package type from agency system
❌ Could offer a slightly better alternative date and time
❌ Still hard to plan key pickups
❌ Still couldn’t plan for the weather
❌ Got a huge bill from Google for using Google Maps. Pleaded for my life and was given a discount.
Workdays Planning
Upgrades to better plan ahead
✅ Route Planning
✅ Could save and edit routes as a Workday with a date
✅ Saved Workdays sidebar sorted by date
✅ Easy to plan two different dates and times for each case as a backup
✅ Added realtor database with adresses and opening hours
✅ Planning key pickups much easier
❌ Still manually adding case address and package type
❌ Couldn’t sync with calendar in the agency system
❌ Still context switching with the Agency system
Informed Planning
Upgrades to better plan
✅ Route Planning
✅ Workdays Planning
✅ Could plan for the weather with forecast integration
✅ Planned better paid routes with route Statistics
✅ Added realtor database with adresses and opening hours
✅ Planning key pickups much easier
❌ Still manually adding case address and package type
❌ Still context switching with the Agency system
❌ Couldn’t sync with the agency system
❌ Couldn’t sync with the agency system
Future: AI Planning
Do it all for me!
✅ Route Planning
✅ Workdays Planning
✅ Informed Planning
✅ Statistics
💡 Integrated Planning
💡 Automated Planning
💡 Predictive Planning
❌ Didn’t get developed or implemented
Outcome
After just a month, Fotoflow had evolved well beyond the Spreadsheet I started out with. Almost from the get-go, the React application took over.
Despite being at the very peak of the season with loads of houses for sale, I was able to plan routes down to the last minute, and on really good days, my partner photographed 10 cases, earning more than 500dkk/hour.

Learnings
The project challenged how I had come to think about product development through many years of experience. It reminded me of where I started, and how I’ve always preferred working: solution-first, hands-on, build-test-build again.
Instead of treating product discovery as a lengthy phase before development, I experienced how discovery and implementation can happen together. I’m not saying this way is better—complex challenges require though-rough research—but it was quick-and-dirty and that was what I needed at the time.
The product became better not because I followed the original plan, but because I was willing to change or entirely abandon it.
And more importantly, it got me started with AI assisted product development. A big chuck of the time I spent on the project was managing and directing ChatGPT, trying different models, different approaches, learning how to prompt for the best output in a time before the Codex and Work features.
When it it’s easy to build, it becomes even more important to choose right.

This project was developed in collaboration with Lumen – an AI product partner specialised in product thinking, UX and technical exploration.