frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Igalia, Servo, and the Sovereign Tech Fund

https://www.igalia.com/2025/10/09/Igalia,-Servo,-and-the-Sovereign-Tech-Fund.html
308•robin_reala•7h ago•48 comments

Google, Meta and Microsoft opts to stop showing political ads in EU

https://www.politico.eu/article/eu-political-ad-rules-google-meta-microsoft-big-tech-kick-in/
87•martinohansen•1h ago•58 comments

Ask HN: What's the best hackable smart TV?

144•xrd•4d ago•106 comments

Lánczos Interpolation Explained (2022)

https://mazzo.li/posts/lanczos.html
14•tobr•5d ago•1 comments

Show HN: I invented a new generative model and got accepted to ICLR

https://discrete-distribution-networks.github.io/
417•diyer22•11h ago•52 comments

Does our "need for speed" make our Wi-Fi suck? Yes.

https://orb.net/blog/does-speed-make-wifi-suck
17•jamies•1h ago•7 comments

Ryanair flight landed at Manchester airport with six minutes of fuel left

https://www.theguardian.com/business/2025/oct/10/ryanair-flight-landed-at-manchester-airport-with...
348•mazokum•5h ago•300 comments

Notes on switching to Helix from Vim

https://jvns.ca/blog/2025/10/10/notes-on-switching-to-helix-from-vim/
211•chmaynard•5h ago•114 comments

OpenGL: Mesh shaders in the current year

https://www.supergoodcode.com/mesh-shaders-in-the-current-year/
97•pjmlp•8h ago•78 comments

NanoMi: Source-available transmission electron microscope

https://nanomi.org/
47•pillars•2d ago•8 comments

The Molecular Basis of Long Covid Brain Fog

https://www.yokohama-cu.ac.jp/english/news/20251001takahashi.html
113•onnnon•5h ago•32 comments

It's OpenAI's world, we're just living in it

https://stratechery.com/2025/its-openais-world-were-just-living-in-it/
61•feross•3h ago•102 comments

Show HN: Gitcasso – Syntax Highlighting and Draft Recovery for GitHub Comments

https://github.com/diffplug/gitcasso
18•etwigg•4h ago•4 comments

All-Natural Geoengineering with Frank Herbert's Dune

https://www.governance.fyi/p/all-natural-geoengineering-with-frank
57•toomuchtodo•6h ago•11 comments

Toyota aims to launch the ' first' all-solid-state EV batteries

https://electrek.co/2025/10/08/toyota-aims-to-launch-worlds-first-all-solid-state-ev-batteries/
19•thelastgallon•1h ago•8 comments

Ohno Type School: A (2020)

https://ohnotype.co/blog/ohno-type-school-a
159•tobr•4d ago•59 comments

My approach to building large technical projects (2023)

https://mitchellh.com/writing/building-large-technical-projects
295•mad2021•16h ago•42 comments

A story about bypassing air Canada's in-flight network restrictions

https://ramsayleung.github.io/en/post/2025/a_story_about_bypassing_air_canadas_in-flight_network_...
147•samray•12h ago•112 comments

Google Safe Browsing incident

https://www.statichost.eu/blog/google-safe-browsing/
151•ericselin•6h ago•121 comments

Datastar: Lightweight hypermedia framework for building interactive web apps

https://data-star.dev/
178•freetonik•11h ago•189 comments

Weave (YC W25) is hiring a founding AI engineer

https://www.ycombinator.com/companies/weave-3/jobs/SqFnIFE-founding-ai-engineer
1•adchurch•8h ago

Examples Are the Best Documentation

https://rakhim.exotext.com/examples-are-the-best-documentation
357•Bogdanp•1d ago•133 comments

Show HN: A Digital Twin of my coffee roaster that runs in the browser

https://autoroaster.com/
10•jvkoch•4d ago•1 comments

Show HN: Lights Out: my 2D Rubik's Cube-like Game

https://raymondtana.github.io/projects/pages/Lights_Out.html
30•raymondtana•15h ago•13 comments

A Library for Parsing Dutch Smart Meter Requirements (DSMR)

https://github.com/mijnverbruik/dsmr
18•robinvdvleuten•4d ago•3 comments

You can't build tcc from Nixpkgs if you are in the UK

https://github.com/NixOS/nixpkgs/issues/444342
122•RGBCube•4h ago•55 comments

Illegible Nature of Software Development Talent

https://surfingcomplexity.blog/2025/10/08/the-illegible-nature-of-software-development-talent/
60•hackthemack•2h ago•58 comments

Origami Patterns Solve a Major Physics Riddle

https://www.quantamagazine.org/origami-patterns-solve-a-major-physics-riddle-20251006/
41•westurner•4d ago•2 comments

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

https://blog.boot.dev/education/vibe-code-hell/
221•wagslane•4h ago•108 comments

Nobel Peace Prize 2025: María Corina Machado

https://www.nobelprize.org/prizes/peace/2025/summary/
527•pykello•11h ago•559 comments
Open in hackernews

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

