Maker's Notes: From Word Doc to Feature-Ready Relational Data in Hours
How a smarter workflow turned unstructured text into relational data, saving days of manual effort and accelerating feature development.
At Makers & Breakers, we dive into the art of creation and reinvention—building systems that matter, breaking down barriers, and reflecting on the lessons we uncover along the way.
Maker’s Notes is where I share personal insights and stories from the frontlines of product development, leadership, and tech. These reflections tackle the messy realities of building, breaking, and learning—designed to challenge assumptions and spark new ways of thinking.
The Pain of Manual Data Prep
Last week, while building a new feature for a client, I found myself staring at a 40-page unstructured and chaotic document. I knew the data needed to be imported into our database, but the process was daunting. If I had followed the usual routine, I’d have spent hours manually sorting the document, entering data into the application, or even writing SQL scripts and debugging issues.
Instead, I tried something different. I used Generative AI, working directly in Cursor IDE—nothing fancy or over-the-top. In just a couple of hours, I went from unstructured text to structured data ready for testing. The results weren’t perfect, but having something functional so quickly made it easy to spot and fix issues directly in the system.
What would have been days (or weeks) of manual work turned into a smooth, repeatable process. It was a win I knew I had to share.
Test Data Shouldn’t Be an Afterthought
When it comes to building and testing features, there’s one mistake I’ve seen over and over again: relying on garbage data. How many times have you seen demos—or built them yourself—using placeholder text like “asdf” or “test data 1”? Sure, it gets the job done at the moment, but it doesn’t tell you anything about how your feature will perform in the real world.
The importance of having quality data, even during first iterations, can’t be overstated. Realistic data lets you test edge cases, evaluate performance, and understand how users will interact with your feature. If production data isn’t available, tools like synthetic data generators can bridge the gap by creating structured, meaningful datasets that mimic real-world scenarios.
In this case, Generative AI quickly provided me with structured data, which allowed me to start testing functionality like search and filtering immediately. Although the data wasn’t perfect, it was close enough to uncover potential issues and make adjustments long before production.
How I Structured the Chaos
This wasn’t about relying on fancy tools or cutting-edge tech. It was about taking a deliberate, practical approach to solve the problem:
Break the Document Into Themes:
I started by splitting the document into smaller, logical chunks. This gave the AI clear boundaries and ensured the output aligned with the database schema.
Craft a Clear Prompt:
I focused on specifics. The AI needed to understand the relationships between entities, avoid duplicates, and generate SQL statements that matched our schema.
Iterate and Refine:
The AI’s output wasn’t flawless. Some IDs needed fixing, and minor adjustments were made along the way. However, the time saved compared to writing everything manually made these tweaks seem small.
Test and Adjust:
Once the data was in, I tested the feature with real examples, made changes, and quickly iterated.
What Worked (and What Needed Fixing)
The process wasn’t perfect, and that’s okay. AI isn’t magic—it’s a tool. Here’s what worked and where I had to adjust:
What Worked:
The workflow saved over 40 hours of manual effort.
The AI-generated data gave me a working starting point for testing and iteration.
Breaking the document into themes made the process easier to manage.
Great at providing ad-hoc data generation, e.g. TAGs.
What Needed Adjusting:
Some generated IDs were incorrect and had to be fixed manually. For example, the prompt instructed that all categories needed to be identified and created before the insert statements; sometimes, those category IDs were wrong, and I had to change the script manually.
A little upfront work (breaking the document and crafting prompts) was required to get good results.
Even with these minor issues, the time and energy saved far outweighed the effort.
Why Quality Data Shouldn’t Be Optional
This experience reinforced something I’ve been thinking about a lot: being a maker and a breaker is about working smarter. It’s about challenging old processes that slow us down and finding new ways to free up time and energy.
Generative AI isn’t perfect, but it’s a powerful tool when used thoughtfully. For me, it turned a frustrating process into a fast, repeatable workflow. It didn’t just save time—it made the work feel lighter.
But the real takeaway here is the importance of quality data. Whether you’re using production data, synthetic generators, or AI-assisted workflows, the closer you can get to realistic inputs, the better your results will be. Garbage data leads to garbage outcomes. Quality data opens the door to better features, smarter testing, and faster iterations.
So here’s my challenge to you: take a hard look at the processes eating up your time. What could you automate? What could you rethink? The tools are out there—you just need to experiment.
Let’s keep pushing forward.
— Luka