Hacker News new | past | comments | ask | show | jobs | submit login

I experimented with vibe coding [0] yesterday to build a Pomodoro timer app [1] and had a mixed experience.

The process - instead of typing code, I mostly just talked (voice commands) to an AI coding assistant - in this case, Claude Sonnet 3.7 with GitHub Copilot in Visual Studio Code and the macOS built-in Dictation app. After each change, I’d check if it was implemented correctly and if it looked good in the app. I’d review the code to see if there are any mistakes. If I want any changes, I will ask AI to fix it and again review the code. The code is open source and available in GitHub [2].

On one hand, it was amazing to see how quickly the ideas in my head were turning into real code. Yes reviewing the code take time, but it is far less than if I were to write all that code myself. On the other hand, it was eye-opening to realize that I need to be diligent about reviewing the code written by AI and ensuring that my code is secure, performant and architecturally stable. There were a few occasions when AI wouldn't realize there is a mistake (at one time, a compile error) and I had to tell it to fix it.

No doubt that AI assisted programming is changing how we build software. It gives you a pretty good starting point, it will take you almost 70-80% there. But a production grade application at scale requires a lot more work on architecture, system design, database, observability and end to end integration.

So I believe we developers need to adapt and understand these concepts deeply. We’ll need to be good at:

  - Reading code - Understanding, verifying and correcting the code written by AI
  - Systems thinking - understand the big picture and how different components interact with each other
  - Guiding the AI system - giving clear instructions about what you want it to do
  - Architecture and optimization - Ensuring the underlying structure is solid and performance is good
  - Understand the programming language - without this, we wouldn't know when AI makes a mistake
  - Designing good experiences - As coding gets easier, it becomes more important and easier to build user-friendly experiences
Without this knowledge, apps built purely through AI prompting will likely be sub-optimal, slow, and hard to maintain. This is an opportunity for us to sharpen the skills and a call to action to adapt to the new reality.

[0] https://en.wikipedia.org/wiki/Vibe_coding

[1] https://my-pomodoro-flow.netlify.app/

[2] https://github.com/annjose/pomodoro-flow




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: