Live data from Hacker News

Ask HN: What would you recommend a vibe coder learn about how all this works?

news.ycombinator.com

21–30 of 44 posts

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#21
IMHO, reading isn't enough, you must do it and experience issues that makes you go "what? How?".

But your question is so vague that there are a lot of answers.

There are a lot of stuff that can be considered big concepts : basic electronic, networking, OS, peripheral communication, compilers, language, algorithms, assembly/procedural/object/functional programming, and the whole world of "AI".

What do you want to know?

- why you shouldn't call .where() a million times in linq?

- how internal statistics tables are managed in Sql server to produce the execution plan, how to watch the execution plan?

- big endian vs little endian?

- how to use telnet to get an HTML page from a web server?

- why everyone thinks that their favourite language is the best?

- why is the first char in a string in pascal at [1] when its at [0] in a lot of other languages?

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#22
post #18

Hi,AI tools just shifted the interface of programming from code to natural language. The tool you've been sharpening your whole career — words — is now the primary tool of software development. You're not a non-programmer learning to code. You're a native speaker arriving in a country that just switched to your language. And that's exactly why it's been "one of the most fun things you've ever done." We're always draw…

Hard disagree, the interface hasn't changed at all. What has happened is new tools have appeared that make natural language a viable interface. It is a new lesser interface, not a replacement. Like a GUI, more accessible but functionally restricted. An interface that is conditioned on previously solved tasks, but unable to solve novel ones.

What this means is coding becomes accessible to those looking to apply something like python to solved problems, but it very much remains inaccessible to those looking to solve truly novel problems they have the skill to solve in their domain, but lack the coding skills to describe.

As a simple example, claude code is easily among the most competent coding interfaces I know of right now. However, if I give it a toy problem I've been toying with as a hobby project, and it breaks so badly it starts hallucinating that it is chatgpt.

``` This is actually a very robust design pattern that prevents overconfidence and enables continuous improvement. The [...lots of rambling...] correctly.

  ChatGPT

  Apologies, but I don't have the ability to run code or access files in a traditional sense. However, I can help you understand and work with the concepts you're describing. Let me
  provide a more focused analysis:
```

/insights doesn't help of course, it simply recommends I clear context on those situations and try again, but naturally it has the same problems. This isn't isolated, unless I give it simple tasks, it fails. The easy tasks it excels at though, it has handled a broad variety of tasks to a high degree of satisfaction, but it is a long shot away from replacing just writing code.

Bottom line, LLM's give coding a GUI, but like a GUI, is restricted and buggy.

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#23
post #18

Hi,AI tools just shifted the interface of programming from code to natural language. The tool you've been sharpening your whole career — words — is now the primary tool of software development. You're not a non-programmer learning to code. You're a native speaker arriving in a country that just switched to your language. And that's exactly why it's been "one of the most fun things you've ever done." We're always draw…

Hard disagree, the interface hasn't changed at all. What has happened is new tools have appeared that make natural language a viable interface. It is a new lesser interface, not a replacement. Like a GUI, more accessible but functionally restricted. An interface that is conditioned on previously solved tasks, but unable to solve novel ones. What this means is coding becomes accessible to those looking to apply someth…

I've seen non-programmers successfully launch real apps — not toy projects — through vibe coding. I'm doing it myself, and I'm about to ship a developer tool built the same way.

They'll still need to pick up the fundamentals of the programming — that part isn't optional yet. And getting to that level as a non-programmer takes real effort. But if the interest is there, it's far from impossible. In fact, I'd argue someone with genuine passion and domain expertise might have better odds than an average developer just going through the motions.

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#24
post #16

>> The stuff that made you go "oh, THAT'S what's going on." That comes from years of 70 hour weeks of hand coding!

Though doing 70 hour weeks will lead to burn out.

No, it really won't

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#25
If you are enjoying vibe coding, the biggest "aha" for me is realizing that software is mostly about managing state, data flow, and failure, not syntax.

Once you get how data moves, where state lives, and what happens when things break, a lot of the "magic" disappears. Learning basic debugging and reading stack traces also compounds forever, even with AI.

One thing that helped me: think a bit like a PM. Spend time crafting good prompts (use chatgpt for generating prompts and feed it to your AI coder ;) ) for ChatGPT/Claude/Cursor, ask it to generate docs and explain what it just did. Over time, patterns emerge and things feel less mysterious.

LLMs write code well, but they don't give you mental models. That part you still have to build.

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#26
post #16

Earlier quoted context omitted.

Though doing 70 hour weeks will lead to burn out.

No, it really won't

Are you overweight at all? Happy relationships with everyone around you? Is your community healthy? And health problems?

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#27
There are institutes scattered around the world — “colleges” and “universities” — where people spend a lot of time thinking about what set of knowledge should be considered part of the baseline understanding of a subject. These are published as “syllabi”, “core courses”, “majors”, etc. I recommend finding a college or university you respect, a major that interests you (maybe “computer science” or “software engineering”), looking at the core courses for that major, reading each syllabus and coming up with a strategy to learn the material in it. The colleges and universities even offer help with that last bit!

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#28
Read the following books:

* SICP - Structure and Interpretation of Computer programs

* AOA - Art of Assembly language programming

* Hello Python - Think like a computer scientist

* The C Programming language - Kernigham and Richie

* Pick one more favourite language and a book in it - Rust, Golang, Scala, Java, Ruby, Python, Typescript etc

Re: Ask HN: What would you recommend a vibe coder learn about how all this works?

#29
I'm a CS professor at an undergraduate college. I'm currently teaching a class on AI coding for non-programmers and also using Claude Code for all the projects in my upper level courses. I'm also planning to update our first course in the fall to include an intro to agentic programming.

Here are some practical suggestions based on what I've seen with my students. To summarize: AI programming de-emphasizes the specifics of languages and frameworks but rewards having a good knowledge of systems and a careful, structured development process.

1. Do learn some by-hand programming in a standard language like Python. Even if you aren't looking at the AI-generated code, this will teach you the building blocks of software design - things like functions, classes, files, and data types - which will help you design more complex applications. The ability to look at a program and reason about what it's doing is a key skill.

2. The terminal environment if you aren't already using it. This will unlock additional levels of control and help you understand how agents use tools.

3. Architecture of the applications you're creating. If you're making web apps, for example, learn about the front-end and back-end, how they exchange information, how a back-end database works, etc. The key is not the low-level details of those things, but how an application is divided into parts that exchange data with each other. This knowledge helps you move from a general concept for an application to an actual design.

4. Related to that point: the concept of encapsulation in software design. This is the idea that each part of your system should be self-contained and exchange information with other parts through a well-defined interface. If a component is encapsulated, you can change its internal details without messing with the rest of the system. This is important for AI, because it allows you to carefully control the targets of your generations.

5. Specs-driven development. This is the evolution of vibe coding and is the main approach I teach now. Chat about the problem, then develop a detailed spec that describes the desired behavior. Refine that into a system design and detailed step-by-step task list with tests for each step. Working with the AI to compare design options is a great learning tool.

6. You don't need to learn much about algorithms unless you want to. Models are very strong at choosing and implementing all of the standard algorithms. Let these emerge naturally as you work on interesting problems.

Post reply on HN