What is vibe coding? How creators are building software with no coding knowledge
Vibe coding is an AI-assisted software development method enabling non-technical creators to build applications by describing ideas in plain language, significantly reducing development time and skill requirements.
Read original articleVibe coding is an innovative, AI-assisted approach to software development that allows creators to build applications without needing to write code. Coined by AI engineer Andrej Karpathy, vibe coding enables users to describe their software ideas in plain language, which the AI then translates into functional code. This method significantly reduces the barriers to entry for non-technical creators, allowing them to develop apps, websites, and tools in a matter of hours rather than months. Unlike traditional coding, which requires knowledge of programming languages and debugging, vibe coding relies on natural language communication and an iterative dialogue with AI. This cultural shift in software development empowers creators to quickly prototype and test ideas, create custom tools for their audiences, and potentially generate new revenue streams. Real-world examples illustrate the effectiveness of vibe coding, with individuals like Martin and Rasit successfully building functional applications without prior coding experience. The process involves selecting an AI tool, describing the desired application, reviewing the AI-generated code, and refining it through conversation until the final product is ready for deployment. Vibe coding represents a significant evolution in how software can be created, making it accessible to a broader range of creators.
- Vibe coding allows non-technical creators to build software by describing ideas in plain language.
- It reduces the time and skills required for software development compared to traditional coding.
- Creators can quickly prototype and test ideas, leading to potential new revenue streams.
- Real-world examples demonstrate the practical applications and success of vibe coding.
- The process involves an iterative dialogue with AI, making software development more accessible.
Related
The second wave of AI coding is here
A second wave of AI coding tools is transforming software development, enhancing code generation and debugging, while debates continue over the effectiveness of large language models versus logic-based systems.
Ask HN: Is AI assisted programming going to change productivity expectations?
AI-driven code generation is significantly reducing coding time for software engineers, potentially increasing productivity expectations and shifting the balance between workload and free time in the industry.
Vibe Coding and the Future of Software Engineering
Vibe coding, popularized by Andrej Karpathy, raises concerns about code quality and junior developers' skills. While some embrace it, established organizations prefer traditional practices amid increasing AI integration in software development.
Think A.I. Is Overrated? Try Vibecoding
The author explores vibecoding, enabling non-programmers to create AI-driven applications. While it enhances productivity, concerns about AI replacing human programmers and the need for oversight remain significant.
A.I. and Vibecoding Helped Me to Create My Own Software
Non-programmers can create software using AI through "vibecoding," which involves typing prompts. This method empowers users to develop applications while highlighting the need for human oversight amid job security concerns.
My only concern of this type of programming is when it starts involving end users, specifically around privacy and security. It is not that AI written software is less or more secure. It is just about the whole live-cycle of software development and maintenance. Vibe-coders might not visit this forum for example and might not be aware of a security exploit that must be fixed asap... or even be aware that they need to perform basic level of software support to avoid costly intervention in the future. It is not going to happen - not today.
I am thinking that this type of coding is only going to increase the demand for professional services. The closest analogy I can provide is that almost anyone can perform basic level of DYI and many do - but when it comes to more serious work you rely on contractors to get the job done.
Java is a language designed to make it possible. Java style classes make it possible for someone to design the overall structure and pass it to someone who just vomits something inside it.
They have teams where maybe 1 in 3 consultants have programming knowledge and the rest just vibe something into the Java API that is given to them. Back and forth until it passes and then to the customers. LLMs make this just faster and maybe even better.
The code will be bloated, slow, and hard to maintain.
I’m not sure about that, it may be true, but you can also build a ecom store without coding knowledge using wordpress and shopify but you still face a lot of limitations.
Tools and visualizations for debugging that I might need only for a week, local dev automations, linters, etc.
As long as I can eye-ball correctness, it's a huge time-saver and help.
This is unlike no-code/low-code, where the “coder” still has full control and visibility over the specification and can tinker with it. With LLM-generated code, an increasing part of the “specification” is constituted by the code that has been generated so far, into which the “coder” has no insight. The “coder” can only try to run it to see how it behaves, but cannot reason about it like a no-code/low-code coder can about their specification.
I just want a free script or addon that will do its job instead of paying someone on upwork to do it for me. simple as.
Additionally it's only up from here. The agents will be able to do maintainable code and safety critical code at some point in the future. It's not all gonna happen overnight.
I wrote a lot of spaghetti and I confused myself a lot. And it was a lot of fun.
I think the doomsayers ITT are wrong. I think you’ve forgotten what it was like to go from “how do you even make a program” to “I put something on the screen and it’s amazing that I did that”.
I think AI will help a lot of people get over the bump from not even comprehending how software works, to putting something on their screen and evolving their skills from there.
Who cares if they make some spaghetti along the way. That’s necessary for learning. AI or not.
About software, it works, fine, but do you ever deal with maintenance, security patches and so on?
- the end results usually suck: they either feel incomplete, have a major flaw, or just don't work.
- sometimes, the AI just won't understand what the request was, or it will get stuck on a loop while trying to troubleshoot one bug and causing even more.
I believe that code written by actual reasoning people will be miles better than what a machine can. AI should be used for "au-to-ma-tion", and tasks that one doesn't want to or doesn't like to do, like writing documentation.
Here's one instance where this "vibe coding" went right and I got a mostly functional program (game): https://chatgpt.com/share/67a125b3-15cc-8001-9863-13372338e3...
If you think vibe coding is as easy as this article makes it sound, try deploying a simple website.
This comment thread and this author are mostly experienced devs. Obviously, Automating the first 80% of development this way, you get less happy accidents and less rabbitholing on minutiae which make you a stronger programmer, and give joy. But dang, you get a lot of joy from finishing something too.
And also obvious is the cost of deploying and maintaining. All the SDLC things that come with releasing a product are out of scope here, but that’s likely temporary. It would be great to have assisted deploy build pipeline development I can trust in a product that has a complex blend of old, new, in-house and proprietary service development.
Coffee’s still kicking in. These are my thoughts.
That's not coding at all - if is taken out
(the best user inter interface is that one that doesn't stop you and doesn't exist between you and that thing you interact with - it's about the thing, not about how).
It's magic (and magical thinking, wishes) - things have to happen, doesn't matter how (that how was the coding):
> The magic is always real, but once you understand magic it simply becomes knowledge. That makes it no less magical ( https://news.ycombinator.com/item?id=43216041 ).
BTW Why we calling it AI - not AK - Artificial Knowledge as it is indeed ? ( isn't the intelligence something you supposed to have ?)
I guess this is even more vibe based, the AI’s vibe that is.
codeaway.ai
But to be honest I do take the time to read some code both to clean things up a bit and to learn something new, killing the vibe entirely. So unchill.
I doubt this time around, the AI-flavoured variant is going to change much, except perhaps the volume.
The world ended not with a bang and not with a whimper… in the end, it was the sound of someone double clicking on a file written in a language the person “vibing” it couldn’t read and didn’t understand.
The ability to adapt to a changing world is one of the most useful skills you can have.
It's just like the infinite monkey theorem, hitting the enter key repeatedly without understanding the actions and eventually reaching their goal.
You would not see software engineers at SpaceX or NASA "Vibe coding" on software that will be running on rockets or defense technology companies vetting candidates that have been doing "vibe coding".
This euphoria feels like a repeat of the years 1999 - 2000 which we will see a crash that will revert back to reality.
After Trump was overtly lying about the US spending $360 billion on Ukraine and that the EU had given their aid as a loan.
Coding is easy, testing and maintaining is hard.
This is no different than what amateurs have been doing for a long time. Hopefully they’re not taking in PII or charging anyone for these apps.
Related
The second wave of AI coding is here
A second wave of AI coding tools is transforming software development, enhancing code generation and debugging, while debates continue over the effectiveness of large language models versus logic-based systems.
Ask HN: Is AI assisted programming going to change productivity expectations?
AI-driven code generation is significantly reducing coding time for software engineers, potentially increasing productivity expectations and shifting the balance between workload and free time in the industry.
Vibe Coding and the Future of Software Engineering
Vibe coding, popularized by Andrej Karpathy, raises concerns about code quality and junior developers' skills. While some embrace it, established organizations prefer traditional practices amid increasing AI integration in software development.
Think A.I. Is Overrated? Try Vibecoding
The author explores vibecoding, enabling non-programmers to create AI-driven applications. While it enhances productivity, concerns about AI replacing human programmers and the need for oversight remain significant.
A.I. and Vibecoding Helped Me to Create My Own Software
Non-programmers can create software using AI through "vibecoding," which involves typing prompts. This method empowers users to develop applications while highlighting the need for human oversight amid job security concerns.