DEV Community

Rudolf Olah
Rudolf Olah

Posted on

AI Speeds Up Idea Discovery and Prototyping

I spent a weekend making my legacy XML parser faster than libraries people actually use, in a few benchmarks anyway. Nobody will use it, and that's the point. Software engineers have a lot of ideas they want to work on. AI compresses the time it takes to implement and prototype an idea to see if the overall idea is sound. Previously this process could take weeks and months. Now, the economics have changed, making it affordable to explore many ideas, learn from them, and decide whether to discard or move ahead with maximum effort.

Opportunity Cost

There is an opportunity cost to pursuing ideas and side projects for engineers. Instead of spending time developing project A, they could have spent more time on project B which resonates more with users of that project. Instead of spending time on routine tasks such as adding linting and formatting rules, and a basic continuous integration setup, software engineers get their time back and can use it to think and to learn.

Reviving a Past Project

For example, in the distant past I wrote an XML parser in C++. It worked for my purposes at the time, and then I stopped maintaining it. It had just enough documentation, the API was just good enough, and it worked with some set of C++ compilers. However there's a new minimum set of expectations for any project. You can see it when you visit any newly announced open source project, there must be an outstanding website with documentation, instructions on how to install and use it, a thorough test suite, a well-documented process for reporting bugs. My XML parser project didn't have any of that.

In 2025 and 2026, I used Claude Code to:

  • create a test suite
  • build a GitHub Action to automatically generate the API documentation using Doxygen
  • compile the C++ library for different operating systems with a GitHub Action

I used that time savings to research and to work on other side projects. Previously, without AI agents, to get projects up to the minimum expectation that other developers have would take far more effort.

Most recently I used omp, an AI agent harness, with GPT to revisit the code. This time, instead of routine maintenance tasks, I pointed the AI agent to benchmark my XML parser against the alternative C++ XML parser libraries. Then, I prompted it to implement improvements that match or beat the slowest of the alternatives.

While the omp AI agent was running in the background, I went about my life. I made a coffee, walked the dog, sat outside and read a book. After all that, I returned to check on it, and my XML parser library was much faster in a subset of benchmarks. Then I typed, well why not make it at least as fast as the next library? So it spent much of the day doing that. In the past, I would have taken time for each step of the process and it would have taken weeks of evenings and weekends to discover and implement the improvements. Using that time savings, I chose to refresh my knowledge about those speed improvements. For those curious, the improvements included reducing string copying and object pool allocation.

And that's the end of it, my XML parser is not open source, the C++ speed improvements won't be available, I won't be charging a license fee, or trying to make it the fastest or most popular XML parser library. So why go through this exercise? Just for fun.

Speeding up the Future

Now think about all the software engineers you know. They have so many ideas for utility apps, games, useful libraries, and automation tools. "Wouldn't it be cool if...Why not try this novel technique and algorithm..." Those can all be done with the purpose of learning how far the idea could go and what the limits of the idea are.

Many engineers have ideas for startups, and some of those ideas may not be appealing to the market. Building out the idea sooner to see and understand the general solution space can lead an engineer to re-consider how much time and effort they'll spend on that idea. Or it may encourage them to get customer validation sooner which can guide them towards more interesting projects that are (slightly) more commercially viable.

AI agents help by enabling faster discovery of the contours of the solution space, and can speed up prototyping. For engineers with side projects, this means being able to learn and understand more about the system design, and being okay with taking many projects to their conclusion much sooner. It's always been known in computer science and software development that we have to simultaneously think about both the small, bytes and CPU instructions, and the big, networked systems with more layers of complexity. This same zooming between the high level and low level applies to ambition and the size of a project. Why not dream bigger?

Unfinished side projects for software engineers could feel like a negative, especially when there was the kernel of a good idea within them. AI agents help to find that value through the compression of the time it takes to explore various paths.

Top comments (0)