Live data from Hacker News

"Vibe code hell" has replaced "tutorial hell" in coding education

blog.boot.dev

61–70 of 169 posts

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#61
Agree with everything in the article, but this isn't a new phenomenon. As long as I can remember (20 years, probably longer), for every student or professional who is seriously and diligently learning to code there are many orders of magnitude more who are simply there to take shortcuts and pad their resume. Vibe coding is just the latest iteration of this. This is why CS programs have such low graduation rates. This is why coding bootcamps don't produce many industry-ready engineers. Coding is hard, and the salaries of software engineers, even in the AI age, reflects this.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#62
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

You learn by doing and thinking. Not reading and watching. Pure and simple.

If you train at the gym with bad form, you will hurt yourself in the long run. A person with a personal trainer giving feedback at the right time, decreasing the feedback loop from years to seconds will always outperform someone trying to figure it out on their own(assuming the trainer is competent).

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#63
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

You learn by doing and thinking. Not reading and watching. Pure and simple.

I disagree with the reading part, as that's a major component of learning.

Programming only clicked for me when I had a goal in mind and started reading documentation: change the color of the button when I click it. How to do something on click? How to change the color of an element? Etc. From there my goals became bigger and reading documentation and examples along the way got me to where I am today.

Video is the true deception. I was trying to design patterns for sewing recently, and as a novice I watched a few videos. And none of them ever stuck with me on how to design something myself. It was only when I read a book about pattern design that the concepts stuck. I think the friction of reading, parsing the info, and then acting on it is what allows learning to happen.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#64
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

+1 I dropped school relatively early (I was extremely bored and the way of education was certainly somewhere close from the Stone Age times). I did an apprenticeship as software engineer with some (extremely useless) school component. Most of the time in the late 90ties was trial and error, for me, the master and the master of masters. Playing around with Linux and make it ISDN routers with servers for websites built in HTML, Perl, PHP. This was devops (before it got hyped) and real engineering by figuring stuff out with almost no documentation, a lot of crazy creativity and push the boundaries of what’s possible. And it reminds me just a little like today’s world with AI and vibe coding just on a complete different level and with significant more pressure…fun times :-).

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#65
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

Uncle Bob has been saying this for decades.

But - I'm not really sure it's necessary in software. The skillset can be entirely self taught if you're intelligent enough. There are an abundance of resources and all it requires is a terminal. Good software engineering principles can be covered in a 200 page book.

You can't say the same for trades like plumber, electrician, etc. which still use apprenticeships.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#66

I commend all the ideas the author has here about better education. I agree it's a big problem. But perhaps the biggest problem is the idea of one curriculum. I grew up with a learning disability. I was extremely curious and able to hyper-focus on learning, but only when I found it interesting or easy to pick up and run with ideas. Other kids didn't have the same problem as me, so they excelled while I dragged behind…

> What's a sine, cosine, and tangent? I honestly still don't know, because the words themselves are foreign to me.

They are conversion functions between different fraction-based ways of measuring angles.

You can draw a right triangle for the angle you want to build and you can measure it based on the ratio of any two sides of the triangle.

You can also view the angle as a fraction of a circle. It's up to you decide whether a full circle counts as 360 or 2pi (or 400 or 1 or whatever).

sin/cos/tan and their inverses let you convert between the two. Both are useful, neither is always better. The conversions let you use whichever is easier.

The sine/cosine names don't really make sense in Indo-European languages because they are based on terribly mangled old Arabic. No, they do not come from the Latin word "sinus" = bay or bend. Yes, they probably did affect the direction of the mangling because there was this nice Latin word that looked like it ought to have something to do with it... but they started out as Arabic.

The name of the tangent function comes from the geometric tangent as a line that touches a curve. Tangent comes from a Latin word that means to touch -- hence why they keys on a keyboard are called that in some languages. If you do some fancy geometric drawing involving a unit circle, a radius, and an angle, then the tangent function naturally appears as the length of a line segment that 1) just touches the perimeter of the circle and 2) is at a right angle to the radius.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#67

I commend all the ideas the author has here about better education. I agree it's a big problem. But perhaps the biggest problem is the idea of one curriculum. I grew up with a learning disability. I was extremely curious and able to hyper-focus on learning, but only when I found it interesting or easy to pick up and run with ideas. Other kids didn't have the same problem as me, so they excelled while I dragged behind…

> What's a sine, cosine, and tangent? I honestly still don't know, because the words themselves are foreign to me. They are conversion functions between different fraction-based ways of measuring angles. You can draw a right triangle for the angle you want to build and you can measure it based on the ratio of any two sides of the triangle. You can also view the angle as a fraction of a circle. It's up to you decide w…

How do you remember sin and cos in practice? Draw a unit circle, draw a radius at whatever angle with the x axis that you want. The point where the radius touches the perimeter has the coordinates cos(angle), sin(angle). How do you remember the order? Alphabetically, just like the Baltic states.

Tan is the slope of the radius line: sin(angle)/cos(angle).

How do you remember the fraction for the slope of a line? I use a mnemonic: dydx ("dydex").

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#68

Organizations now generate 10x the amount of code, because everyone can do it. But we have exactly the same number of reviewers. How the heck are we gonna deal with it when we cannot use LLMs for sanity checking LLM code? Like literally yesterday I had a not-technical person who used codex to build an optimization algorithm, and due to the momentum it gained I was asked to “fix the rough edges and help with scaling”.…

> How the heck are we gonna deal with it when we cannot use LLMs for sanity checking LLM code? Unit testing. LLM's are very good at writing tests and writing code that is testable (as long as you ask it), and if you just check that the tests are actually calling the code and doing so with all the obvious edge cases and that the results are correct, that's actually quite fast to review -- faster than reviewing the cod…

Your first response sounded like:

You got more diabetes? Use more insulin :x (insulins are very good handling diabetes) (analogy).

Seniors would tell: the more you get in seniority the more you delete code. So I don't think, more cushion for higher jumping is the solution, sometimes you don't need to jump from that high.

We're moving to Junior Generative Juniors, recursively.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#69
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

> This is why, across history, the tried and true method of learning a craft is an apprenticeship.

Citation needed - at least for anything software development. Every single respectable software dev I met around my age bracket or older (40+), was self-taught. Mostly because in the 80s or 90s there wasn't much opportunity. But computers shipped with handbooks how to program them, at that time.

Re: "Vibe code hell" has replaced "tutorial hell" in coding education

#70
post #38

Minor part of the article, but the thing about "tutorial Hell" is very true: > Students would watch (or fall asleep to) 6-hour videos, code along in their own editors, feel like they got it, and then freeze up the moment they had to write anything from scratch. Classic tutorial hell. This is why, across history, the tried and true method of learning a craft is an apprenticeship . You, the junior, tag along a senior.…

> This is why, across history, the tried and true method of learning a craft is an apprenticeship.

And in our modern world, universities are still the best place for such apprenticeship. Not the ones per Mark Trevor's words (https://marktarver.com/professor.html), of course, but a self-respecting university will train their students with progressively challenging and practical assignments. We started with implementing simple data structures and algorithms and solving simple puzzles all the way to implementing toy OSes, databases, persistent data structures, compilers, CPUs, discrete simulations, machine learning models. We started with implementing functions and individual components and quicly to building things from scratch. I'm forever grateful to the training I received in my univerity.

Post reply on HN