Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I am tired of this "Everyone needs to learn programming" idea. It's exhausting. No. People doe not need to learn programming unless they need to deal with computers in a sense that they need to instruct them for automation.


In the world permeated by computing devices, a lot of people could benefit from being computer-literate in the sense that they have a passing familiarity of what a program is made of (at least that conditionals and loops exist, and by having flawed logic in them you get bugs), and that they could whip up a scrappy spreadsheet with a couple of formulae using a computer or even their phone.

It's more or less like with reading and writing ("I can write" doesn't mean "I'm a writer"), or driving, or other artifacts of modern life.


> in a sense that they need to instruct them for automation.

So basically everyone?


There are people who do not interact with computers at all. There are areas where there is no electricity. There are people in war zones. Examples that comes to my mind is, a janitor, an oil rig worker, a miner, a private in 3rd world country. Perhaps they never interact with computers in their lifetimes.


A janitor can't program his cleaning bots without it.

The Deepwater Horizon movie clips show workers arguing over all the things that have failed diagnostics testing, and how important that is or isn't. They're interacting with machinery 5.6km down.

Developed-world underground miners are already using heavy machinery that has to conform a cut to a specific 3d model which is adapted to the seam and the structural engineering of the tunnel. Open pit mines have similar structural concerns, but also environmental remediation issues. The trucks making that long journey down into the pit are all going robotic now.

An infantry unit in 2025 that hasn't already won or lost on overwhelming air superiority, is rapidly adapting drones to help it fight.

If you aren't making software, you're at least using software that somebody else created, you need to understand the problems and strengths of a software aided approach (as opposed to an apprentice aided approach, or a mechanically aided approach) and you're in a (hopefully) collaborative relationship to make that software better.


Try to find stats on mobile phone penetration in the poorest countries for a reality check of a broad "never in their lifetimes". But for this level of needless pedantics you don't need to go anywhere: in the richest country a baby dying before leaarning how to speak obviously will never interact with a computer and won't need to learn any language.

(though "obviously" I only meant people interacting with computers - among which every single one could benefit from adding some level of automation)


These people all have cell phones or know someone who does.


If software is eating the World, what does it mean when only a small self-selected group of people understand that software?

Do we gain more by having more people understand software? Do some risks get mitigated? I'd argue yes on both counts. And that's why I encourage people to get their kids to poke around with Scratch and maybe some Python. It's why smart people doing liberal arts degrees at Harvard still want to go and do CS50.


Cars are the primary mode of transportation but we don't expect everyone to be car mechanics. Some people pride themselves on being able to change their own oil and fix minor issues, which is admirable, but is obviously never going to be the norm.

Most people don't want to learn to code because it simply doesn't interest them as a subject, a perfectly valid way of living your life.


I'm not suggesting everyone becomes a professional software engineer.

So, no, not everyone needs to be a car mechanic. But everyone who wants to drive a car needs to learn how to drive it safely, and would benefit from checking the oil, tire pressures, and knowing something about how their car worked to keep it in good, safe working order. If the only people who know all those things are professional mechanics, we're in a worse place.


Not everyone is a mathematician but everyone learns Maths. And now a lot more people use Maths in their day to day lives as a result.

Most professionals work with data but have low technical literacy. Imagine if most professionals could just query databases themselves. In a generation or two it could be made possible.


Lots of admin work could be automated away if the person that understands the domain did it. Excel is a great example because its really hard to do complex stuff in yet non devs do it all the time. Decent APIs and some AI could make that way easier.


I think you've made a fundamental mistake. Whether or not someone understands software is not based on their job title or their desires. Nor does typing to an anthropomorphized language model expand the understanding of software. It may provide the material necessary to help someone learn, but learning is a change in behavior as a result of experience. You must fail at something in order to prevail. Using LLMs to work around failures without understanding how they occurred and why those failures were possible will not provide learning, but instead prompt the same behavior: Asking an LLM. Same behavior, same result.


I am not against people understanding software. I never argued to have "a small self-selected group of people understand that software".

However "learning to program" and "understanding software" is not the same thing. Learning to program helps one to better understand software, but it's not a necessity or requirement of it.

"Everyone needs to learn" vs "People who needs to interact with software needs to better understand it" are very different points on the "understanding software" axis.


By that reasoning most people would not have to learn how to read or write, or do basic arithmetic.

Not everyone should hold a PhD in compiler design, but simply being able to write some BASIC commands might be hugely beneficial to society.


On the contrary these are not orthogonal to the base premise of everyone needs to learn programming.

Reading and Writing is not something you learn just because it's beneficial to society. It's beneficial to one-self's life as it's the bases for communication. It can be placed on safety needs or belonging needs on the Maslows' Hierarchy of needs.

Basic arithmetic is requirement for continuity of one's life as you can't plan resource management (money, food) to function without it. It could be put on the safety needs.

I am having trouble positioning programming in any level below self actualization.


excel has already done just that.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: