The Era Beyond Coding
In today’s rapidly advancing field of artificial intelligence, software development is undergoing a profound transformation. Michael Truell, CEO of Cursor, introduced the concept of the “post-coding era” in a recent interview, suggesting that future software development will no longer rely on traditional programming languages but will instead use natural language to describe intentions for automated programming. This idea not only challenges existing development models but also opens up new possibilities for software creation.

Since the second half of last year, AI programming has gained significant traction.
Anysphere is considered one of the most successful companies in this field, with its flagship product, Cursor, achieving impressive milestones: reaching a $100 million ARR in just 20 months and $300 million ARR (approximately 2.1 billion RMB) within two years.
On May 1, Lenny’s Podcast interviewed Michael Truell, co-founder and CEO of Anysphere. In this conversation, Michael shared his vision for the future, lessons learned, and advice for preparing for the rapidly approaching AI future.
Here are the key insights and viewpoints from the interview:
- What is the post-coding era?
- The importance of taste in the post-coding era
- The origin story of Cursor
- Why build an IDE?
- Everyone needs to become an engineering manager
- Rapid iteration as the secret to Cursor’s success
- Tips for using Cursor
- Recruiting and building a strong team
1. What is the post-coding era?
Our goal in creating Cursor was to develop a new way of building software. You can automatically generate programming by simply describing your intentions to the computer in natural language.
In comparing this “new” approach to several popular views on the future of software, some believe that future software development will remain similar to today, still requiring formal programming languages like TypeScript, Go, C, and Rust. Others think that simply inputting commands for robots to write corresponding code will suffice.
However, both of these perspectives have their flaws. The notion that nothing will change is incorrect because technology will evolve and improve. The problem with chatbots is that they often lack precision; you need to continuously prompt them for modifications instead of broadly saying, “help me modify the application.”
The future will present a more unique perspective than either of these approaches. In this future, people will be able to edit and control details from a higher level, making it easier to understand and modify. It transcends traditional code, resembling pseudocode, where the expression of software logic is more akin to natural language. We are committed to evolving complex symbols and coding structures into forms that are easier for humans to read and edit.
2. The importance of taste in the post-coding era
We believe that ultimately, we will evolve to a stage where the development path requires the participation and promotion of existing professional engineers. It appears to be an evolution from code.
However, it is undeniable that this will be a human-led process. Humans will not relinquish control over all aspects of software.
In the post-coding era, taste will become increasingly valuable. Typically, taste is perceived in terms of visual effects, such as smoothness, color, UI, and other design aspects. However, I believe that defining software also encompasses its logic and operation.
This will define the intent of product design, i.e., how you expect the software to operate. This way of thinking will lead more people to see themselves as logic engineers rather than mere software developers. It elevates thinking to the abstract “what is” rather than lingering on “how to do it.” However, we still have a long way to go to achieve this.
There are many instances online where software developed due to over-reliance on AI has obvious flaws and issues. Despite this, in the future, people may not need to be so cautious and can focus more on taste. This is somewhat similar to Vibe Coding.
However, the creation of Vibe Coding has its issues. We create without understanding. In this state, you can produce a lot of code but fail to grasp the details, leading to numerous problems. If you don’t understand the underlying details, you will quickly find that what you create becomes too large and difficult to modify.
So, how can those who do not understand code control all the details? This is what interests us and is closely related to current professional developers. Additionally, I believe we currently lack the ability to let “taste” truly dominate software construction.
Taste can be understood as having a clear and correct vision of what should be built and turning that vision into reality. This requires a clear understanding of the software’s operational logic, effects, and how to achieve them. Unlike now, where after having an idea, one must translate it into a very tedious and cumbersome format that the computer can execute.
3. The origin story of Cursor
As one of the fastest-growing products in history, Cursor has not only changed how people develop software but also transformed the entire industry. So, how did Cursor, which changed everything, begin?
The inception of Cursor stemmed from our thoughts on how artificial intelligence will develop over the next decade. There were two decisive moments: the success of the Code Pilot beta, which introduced us to genuinely useful AI products, and the series of model scaling papers released by teams like OpenAI, confirming that simple scaling could enhance AI performance.
At the end of 2021 and the beginning of 2022, we were very optimistic about the development of AI. At that time, we felt that many people were discussing model creation, but no one was delving into a knowledge work field to explore how it would change after becoming AI-driven.
This led us on a path of exploration. We wanted to know how these knowledge work fields would change as this technology matured and how models needed to be improved to support these changes in work. Once the scale and initial training were exhausted, how would you continue to drive the development of technological capabilities?
To this end, we decided to develop Cursor. Of course, in the early stages, we made a mistake. We chose to study a relatively uncompetitive and dull knowledge area—automating mechanical engineering and product creation.
But neither my co-founder nor I were mechanical engineers, and we were very unfamiliar with this field. It was akin to blind men touching an elephant. For us, starting from zero meant a lot of tricky work.
For instance, developing models requires data, but there was very little 3D model data on parts and tools at the time, and sourcing it was problematic. Eventually, we realized that mechanical engineering was not our passion and not worth the effort.
Looking around, we found that the programming field had not changed much over the years and had not kept pace with future trends. There seemed to be insufficient ambition and urgency regarding the future direction of software development and how AI would reshape everything.
This led us to create Cursor. The lesson we learned is that even if a field seems overcrowded, if you find that existing solutions lack ambition or are significantly insufficient compared to your vision, there are still huge opportunities hidden within.
To seize opportunities, you first need to identify areas where significant leaps can be made. You need to find places where you can make a big impact. AI has provided us with a vast space to operate. I believe the ceiling in this field is very high. Currently, even the best tools have a massive amount of work to be done in the coming years, with significant room for improvement.
4. Why build an IDE?
When deciding to pursue programming, there were several paths we could take. One option was to create an IDE (Integrated Development Environment) for engineers and then incorporate AI into it; another was to build a complete AI agent development product; and the third was to create a model that excels at coding and focus on developing the best coding model.
Cursor’s focus on building an IDE stems from the desire for decision-making authority. We care about allowing humans to control all decisions in the final tools they are building.
In contrast, those who initially focused only on models or end-to-end automated programming were attempting to create an AI-dominated future. Our philosophy regarding AI decision-making is fundamentally different.
We have always approached current technology with a realistic mindset. However, I initially built the product using the software we developed (dogfooding), and we were the end users. This undoubtedly led us to believe that we needed humans to maintain control, as AI cannot handle everything.
Furthermore, the scalability of existing coding environments is very limited. To adapt to changes in programming forms, one must have control over the entire application. We believe that IDEs will develop more broadly than existing coding environments.
We can control them and build an entirely new environment. Of course, the form of IDEs will also change and evolve over time. For now, we primarily view IDEs as places to build software.
Cursor can allow AI to run independently, or humans and AI can collaborate before letting it work independently.
5. Everyone needs to become an engineering manager
When using AI Agents, many unsatisfactory results can still arise. It’s like humans are the engineering managers, and the Agents are the less intelligent subordinates.
As managers, we need to spend a lot of time reviewing, approving, and standardizing.
Thus, we observed that the most successful customers using AI remain very cautious. They heavily rely on “next-step programming predictions” to ensure that AI can predict the outcome of the next action they desire.
Overall, there are two ways to operate. One is to spend a lot of time editing operational instructions and then throw them all at AI, followed by reviewing their work. The other is to break down instructions. First, specify some tasks for the AI to work on, then review; specify more, let the AI work, and review again. This back-and-forth continues until a reasonable scope is achieved.
Successful customers often adopt the second approach.
6. Rapid iteration as the secret to Cursor’s success
When we began building Cursor, we were quite obsessive about it being something entirely new. Now, we develop software based on VS Code, similar to how many browsers use Chromium as a base.
Initially, we did not take this approach and built the Cursor prototype from scratch, which required a lot of work. We rapidly built various components at an incredible speed, starting from scratch with our own editor and then constructing the AI components.
About five weeks later, we began using our editor entirely. When we found it to be basically useful, we immediately let others use it and had a short testing period. Approximately three months later, we released Cursor. Our strategy was to release as quickly as possible and modify versions based on feedback. The initial user feedback was extremely valuable, prompting us to abandon the zero-based version and shift to developing based on VS Code.
Since then, we have iterated our product based on user feedback.
7. Tips for using Cursor
The success of using Cursor largely depends on understanding the capabilities of the model, including the complexity of tasks it can handle, the quality, the gaps, and what it can and cannot do. Currently, we have not effectively educated people on this aspect within the product.
To cultivate this intuition, I have two suggestions. First, as previously mentioned, do not lean towards telling the model all your instructions at once and then waiting for results. Instead, I would suggest breaking things down into different parts. You can spend roughly the same amount of time specifying the overall tasks but do so in a more granular way.
This way, you only need to specify a little bit to accomplish a small task, gradually leading to a complete outcome.
At the same time, I encourage current professional developers to discover the limits of what these models can do through experimentation. Many times, we do not give AI a fair chance and underestimate its capabilities. Tools like Cursor can provide immense benefits to both junior and senior engineers.
We have observed that junior engineers tend to rely too heavily on AI, while senior engineers often underestimate AI’s assistance and stick to existing workflows. For senior engineers, the promotion and adoption of such tools are driven by the internal developer experience (DevEx) teams within companies.
8. Recruiting and building a strong team
For us, having a team of world-class engineers and researchers developing Cursor alongside us is crucial. This is important for both personal and strategic reasons for the company.
Our goal is to find individuals with curiosity and a spirit of experimentation, as we need to build many new things. At the same time, it is important to remain clear-headed.
In addition to creating products, recruiting the right candidates is also a focus for us. We concentrate on finding what we consider world-class talent, sometimes spending years to recruit them.
However, I believe we were not very skilled at this approach initially. We have learned valuable lessons in the following areas:
- Who is the right candidate?
- Who adds real value to the team?
- What does excellence look like?
- How to attract those who are not actively looking for jobs?
In the early stages, we leaned too heavily towards seeking candidates who fit the prototype of prestigious schools, excelling in their academic performance. We placed too much emphasis on credentials, interests, and experience.
While this provided us with many excellent talents, they sometimes appeared different from our initial ideal candidates.
Another lesson was regarding the interview process. A core part of our interview strategy is to invite candidates to the company to work with us on a two-day project. This serves both as a test and an interaction.
The advantage is that it allows candidates to complete a real end-to-end project, showing actual output within two days without consuming a lot of the team’s time. It helps you assess whether you would want to work with this person, as you will be collaborating for two days.
Attracting candidates is also crucial, especially in the early stages of the company when the product is not yet mature.
Comments
Discussion is powered by Giscus (GitHub Discussions). Add
repo,repoID,category, andcategoryIDunder[params.comments.giscus]inhugo.tomlusing the values from the Giscus setup tool.