I’ve been exploring the use of Artificial Intelligence in my work in depth. I fell in love from the first days. For me, the internet has always been a valley of magical discoveries. A technology that gives me the internet exactly the way I want it is a kind of magic you don’t see twice in a lifetime.
I work as Head of Product at deco, a Brazilian technology startup. There is a product that could never have been made before and that enchants its users with the power that comes from using it. I work looking for that product.
As someone in the technical-scientific-informational world, my productive time is split between:
-
Research
-
Creation
The split is only didactic, since excellence demands a deep and continuous mix of the two. But Research and Creation exercise distinct skills and leverage AI in different ways. In both, I’ve been satisfied with the progress.
Research
Every good piece of work starts with research. Almost with the same rigor as scientific research in universities. In the past, that was expensive and out of reach in most professions. Now, a few-second prompt to a Deep Research model generates a report that would take hours — and few people would do.
My uses of AI in research are:
-
Condensing information from some lengthy content (e.g. a talk or a long article)
-
Discovering prior work in that area (e.g. “are there already protocols for standardizing CRUD operations?”)
-
Exploring and crossing different themes (e.g. type theory, TypeScript, and game dev)
The most fun part is the exploration process — discovering each of the small things your questions reveal about the world.
The quality of the end result depends directly on the quality and insistence of my questions.
Research matters so that every team meeting is backed by a document, generated by AI research, about the topic to be discussed. If possible, with suggestions that take into account the company’s context and the people in the room. That reduces the time spent on communication that has a lot of noise and little progress.
Creation
The main impact of AI doesn’t come from autonomous creation, which has its place. It comes from turning the computer into a pluripotent megazord where every keystroke has the symbolic effect of a giant tractor advancing through a construction site. I felt that in my fingers for the first time using Cursor.
Programming has an important role in my life. The first things I was proud of making were web pages that brought forms and tables for people to use. Over the years, it became more and more intimate, and I grew more attached to it.
Cursor gave me another relationship with programming. It involves a new way of communicating and, like every good relationship, some effort to enjoy all the benefits. In return, I’ve never been happier with what we’ve been building together.
By far, the best thing AIs do is program. I admire, absorb, and enjoy image, video, and music generation models. But the power available in creating code — which can orchestrate other models — is disproportionately more exciting. I believe absolutely everyone should taste that.
Even if a project doesn’t involve producing software, it’s always worth making software. For any situation. I’ve been living under that premise for the last month and I haven’t been disappointed.
The most fun applications are the smallest ones. The ones that would never cross our minds because they used to be too expensive to make. For example, last Monday I made an app to help me rehearse a presentation — and it helped!
Some I call concept applications: a UX proposal to discuss with the team on top of a semi-functional prototype. SchemaOS is one of those applications. My full prompt history that generated that app is in the .specstory folder thanks to this Cursor extension that I love.
The slope of complexity
Without control, agents stop shining very quickly. As soon as the solution gets more complete, bugs start happening and a stressful situation sets in. That’s the biggest frustration with AI, but there are ways to avoid it.
What has worked for me is creating a specific document. It brings a detailed proposal for the intended system and is co-created with a contextualized agent. The document should answer:
-
What are the main features of this software? → Tools
-
What data sources will be used? → MCP dependencies
-
What are the data structures of the problem? → Database schemas
-
What workflows are vital for the system to work well? → Workflows
-
How will the user interact with the solution? With screens, if possible. → Views
This one is an example of a simple specific document, without database persistence.
After the document is created and after intense and permanent review of new versions (correcting the document at least 7 times in the Cursor chat), you have a powerful artifact for programming the software. All that’s left is implementation.
From that document, coding agents like Claude Code, Gemini CLI, or Cursor create 100% functional code in most cases. One of the extra secrets is using a unified stack and platform for AI development (that’s what we do at deco).
In other words: for a year now, I’ve been programming without writing a line of code.
Even in more pointed changes, expressing expected behavior or “fix the hover on the save button” becomes more natural than thinking through the implementation details that make the app work. With robust TypeScript-based frameworks and tools made for AI, I feel at ease.
For evolutions, it’s the same process: create a document (I usually use a new .md text file in the /plans folder at the project root) that details what’s being asked, with commented code snippets working as instructions. It’s interesting to try different models to assemble the document and to implement.
The main models I’ve been using are Claude Sonnet and GPT-5. Sonnet never disappoints. GPT-5 sometimes surprises.

