Hacker News new | ask | show | jobs
by Lewisham 3779 days ago
Do some Googling around the idea of "procedural literacy".

Coding is like reading, maths, other sciences, in that while you don't need to be very good at it, you really do need to know what computers are and are not capable of and how they solve problems. You need to be able to do this to do all sorts of things; be a judge in a courtroom and not fall to the CSI effect, to not worry about "hackers stealing your credit card" over SSL, etc. etc. It's simply not OK in this day and age to look at a computer like a magic box.

Everyone should learn to code. Not everyone should be a coder.

2 comments

By that token, judges should also be biologists to not fall for stupid arguments about DNA. They should be forensic analysts to not fall for misguided arguments about forensics.

And people should really all be physicists to not be worried that the Large Hadron Collider will blow up the universe, and aerospace engineers to not be afraid of flying in airplanes. They should all be soldiers, to understand what war is.

Are you arguing this point because you happen to be a programmer, so are more personally affected when people get things wrong in your field? If not, please explain the difference.

Studying mechanical engineering has made me more worried about flying..
Learning how to code is not the same as computer literacy. There are plenty of people who code for a living who have little understanding of things like network security.

We work in an very complex field where it is impossible for one person to have in depth knowledge of all aspects. I offer up all the security vulnerabilities from companies like Microsoft and Google as evidence of this fact.

Yes, a person should have basic computer literacy; but unless they plan to code in a regular basis, teaching them to program is a waste of time.

"Coding" has nothing to do with network security or the intricacies of programming languages or using computers. At its core it is simply a extension of logic operations (if...else, loops, recursion, etc.) with variable manipulation (moving data around). It SHOULD be a fundamentally taught disciple, NOT because people need to code but because most people should have enough recognition in their lives to understand when something could or could not be managed programmatically.

Learning math in school is not something most people use everyday, that is true. And most people forget all of the formulas they memorize. BUT, if I am trying to figure out which peanut butter is cheaper per ounce I can do some simple math to figure it out. If I am trying to figure out the height of a tree I remember "oh there is some geometry formula for this" and can go look it up. What we need in the modern era is more people to have that base level of knowledge so they can say "rather than doing this spreadsheet every month, can't we just hire a programmer to automate it?" because right now a ton of repetitive crap work is being done simply because no one knows any better.

What you are talking about is a cost/benefit analysis, which does not require knowledge of programming.

You are also making an assumption that tasks are not being automated because business people do not how to write a line of python/ruby/Java/whatever. Maybe they have limited funds and they are focusing their expenditures in revenue generating work. Maybe the RoI is far in the future that it does not make sense. Maybe they need to be able to change formulas on a moment's notice, so they don't want to be beholden to a developer.

A CEO needs an understanding of their business and a high-level understanding that computers are capable of automating tasks. If coding skills are needed, the CEO can hire a CTO in the same way they hire a CFO to provide accounting skills.

I completely agree with this. Understanding the way everything fits together is likely far more useful than being able to write a basic Python script.