https://blog.boot.dev/education/vibe-code-hell/
221•wagslane•4h ago

Comments

om22shree•4h ago
read through the article, pretty much agree with everything you have said ... there are certain skills that AI can't even hope to teach or solve especially in the field of DevOps/Cloud ... too often it recommends the more expensive answer out of the box simply because its the most popular.

Its trained on masses ... well, unfortunately, masses are wasting a lot of dough

scott_w•4h ago
I'm biased as I've not been a beginner dev for nearly 20 years, however I have found Copilot is pretty helpful for is learning Rust. In combination with Intellisense, it helps ease some of the mental overhead of the syntax, letting me focus on learning the important bits of the language. It helped me go from opening up a book on Rust to having a working tool in about a week.

I won't pretend that it's turned me into a senior engineer, of course, but it's definitely gotten me over the 0 to 1 problem much quicker than I think I could have without it nudging my code in the right direction.

For what it's worth, I don't ask Copilot to write the code, I just use it as an advanced auto-complete, reading the suggestion to see if I agree with it before hitting tab.

adlpz•3h ago
I think it's become a running theme: senior devs who have been coding for a while now are able to extract value from these tools because, even if you don't know Rust, you know how to code.

BS code smells the same in any language.

Beginner devs don't even know what smelling means.

adamddev1•3h ago
Maybe this is the answer to the ageism problem people have complained about in tech.

In the land of vibe-coders, the old man is king.

alganet•3h ago
Seniors being able to extract more from any new tool is a time proven constant. That hasn't changed.

What happened is that companies tried to push an idea that this new AI thing would be inhospitable to whoever is already an experienced programmer. The idea of "new land", fair and equal to all. Smelling woudn't matter, because all smells would be new and unfamiliar.

After insisting on this silly mistake for a while, they realized that experienced programmers were actually their only viable target audience, and attempted to change their approach accordingly. It's embarassing.

adlpz•3h ago
I thought this was going to be yet another post about how AI is ruining Junior devs so we'll have a Senior replacement crysis in a few years.

It sort of is, indirectly, and I agree with pretty much everything.

But the bit about sycophancy was particularly enlightening. I actually thought "plain" ChatGPT-like interfaces could be good for learning. But the Youtube ROAS example is really powerful. If the student can skew the teacher's conclusions so much just by the way they phrase their questions/answers, we're going to mislead new programmers en masse.

I'm not even sure that the extensive prompting they say they use for their "Boots" is good enough.

I guess in the age of AI you still need someone to repeatedly reject your pull requests until you learn. And AI won't be that someone, at least for now.

A4ET8a8uTh0_v2•3h ago
I think I agree. From personal experience, even when I ask for scathing critique, the need to placate and make me feel better seems to bleed through ( both on 4o and 5 as far as I could tell ). I am not sure what to make of it.

We go back to this original prediction that the tool will help those, who both want help and are painfully aware of LLMs peculiar issues.

Eisenstein•3h ago
The incentives align: when the success metric is engagement, it will be optimized for engagement. It makes perfect sense that it is going to agree with you.
1718627440•3h ago
> But the bit about sycophancy was particularly enlightening.

I always try to stay above this by prompting the question twice, with the opposite biases. But I of course don't know, which hidden biases I have that the LLM still reinforces.

skovranek•3h ago
"Learning must be uncomfortable."

Critical thinking is hard.

dude250711•3h ago
Also, not aligned with modern society, since you kind of need free speech for that.
password54321•44m ago
People just don't want to face the uncomfortable truth that they are probably not as smart as they want to believe they are.
mattgreenrocks•12m ago
It’s not about being smart as much as staying engaged with the problem even when it mentally defeats you several times.
lordleft•3h ago
I completely agree with this article. AI (in a pedagogic context) is best when treated like a super-powered man page.
collingreen•3h ago
A super powered man page that has wrong info often enough you need to have ways to verify either through simple experiments or alternate sources
jasonthorsness•3h ago
> Don’t use: > AI auto-complete in your editor > Agent mode or agentic tools for your educational projects

While I am not learning "coding" as a beginner anymore, I am constantly learning new frameworks, language features, algorithms etc. as is the norm in the industry, and I disagree it's bad to use AI auto-complete. Pre-AI IntelliSense-style autocomplete from Visual Studio or ReSharper makes learning new libraries and language features much easier. ReSharper for example will suggest taking advantage of new language features when you write something an older way, and many times this was my introduction to that new feature.

The new AI-based autocomplete can be even better; it demonstrates one way to do something and regardless of whether you use it or not, you can learn from it. You have to be curious enough to actually read what it is doing, but if you lack that curiosity it isn't AI's fault (before AI this was just "copy-pasting from Stack Overflow").

