Do you think coding is a “basic skill”
Inspired By Zuck's post where he claims "...today it's clear that coding is a basic skill and is something everyone should be able to do"
https://www.facebook.com/zuck/posts/10102801304719681
https://www.facebook.com/zuck/posts/10102801304719681
38 comments
[ 51.5 ms ] story [ 300 ms ] threadAlso, I think coding is a great way to teach problem solving, but maybe using something like blockly or other visual programming tool may make this easier by removing the hurdle of learning a programming language's syntax.
There are still TONS of things that require me to write things by hand, it is a basic skill. No matter how bad I am at it I still need to be able to do it.
I don't think coding is quite on the same level. There are plenty of people who currently don't need to code to function in the world and will never have to.
However I do view coding as important, and in an increasingly digital world, something that people should have an understanding and appreciation of. As kids, most americans (all?) are exposed to art, music, and PE... I think that coding should be a requirement along these same lines. It isn't something you have to do for the rest of your life, but we should find emerging talent early and encourage it, and let everyone else get an exposure to better understand what it takes.
Programming takes a lot of problem solving abilities with some math and logic as well.
I would say that the mathematics taught before college is incredibly useful in day to day life. Without knowing how to add/subtract/multiply/divide, life becomes much harder. Life without algebra is not as much of a loss, but I use algebra for daily task. I would say calculus is not a big deal (unless you are in a science), but once in a while I will find it to be helpful.
To me, programming is roughly on the level of calculus; for some professions/people it is critical. For others it may only be useful once in a while.
But programming is a hammer that turns almost everything into a nail (in a good they-really-are-nails kind of way). Many programmers may not realize this because their jobs have always been to program. Go work for a couple months at one of those terrible office jobs that require a college degree but you couldn't really find a compelling reason why.
You (assuming you can program) will have a bunch of scripts that do all your boring shit. You will run most of these scripts once a day in the morning, and spend the rest of the day on Hacker News pretending to work and waiting until a believable number of hours has passed before turning in the spreadsheet that one of your scripts produced. When you want to mess with someone you will give them something immediately after the script runs and not tell them how.
There's still plenty of stuff that you can't bespoke automate, but the boring automation-friendly stuff takes up most of the day in most jobs. When you don't know what a hammer is, nails look like twigs that rust.
I worked at one of those jobs as part of work-study while I was still in school. It's funny there was another kid I used to work with there who was studying CS like me. Our supervisor had given him tasks in secret for him to complete and he had all these fancy scripts doing the work for him. I was floored.
There were all kinds of useless tasks we were assigned that would have taken seconds to complete if any of the office drones had the competency and foresight to write a script. Me and the other CS kid always used to muse and laugh about this.
Same will go for coding. If the next 10,20,30 years of further technological evolution makes it easy to start coding on the fly on any device, we might as well call it basic skill then ?
Until then, may be not so much even though coding is a good way to sharpen your analytical thinking and logic building.
https://en.wikipedia.org/wiki/Computational_thinking
But it is not a basic skill. Not everyone has an aptitude for it and very few have the desire.
But I do think everybody should know more about computers and networks than most people do now.
An analogy would be saying every human being needs to know about IC engines since everyone drives.
If you are having children now, what will they do in twenty years? Surely something that looks like today's economy will exist, but instead of automated assembly lines being rare and expensive they will be common and cheap. I read about a novel competition where 4 of 1400 entries were AI written. Will anyone with dream's of being a novelist be able to compete with the computers in twenty years.
In thirty years we might be a utopia or dystopia either way those who can write code will be much better off then those who cannot. My job... I am an automated software tester. I write the software that tests software, I could replace tens or hundreds of people annually. I am nowhere near the most effective developer. I do not like this, I prefer roles like my current one where I help people be more productive, but this is not all software jobs, but I have been in roles replacing thousands of people.
Write code or prepare to compete with software.
When I first saw this everyone was saying no it wasn't, so rather than reply to one of them I replied to OP.
The human mind will probably have little to no value in the economy of the future. Machines will inevitably write the books, make the movies, make the music and publish the science. Of course, there will probably still be a market for human generated content, but only because of human vanity. Humans will still play Go despite it having been mastered by machines already, and will still consider themselves "good" at it.
>Will anyone with dream's of being a novelist be able to compete with the computers in twenty years.
Most people can't even write well enough to compete with other humans, so very little harm done there.
>Write code or prepare to compete with software.
It doesn't matter. You can't compete with software, you have already lost. Human software literacy is nothing but a necessary stopgap until all coding is automated as well. Human computer literacy is doomed to become a fringe and arcane art, like calligraphy. How many jobs with good penmanship get you in the modern world?
This is why coding isn't a basic life skill. Most people never encounter code in their day to day lives. Their computers run applications someone else has already written. They only need to know how to push buttons. Coding is nothing more than the application of existing basic skills like reading, writing and logic to a niche (and soon to be obsolete) occupation.
That's... I'll be generous and call it an amazingly unlikely outcome.
At best, if not complete automation, then near complete automation.
We are all walking around with machines in our heads that do exactly what was claimed. It is just taking time to build them. There is no law of physics to break to make thinking software, just more information to understand.
But they won't replace humans overnight. There will be social unrest and coding will probably be useful while all that settles.
Yeah, tech companies would love it if there were greater supply in the developer labor market. That's not sufficient reason to necessarily be against things that expand supply, like everyone learning coding basics. Know what would make all of our salaries even higher? If we made sure the proles can't even read! You won't seriously say "Literacy is just an attempt by companies to increase the supply of high skilled office workers and reduce our salary." Also, what usually happens when a large portion of a country's able-bodied men are unable to work and society continues to punish them for being economically unproductive? I'd rather deal with a crowded job market than an American redux of the French or Bolshevik revolutions (it doesn't matter if the lack of opportunity is intentionally or situationally inflicted, starving angry hopeless people are actually one of the few predictable kinds of people).
If you believe that the point of education is to provide a reasonably skilled workforce to the economy then teaching basic coding to everyone makes sense (scripting will only become more powerful. User defined formulae and their ilk will exist outside of spreadsheets). If you believe that the point of education is to provide each member of society a reasonable set of opportunities to succeed in the economy they will need to compete in, then teaching basic coding to everyone makes sense. If, god forbid, you think the point is to provide a menu of all the interesting things that you can learn about and the minimum requisite skills for those pursuits, then it makes sense.
Some arguments against teaching Coding/CS and rebuttals.
The teachers won't all be Donald Knuth, that's fine. We make due with English teachers whose greatest literary contributions were terrible college lit mag poems, let's not hold coding/CS classes to higher standards.
Not everyone has the aptitude, sure, but plenty of us went through 12 years of Spanish class and would still be skin-crawlingly awkward to watch try to order a Taco in Spanish. If we didn't try to teach everyone things for which not everyone had the aptitude, then how would you discover that you did indeed have the aptitude?
It's a professional skill and lay people don't need to worry they're silly little heads about it? Then you never get to complain when no one around you seems to have an issue with voting for politicians who want to make encryption that "only the good guys" can unlock. How the hell is the average person supposed to understand why the wizards can do magic and put porn on their iPhones but they can't preferentially unlock said iPhones for the feds and protect them from hackers? Ever had someone who wants you to something stupid like "I need to make sure this file is totally and permanently securely deleted. But I need to be able to retrieve it later" or some other equally stupid request? It's because the person asking doesn't remotely understand how computers work. That guy isn't going to come steal your programming job if he has to take a year of CS in high school, but he might be easier in stakeholder meetings.
Look at Facebook or YouTube. Most people seem to be literate(ish). You wouldn't want to even interview them for a role that required writing at...
Therefore I can't learn.
Also I found with html that by the time I had got to more advanced tags I had forgotten the newbie ones.
This is the kind of person who can learn how to code.
Up your google skills, those questions should be answered fairly readily.
You might want to re-evaluate why you quit.
Eeh, I beg to differ. What you need is a good beginner book that starts with the real basics. You will need to be patient and disciplined because there's a lot you will need to learn (try to have fun with it).
I also don't buy your justification for why you can't program at the moment. All programmers need to know why "main()" is there and what "\n" does. It's not like the mark of a true programmer is the ability to blank out axioms.