Kind of an aside, I also think that ChatGPT is a great car-ride companion, and that the "conversation mode" that currently exist is pretty bad, primarily due to its response length limitation. If you're driving and verbally chatting with ChatGPT, having it only give you 500 word responses is infuriating because you can't really get into any level of depth without going in constant circles, which isn't a problem that text-based chats have to the same extent.
"Vibe code hell" has replaced "tutorial hell" in coding education
131–140 of 169 posts
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#132Earlier quoted context omitted.
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 tr…
My point is reading does not provide substantial value, it provides barely any because you have to net out the opportunity cost of time spent reading. The gains are realised when you think and do something with the information consumed. Therefore reading and watching are not the key to success.
But it's essentially impossible to learn without information about a subject.
How do you suppose someone learn programming without reading documentation? Without reading code examples? This is active reading compared to passive reading, such as reading a novel.
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#133Earlier quoted context omitted.
> 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…
sine is opposite over hypotenuse
cosine is adjacent over hypotenuse
tangent is opposite over adjacent
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#134Earlier quoted context omitted.
> 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 implement…
> And in our modern world, universities are still the best place for such apprenticeship. I spent a good portion of my life in Universities -- and went as far as one can go in terms of educational credentials and taught at the university level -- and I cannot disagree more. Universities produce job skills incidentally , if at all. It's simply not their goal [1]. Even today, at the best CS programs in the country, it'…
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#135Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#136I 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…
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#137Earlier quoted context omitted.
I’ve been criticized for this by my coworkers in the past, but I strongly believe that this is generally true and has been for quite a while. Developers, myself included, like to think their code is special, set in stone and going to last forever. Most the code we write struggles to live a few years yet we treat all of it like it’s going to last forever. I’ve been an advocate for flipping that and treating it like ou…
I think this is true for the edges, but if you build on top of software that's not done well, it's a bad time.
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#138Earlier quoted context omitted.
> 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…
> Unit testing. LLM's are very good at writing tests and writing code that is testable (as long as you ask it) The unit tests LLMs generate are also often crap, testing tautologies, making sure that your dependencies act as specified without testing the actual code, etc.
Maybe if your instructions are super unclear?
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#139Organizations 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…
Re: "Vibe code hell" has replaced "tutorial hell" in coding education
#140Minor 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.…
Creating new projects from scratch can trip up even experienced professional developers because in most jobs you come in, work an existing codebase, and iterate. Even if you need a new service or app, you often start with a copy-paste or a common template. When the team needs something more new, usually there's just one person who sets that up. Setting up the whole project from scratch and making all the 0-to-1 choic…
I’ve worked on greenfield projects for so long (15+ years at this point) that my experience is the exact opposite. The few times I’ve had to contribute to an existing code base was a painful experience of figuring out where everything is, and why everything is done in such a weird way.
There is no better feeling than doing that first `git commit -m 'initial commit'`
In a way, it is interesting and a bit frightening to know that my experience is very different than most engineers are socialized and molded for team work and daily standups and code review which are alien (and scary) to me.