wagslane•3h ago
Yeah I think there's some nuance. As a relatively experienced dev I still use autocomplete when using a new language, but I think it's different when you already have a strong grasp of coding fundamentals. Learning your 3rd or fourth language when you already understand the constructs is much different than baby's first for loop
vpShane•3h ago
100%. I enjoy AI Agentic programming because I make new things to tinker with and/or try out ideas. I'm not trying to code to push to some production, and I'm not worried about what others think of my code.

I want to be able to say I've tried and done things when speaking with highly technical people. I've been a 'programmer' since I was 10, I'm 35 now but never joined the work force as a programmer; I don't know why, but now that AI is here, the love for coding, tinkering, making system level things, trying things like WASM which may be the future of our www; these all give me that joy. I found my limitations as a programmer and excelled because I have different skillsets.

I love learning that doing something MY way is a good idea, but has been thought of and some amazing programmer already built the ground-work for it.

My Cursor AI agent even setup git for me for my projects so I can easily push with my SSH keys: do I know I can do that myself? Yes. Do I want to? no.

> ReSharper for example will suggest taking advantage of new language features when you write something an older way, and many times this was my introduction to that new feature.

That's actually news to me and sounds amazing. I started coding with C syntax when I was young. You learn habits then, it sticks with you.

I'm since enjoying python for backend things, flask for little webserver stuff and javascript for front-end things.

WASM Python ain't there yet, but I _love_ tinkering. I _love_ finding bugs. I _love_ poking and prodding at how things work. I'm almost always re-inventing the wheel with concepts but you know what? At least it's mine and I can tinker and learn.

Some of us enjoy the craft as a hobby and learning. Even within my teams some are more sophisticated tech wise than I am; to get on their level remotely requires me to tinker.

Often times, I find a solution for my problems that were the most simple; engineering minds like to overcomplicate things.

stavros•3h ago
Very much agree. AI autocomplete is the best thing ever, because it spares you from having to read the docs but it's few enough lines that you can review and make sure it does what you intended.

It won't write big chunks, so it won't hinder your learning.

amlib•29m ago
So you are telling me you can always properly infer what the "black boxes" the AI auto-completed for you does without reading the documentation?

I bet you are most likely just blindly trusting the AI response and moving on. Sure, the code structure might checkout and the calls it completed are sometimes fairly generic/predictable, but there will be plenty of situations where the behavior is just different enough or the black boxes are something you have no idea about what it even does and you are too lazy to check the docs and commit the code anyway.

GuB-42•2h ago
The advantage of traditional auto-complete over AI is that it will typically list everything that fits: all methods, all variables and constants in scope, etc... It can even fetch the documentation if available. It is great for learning because it tells you all your options without deciding for you.

AI autocomplete essentially searches stackoverflow for you and pastes the first answer without context, adjusting it to match your code. If you are learning, just do the stackoverflow search yourself, or prompt you favorite chatbot if you insist on using AI, so you can have at least some explanation about why it is done like this.

zahlman•45m ago
What if you had an AI system that could order the exhaustive list according to its likelihood estimate?
dehrmann•3h ago
> "I don’t understand the docs, anyone have a video?"

As an experienced dev, I hate this trend. I don't need my hand held for 10 minutes; I need to see three specific lines of config that may or may not be somewhere in the video.

havefunbesafe•3h ago
I think this is similar for anyone who reads a lot of documentation: A 90 minute video explaining documentation and quickstarts can usually be read in 30 minutes and you don't have to constantly pause/restart/rewind.
SoftTalker•2h ago
A video can be helpful to me in some cases. Demonstrating how to set up a project or run a utility that scaffolds something. Or even some basic coding idioms. But these should be focused and short, i.e. 5-10 minutes. Show one thing, maybe a couple of examples of common scenarios, and that's it.
0xbadcafebee•3h ago
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 I learned (after attending 5 schools in 2 years) is that I have to find my own path to learning that works for me.

It's impossible for me to focus on dense text. You could point a gun at my head and I still couldn't absorb the information. I need spatial learning. Moving pictures, flow charts, multi-level cutaways. Lists and sections broken up into hierarchies with clear simple headings and compartmentalized concepts. This way my brain can organize a literal map of the information for me to traverse later. But some other people might find that a nightmare.

At the same time, I learned programming extremely slowly, because I only used the methods that were easy to me. I just gave myself projects to accomplish and used trial and error to slowly learn how the language worked, along with a book for reference. It took me years to finally understand the academic underpinnings of how languages (and software) worked. I wish I could've seen a map of the different concepts, to reinforce what I needed to know to learn the next thing.

But there's also different kinds of information which need different learning methods. What's a sine, cosine, and tangent? I honestly still don't know, because the words themselves are foreign to me. For that I would need some kind of Duolingo-style repetitious-card-memory-trick-thing to even remember what word is what concept.

I don't know any framework to break up any subject into multiple course methods. And AI can't do it either. AI sucks at visualizations, and it doesn't have a deep understanding of how to teach things in multiple ways. EdTech needs to be extremely careful not to put all its cards into one "thing" if that thing can't do what people need. (That said: AI is great at quickly explaining things you don't know, and providing you an insanely fast path to the information you need)

In terms of CS itself, I feel like what we're lacking is a big-ass wikipedia or knowledge base. A lot of it is in Wikipedia, but not nearly detailed or interlinked enough. Once you have all the content, then you can reorganize them into different curriculums for different learning styles. But these are two separate problems. The tutorials are way too shallow, and the dense academic verbiage is far too detailed. You need a way to intermix them that's tailored to the user.

peterfirefly•2h ago
> 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.

peterfirefly•2h ago
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").

SoftTalker•56m ago
> How do you remember sin and cos in practice?

I draw on the ratios I memorized in high school, e.g. sin=opposite/hypotenuse, but 40+ years later sometimes I'm not sure so I look it up online.

My needs for trigonometry are separated on a scale of years, and at some point knowledge unused is knowledge forgotten.

viccis•3h ago
This is true of lots of educational shortcuts. I've noticed students misusing college tutors. They have the tutors do their homework and explain it, then they think they're good to go and ready for the exam. Problem is that any solution seems obvious after it's explained, but to have to come up with it yourself is a separate skill than simply understanding it.
whatever1•3h ago
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”.

The entire thing was trash (was trying to do naive search in a combinatorial problem with 1000s of integers, and was violating constraints with high probability, including the integrality). I had to spend all my day reviewing it and make a technical presentation to their leadership that it is just a polished turd.

lezojeda•3h ago
It's basically a scheme letting less scrupulous people offload work on others while at the same time making good impressions to manager, PMs and CEOs who want to automate our job and fire us.
A4ET8a8uTh0_v2•3h ago
<< and make a technical presentation to their leadership

Honestly, this may be the only way to go about it.

LPisGood•3h ago
The problem can probably almost certainly be solved to provable optimality using HiGHS or even CBC - the open source Python package PuLP comes with CBC.

If you want to be seen as the hero who solves things instead of the realist who says why other solutions won’t work, this could be worth exploring.

whatever1•3h ago
Of course it can be solved using the proper tools by a domain expert/practitioner (even with chatGPT since the expert will know what to ask).

But why didn't the AI expert solve it using chatGPT? If it has to land to an expert for reimplementation from scratch after wasting a day on reviewing slop, did we gain productivity?

LPisGood•2h ago
Gain on productivity, maybe nothing. I didn’t mean to comment on the broader scope, just an actionable suggestion for GP.
Jianghong94•3h ago
OR problems are hard because whoever try to vibe coding it probably don't realize they fall into a specific algorithm and can prompt llm to do thatl; what's worse is that even if you tell them so they won't be able to understand the math behind it and would much prefer their vide coding solution.
crazygringo•3h ago
> 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 code.

And you can include things like performance testing in tests as well.

We're moving to a world where we work with definitions and tests and are less concerned with the precise details of how code is written within functions. Which is a big shift in mindset.

verelo•3h ago
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 our code will not last long, and when we identify the components that will, going back and optimizing them.

I’m pretty confident that most developers, again including myself, just really enjoy knowing something is done well. Being able to separate yourself from the code and fixate solely on the outcomes can sometimes get me past this.

lemagedurage•3h ago
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.
ori_b•3h ago
> 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.

rmonvfer•3h ago
The only way this might work (IMO) is writing the tests yourself (but of course, this requires you to plan and design very meticulously in advance) and doing some kind of “blind TDD” where the LLM is not able to see the tests, only run them and act on the results. Even then, I’ve had Claude (Opus 4.1) bypass tests by hardcoding conditions as it found them so I’d say reliability for this method is not 100%.

Having the LLM write the tests is… well, a recipe for destruction unless you babysit it and give it extremely specific restrictions (again, I’ve done this in mid to large sized projects with fairly comprehensive documentation on testing conventions and results have been mixed: sometimes the LLM does an okay job but tests obvious things, sometimes it ignores the instructions, sometimes it hardcodes or disables conditions…)

didericis•1h ago
I’ve been saying this for years now: you can’t avoid communicating what you want a computer to do. The specific requirements have to be made somewhere.

Inferring intent from plain english prompts and context is a powerful way for computers to guess what you want from underspecified requirements, but the problem of defining what you want specifically always requires you to convey some irreducible amount of information. Whether it’s code, highly specific plain english, or detailed tests, if you care about correctness they all basically converge to the same thing and the same amount of work.

smrtinsert•3h ago
Doesn't work if black box. You still have to inspect code performing the operation
majormajor•2h ago
They're OK at it. I usually get more thoroughness of scenarios than a mediocre human engineer (which is great!) but less thoroughness of validation and output checking than a good human engineer (which is less so).

But if you have a lot of unit tests and need to make a cross-cutting refactor you run into the same problem that you always have if all your coverage is at the unit level. Now your unit boundary is fundamentally different and you need to know how to lift and shift all the relevant tests to the relevant new places.

And so far I've been less impressed by the "agents"' attempts at cross-cutting integration testing since this usually requires selective and clever interface setup and refactoring.

LLMs have a habit of creating one-off things for particular unit test scenarios that doesn't scale well to that problem.

simultsop•2h ago
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.

jasonthorsness•3h ago
"But we have exactly the same number of reviewers."

LLMs can help with reviews as well. LLMs are not too bad at reviewing code; GPT 5 for example can find off-by-one, missed returns, all sorts of problems that are localized. I think they have a harder time with issues requiring a higher-level global understanding. I wonder if in the future you could fine-tune an LLM on a big codebase (maybe nightly or something) and it could be the first-level reviewer for all changes to that codebase.

noosphr•1h ago
The same way that we dealt with Excel programming. Ignore it until it blows up, then spend hundreds of thousands trying to fix it before the company goes bankrupt.
alexchantavy•3h ago
> They’re doing sweet battle with bots that are more interested in getting their newly-generated test suite to pass than solving the user’s problem in the simplest way possible.

Makes having good tests even more important. One technique I've found super helpful for coding with agents is to make the agent do TDD.

Basically ask the agent to come up with the test cases first, manually review those to make sure they make sense, then have the agent game itself to write code to pass the tests. I feel like doing TDD on my own manually is very tedious but having it be AI-assisted helps me move a lot faster.

theobeers•3h ago
“If AI doesn’t literally take all the white-collar jobs over the next few years, we won’t just have a stock market bubble to deal with. We’ll have a drought of educated workers.”

Indeed. For me this feels like an “I saw the best minds of my generation” moment.

s_ting765•3h ago
Vibe code hell is the wrong term to be used here. Vibe coding is used in reference to people now rediscovering low code and who have no interest at all in learning about nor owning the code the LLM generated.
Waterluvian•3h ago
> feel like they got it, and then freeze up the moment they had to write anything from scratch.

I had a deep rooted emotional response to this. One of the most gruelling and somewhat distressing experiences of learning to program was going through a tutorial, kind of getting it, then trying to make my own spin of the same idea and getting completely stuck.

But I’m also convinced that this gruelling process was the highest density learning I’ve ever done. I’ve learned much more since then, and a lot of considerably more complex things. But I’ve never matched the same density of learning.

The closest was probably high school math. That deeply uncomfortable “this hurts my brain and is stressing me out” feeling that I suspect isn’t normal for everyone.

multiplesof4•3h ago
So the core idea is that “vibe code hell” is when learners lean on AI to churn out passing code without building real understanding, so the fix is to turn off autocomplete/agents while learning and use chatbots only for Socratic guidance, citations, and concept checks—embracing discomfort to grow fundamentals. Interesting that long-form tutorials are fading even as “learn to code” interest stays high, this illustrates how LLM “sycophancy” can talk you into opposite conclusions on the same facts—hence their push for opinionated aides like “Boots” that won’t give answers but nudge you to think.
travisgriggs•3h ago
Disclaimer: I use Zed Pro and GPT daily to code. I have been coding for money since 1989.

I view the rise of these tools and particularly efficacy in programming as an indictment against modern programming. The modern web is both amazing and horrific. If bureaucratic is "using or connected with many complicated rules and ways of doing things" (Britannica), then modern programming may be the ultimate poster child. Sure, we love to slap this on "civil institutions", but the fact that I need an automaton, answers based on probability, to guide me in how to navigate doing some of the simplest things, is pretty sad (IMO).

I used to counsel aspiring new programmers, "It's not about knowing a certain language or framework. Your single most important asset will be an aptitude to constantly keep relearning. Some trends will stand out along the way, but you'll never quit learning new tools and languages".

Maybe it's just my age, but it feels like we've overflowed at some point.

Early programming was too electrical, too mathematical, so pioneers sought to close the gap between coding and human think. And yet, after years of speculative funding, what we're left with, is a whole different set of problems.

simultsop•3h ago
A few more speculative years, there will be no programming left.
jmhmd•2h ago
I agree with this sentiment. I have always wished, maybe naively, for the type of computing environment that makes possible things you see in sci-fi movies and shows, where someone can simple "route all power to the forward lazers!" or "use the power cells from your rifle to keep life support systems online!" This imaginary world where technological components are trivially interchangeable, compatible, reusable. My impression is that if you even asked a smartphone hardware engineer to replace a broken iPhone camera with a leftover working camera from an Android phone that, at best it would be an extraordinarily difficult task, and at worst, just may not be possible.
heisenbit•1h ago
A lot what has been heaped upon us is accidental complexity in Brook‘s silber bullet sense. LLM‘s cut straight through it, collapsing the silos of knowledge (and eco systems) build around languages and frameworks.
travisgriggs•17m ago
I view them as lossy compressors. Kind of like a JPEG for algorithms. And while our optical nerve stack tends to be pretty good at glossing over and correcting for erroneous pixels, it has been my experience that computers do not possess that kind of discernment. Thy do exactly as they're told. And a "pixel off" here and there in the execution of boolean logic can quietly not matter, or it can unravel pretty epically.
jncfhnb•37m ago
A non trivial problem is that documentation is difficult to write, search, and read. And that makes learning hard. Whereas AI makes learning easy. I’m fairly frequently impressed at how well it understands unreal engine.
solomonb•3h ago
> After all, it might just allow me to be more lazy, not more productive.

Is this not the true promise of technology?

gota•3h ago
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 work under a shop that is led by a senior-senior that is called a master. Apprentices become craftsmen, craftsmen become masters. AFAIK, the master does not 'offload' project guidance into non-craftsmen, it is an expected part of the craftsmen role to be project/product managers/owners.

I've said this a million times to close friends and at this point I'm only half joking. We, and I'm including myself in the 'developer' crowd although I may not deserve it, have really dropped the ball in not being a 'guild' since way back when. At least since the late 1980's; and certainly since before the Original Boom of software dev as a profession (I'm assuming it was late 90's? I know not)

(Although I suspect that if that were the case we'd have fewer developers throughout the 00s and 10s, which may have impacted the development of the field itself in unexpected, but likely negative, ways)

rhetocj23•3h ago
You learn by doing and thinking.

Not reading and watching.

Pure and simple.

gota•3h ago
Yes, but even if we all agree the problem with education at scale remains - there is a very finite and limited amount of 'attention' from craftsmen/masters to distribute, which limits the amount of apprentices.

The alternative has been to massify education for 'students' (not apprentices) in passive lectures with 'exercises/homework', which does not work as well for most things and particularly for crafts.

BTW for a very minor portion of the population the 'student' route is just as effective as the 'apprentice' route, but these are in my experience the exception

scottyah•2h ago
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).
leptons•2h ago
If you are trying to teach yourself programming and never read any documentation, you're going to make a mess of it.

If you're trying to work out at the gym on your without reading anythi g about it first, you'll probably make a mess of it.

There's a lot of info out there about how to train at the gym, as well as how to write code. People who know how to read can certainly get a long way by reading a few simple tutorials.

65•2h ago
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.

AstroBen•1h ago
Reading and watching fills your brain with whats possible

Doing and thinking solidifies it, teaches you to use the things you've read about

You need both

When I'm learning something new I like to skim a bunch of content upfront to get an idea of what's there

marcosdumay•42m ago
> fills your brain with whats possible

It doesn't. That's the problem.

It fills your brain with procedure. For a short time.

If you solidify the procedure, you will be able to perform that one task. What on software development is still useless.

Only at the next step, where you know so much that you can think of your own new procedures that you have basic competence at software development. There are other professions like this, but for most, basic competence happens before you even solidify the procedures.

yunwal•29m ago
If you understand the difference between greedy algorithms and non-greedy, you also understand the difference between learning by doing and building a solid foundation before tackling a problem.

For most simple problems, it's true that the taking the seemingly shortest path to solving the problem is good enough. There are other problems where you simply have to understand the abstractions at a deeper level than you can visualize in code. It's there that things like reading a textbook or taking a course can help.

AstroBen•16m ago
Can you give an example?

I mean: if you're learning a new language/library/framework it's really useful to have a broad idea of what the tooling for it looks like.. what features does it offer? You can look up the details when you need to

It's really useful to have a broad knowledge of algorithms and what problems they're applicable to. Look up the details later

If you're going into a new domain.. know the broad, high level pieces of it. You don't need to pre-learn the specifics of websockets but if you don't even know they exist or what they're useful for in web development.. that's kind of a problem

Even more abstract concepts like how to design code there's a lot of good info out there

If every generation had to re-invent the wheel from scratch we'd never get anywhere. The problem people have is they think ONLY reading is enough

majormajor•3h ago
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 choices is much less common.

An apprentice model doesn't really change that. Your average electrician gets called to many more "here's new construction that we're wiring from scratch" jobs than your average corporate engineer gets "we need to set up a new project from scratch without copying any of our existing files or folders."

abnercoimbre•2h ago
A bit of a shameless plug: join a coding community [0] putting in-person meetups above online interactions [1]. It doesn't have to be ours, just any group of developers invested in the idea of craftsmanship. This may not solve your concerns directly but it's a step in the right direction.

From where I stand, we're never going to find what you want in the workplace for reasons which predate LLMs: job hopping, remote/hybrid work, incurious managers etc.

[0] https://handmadecities.com/meetups

[1] https://abner.page/post/exit-the-feed/

deadbabe•2h ago
My problem with apprenticeship is that my workflow simply isn’t optimized for performative demonstration. It’s messy, haphazard, and a junior would have to sit around watching me do a whole lot of nothing at times. I don’t want to teach, I want to get work done.

Juniors need to just accept they will have to learn the hard way, on their own, asking occasional questions and looking at tutorials until stuff sticks.

Anonbrit•1h ago
Any dev who consists themselves senior and hasn't developed some mentorship skills doesn't deserve the title. Even if it's just freeing up half an hour a week to pair program with a junior on something or talk through their current assignment.
pfortuny•2h ago
Actually, even before apprenticeship comes drilling. Repeat, repeat, repeat.
Scotrix•2h ago
+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 :-).
nvarsj•2h ago
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.

xboxnolifes•2h ago
> The skillset can be entirely self taught if you're intelligent enough.

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

Yes you can, and yet they still have apprenticeships.

nvarsj•2h ago
Sorry, but in no way can you equate an electrical apprenticeship with being self taught. The variety and complete insanity of wiring in different installations requires wide exposure (under an experienced mentor) to be a competent electrician.
tokai•2h ago
Sure you can be self taught in plumbing. Overall we are just much less accepting of big screw ups with plumbing and electricity than we are with most software.
somenameforme•2h ago
I'm skeptical of this. There is an extremely large barrier to entry in terms of the cost of the supplies and hardware. And how would you even begin to realistically get practice/experience working on and solving the countless issues plumbers are responsible for, all in different contexts with different setups? And then there's also a safety issue - plenty of environments and tasks plumbers are responsible for can be quite dangerous. Danger and self-learning isn't entirely a non-starter, but it's certainly an part of the 'balance' here.

By contrast software just isn't comparable at all. You can sit at your desk, pay $0, and the only limitations to your experience is the amount of time you're willing to dedicate.

littlecranky67•2h ago
> 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.

hintymad•2h ago
> 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.

leptons•2h ago
I'm self-taught and did pretty much all of those things. All it took was reading the docs.
guhidalg•1h ago
I downvoted you because you are exceptional but the rest of the world is not. Most people benefit from traditional education, software engineering is not different.
Muvasa•1h ago
BS. Everything I learned from college was me anki and youtube. Lectures were wasting me time from actually studying. Most people I talked to they said. They didn't follow the lecturer at all just sat there like me for the attendence. There is no reason why we should continue to have mandatory lectures when you can just record them like Gilbert Strang did.
cultofmetatron•1h ago
its not THAT exceptional. I myself know several people who bootstrapped themselves into being descent software engineers. Traditional education is certainly fine for some people but its not the only way for the masses to learn. whats missing is the discipline of pushing yourself when you have no immediate extrinsic motivation.

You might have had a point a few decades ago when the information itself was difficult to fine but with the internet and online courses, its easier than ever to teach yourself in a "nontraditional" setting.

jjcob•1m ago
I was a self-taught software developer who already made money with programming for ~10 years before I took my first computer science classes.

Those classes unlocked a whole new level of programming for me. I just didn't know what I didn't know before.

People keep reinventing the same shit if they haven't learned about it before.

Sure, you can learn many things online. But for most things you just don't even know that they exist, you wouldn't know to search for them.

palata•1h ago
I downvoted you because I kindly disagree. Seems like that's how you do it.
timr•1h ago
> 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's possible to get a degree and still not be better than a very junior engineer at a software company (and quite a few graduates are worse).

> 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.

This was not my experience, nor is it what I have seen in most university graduates. It's still quite possible for a CS grad to get a degree having only theoretical knowledge in these topics, and no actual ability to write code.

This leaves open the question of where "the best place" is to learn as-practiced programming [2], but I tend to agree with the root commenter that the best programmers come up through a de facto apprenticeship system, even if most of them spend time in universities along the way.

[1] Their goal is to produce professors. You may not realize this if you only went as far as the undergraduate diploma, but that is mostly what academics know, and so it is what they teach. The difference between the "best" CS programs and the others is that they have some professors with actual industry experience, but even then, most of them are academics through and through.

[2] Code academies suck in their own ways.

throwup238•1h ago
> 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's possible to get a degree and still not be better than a very junior engineer at a software company (and quite a few graduates are worse).

Having been self taught in both software and electrical engineering, I’ve experienced a lot of this.

In EE, it’s amazing how many graduates come into the job without ever having used Altium/KiCAD/Cadence for a nontrivial project or who can give you a very precise definition of impedance but don’t know how to break out an engineering calculator to set design rules for impedance controlled differential pairs. Or worse yet, people who can give you all the theory of switching model power supply but can’t read datasheets and select parts in practice.

fragmede•1m ago
Yeah the practical part is what does it. Students need time on their particular niche's software programs. Outside of Altium/KiCAD/Cadence there's also Mastercam, ANSYS HFSS, LTspice / SIMetrix/Keysight/CATIA/Synopsys/Dymola, among others.
ryandrake•1h ago
Yea, I started to learn how to program in my early teens and made a lot of progress just messing around on my own. Then I went to University for a CSE degree and spent 4 years basically doing applied math. Yuck. Finally once I got out of University and into industry, I started learning again practical things like debugging, build systems, unit testing, application development, and so on. My programming skill growth quickly restarted.

Looking back, I'd consider my University degree to be essentially a 4 year pause on growing my programming skills.

dr_dshiv•57m ago
Thank you for saying this clearly. I love universities. They are so far from supporting apprenticeships. Even phds — they don’t do enough work for the senior professors to count as apprenticeships. Maybe postdocs. But the system is not great—we need guilds.
vulk•2h ago
I use LLMs for teaching me how code exactly like that, I am the apprentice and the LLM move forward only If I say so, it does only explaining and teaching I do the writing. I much prefer it than looking for the next course or tutorial. The tutorial hell is mainly a problem of the people who decided that they can be teachers. From the countless books and courses I have purchased nothing actually teaches you anything, the whole model of teaching someone how to code is completely wrong in my opinion. At this point it is just plain frustration I rather prefer to tell the LLM to look for the latest documentation of a language or just go and look the documentation myself, a library, or whatever, and come up with a plan from it. My only gripe is that I am not sure if the LLM hallucinates and it is actually looking at the thing I pointed to or just spits the things that It was pre-trained on.
lispisok•1h ago
Tech has the issue where any sort of gatekeeping is seen as bad because people in the field have so much hubris they think they can never be replaced and there has been a coordinated effort by capital to flood the field with labor to drive salaries down. You could go further and say the complete lack of professional standards is why we have this leetcode humiliation ritual interview process which has nothing to do with the actual job has become the gatekeeper.
groos•3h ago
'Learning must be uncomfortable' - this is the key reason there are some professions which pay more than others. Some people are willing to bear the mental discomfort while others aren't. A lot of people are far more willing to bear physical discomfort but that's almost never monetarily rewarded.
dang•3h ago
I tried to find a representative phrase in the article that would make a good replacement for the baity title*, but I didn't find one, so I did a best guess. If anyone can suggest a better (i.e. accurate and neutral) title, we can change it again.

* in keeping with https://news.ycombinator.com/newsguidelines.html: "Please use the original title, unless it is misleading or linkbait."

SoftTalker•2h ago
When I was a beginner in school we got "hello world" as an example, and were on our own from there.

Of course things were much simpler. You had an editor, and a compiler that you ran from the command line. At some point you would learn about Makefiles, but not before you would appreciate their value.

And there was no CI, no source control, no IDEs, no TDD frameworks.

I can see that throwing a brand new developer into something like Visual Studio would be overwhelming. Even I find it overwhelming after three decades. I still use emacs and a shell.

sfarshid•2h ago
tried reproducing the "Sycophant Problem" example in ChatGPT but couldn't.

A: https://chatgpt.com/share/68e940a1-953c-8011-a8f2-3a1a0c51be... B: https://chatgpt.com/share/68e94067-ec74-8011-88e5-9d27670f31...

paxys•2h ago
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.
kazinator•2h ago
> We’ll have a drought of educated workers.

That's scary, because you cannot escape from the repercussions just by not being one of the dummies who relinquished all learning to AI.

You depend on being surrounded by other people who know what they are doing. And not just immediately surrounded, but in a broader scope.

JohnMakin•2h ago
If you are writing a tutorial, please for the love of all that is holy do not just make it a bunch of copy/paste steps without much or any explanation. Make me work through it, debug it, take me down the wrong path on purpose for the "aha!" moments. Leave copious amounts of explanation and documentation. Tell me what can go wrong and how I can fix it. I do not want a video. I hate videos. I know not everyone does and people learn differently but videos suffer even worse from the copy/paste problem, I'm essentially just parroting what I'm watching usually without much explanation either. And also, going back and referencing is difficult without taking copious notes.

"Now we do x,y, z, and voila! here you have it, a fully fledged (whatever)." Ok, but what did you just do? Why doesn't it work on my machine? etc. I've seen tutorials that do this stuff right and it's a very obvious night and day difference.

SoftTalker•53m ago
With any tutorial, don't just passively read it or copy/paste the code.

Take notes as you go. Type the code manually. Experiment with variations of the code. It does help your brain encode the information.

zahlman•31m ago
Applying the diátaxis (https://diataxis.fr) wisdom here: what you describe is really a how-to guide rather than a tutorial. These are also important, and you should seek them out (and ask for them) when they're what you want.

Tutorials fundamentally exist to serve a different purpose: to orient people within the subject matter, when they don't even know what question to ask. Going through steps in order is important so that the student can focus. Intentionally going down wrong paths can be counterproductive for the neophyte, because it means having about as much experience doing the wrong thing as the right thing. Debugging is a general skill, but technology-specific debugging can and probably should be taught separately from the "happy path".

A properly done tutorial will properly show the steps, and will have been tested to ensure that it can in fact be expected to work on everyone's machine. The parameters for success will be controlled as tightly as possible.

0x457•1h ago
Tutorial hell...if I had a dollar for every "Anyone has a tutorial on how to build X" where X is some very specific business idea.

I feel the same about "what books do you recommend reading to learn Y" Have you tried looking at the online documentation?

Usually see it from people that have formal CS education. They learned one way to learn things and refuse to adapt to real life.

Muvasa•1h ago
Documentation is not meant for learning. It's to be used as a reference. It's like learning medicine by reading a medical dictionary.
j45•34m ago
Vibe code is one way to learn code review and debugging