Should We Really Try To Teach Everyone To Code? 291
theodp writes: Gottfried Sehringer asks Should We Really Try to Teach Everyone to Code? He writes, "While everyone today needs to be an app developer, is learning to code really the answer? Henry Ford said that, 'If I had asked people what they wanted, they would have said faster horses.' I view everyone learning to code as app development's version of a faster horse. What we all really want — and need — is a car. The industry is falling back on code because for most people, it's the only thing they know. If you want to build an application, you have to code it. And if you want to build more apps, then you have to teach more people how to code, right? Instead, shouldn't we be asking whether coding is really the best way to build apps in the first place? Sure, code will always have a place in the world, but is it the language for the masses? Is it what we should be teaching everyone, including our kids?" President Obama thinks so, telling Re/code at Friday's Cyber Security Summit that 'everybody's got to learn to code early' (video). But until domestic girls (including his daughters) and underrepresented groups get with the program(ming), the President explained he's pushing tech immigration reform hard and using executive action to help address tech's "urgent need" for global talent.
skynet (Score:5, Funny)
No, we need to finish Skynet as soon as we can, and then it can do all the coding for us.
Re:skynet (Score:5, Insightful)
No matter how good it could code, you could give skynet bad requirements and it would still give you crap
We need to teach people how to use logic, perform analysis and give clear descriptions of what they want to happen
Far too often I have seen 'customers' give an incomplete description, fail to understand what they want to happen and then spew at the developers that they failed
Just teaching them to work with others and stop expecting magic unicorns to appear when they described a turd would remove half of the barriers to delivery
Re:skynet (Score:5, Insightful)
We need to teach people how to use logic, perform analysis and give clear descriptions of what they want to happen
A little knowledge is a dangerous thing. I deal with people describing what they want, and in my experience, I'd much rather deal with somebody who can tell in his own terms what problems he's facing, and wants to have fixed. The worst are people who know a little bit about coding, and instead of describing the problem, they start describing a "solution" they came up with.
Re: (Score:3)
We need to teach people how to use logic, perform analysis and give clear descriptions of what they want to happen
That would be every politician's nightmare... you can't have people thinking and reasoning, they are way too hard to control if they can figure anything out on their own.
What makes the job easy is to make everything an emotional issue requiring visceral over reaction.
Re: skynet (Score:5, Informative)
Yup, that is how it is supposed to work. In the best case you work through the roles, use cases, develop screen mockups and a data design (usually don't show that to customer, but it should support the screens and use cases)
However, on more than one occasion I have run into a scenario where the customer will have a single requirement (this would be for an insurance interface)
1. Create insurance interface that meets requirements set by insurco
Then they will include an attachment that demonstrates the line format for the output
The following conversation goes like...
Dev: Let's work on the process flow for adding insurance, dropping insurance, changing insurance tier (add/lose dependent etc)
HR Customer: It's in the attachment
Dev: Can I contact a rep at insurco to find out how they handle these cases?
HR Customer: No, I am the only contact to insurco, everything must go through me
Dev: Okay, but I need to be ready to handle the business cases, so will you please walk me through it?
HR Customer: QA already signed off on my requirement document, so you have to accept it
This continues ad absurdum through an entire dev-test cycle with full customer acceptance testing and the day that it goes into production...
HR Customer: It's broke, you failed because it does not do what we need it to
Eventually we find out that the HR data entry people use multiple different ways to drop coverage, many of which the HR rep was not aware of.
Long story short, I end up learning HR's job better than they do in order to deliver anything, with them complaining about my delivery and demanding that I be removed for insubordination...
This happened years ago in a waterfall based dev shop. I have worked earnestly since then to apply Agile, prototypes, fast turnaround for approval and (usually) taking the time to learn the customer's job because they do not know it themselves
Simply getting the customer to accept logic, admit they do not know everything and get out of my way would help
Re: (Score:3)
Re: skynet (Score:4, Insightful)
In such cases you take the requirements document and fulfill it exactly. Then , when the customer says "but its broke and doesn't do.." you pull out the requirements and say "it does everything you asked us to do, anything further is additional development and will be billed accordingly".
Why else do you think government IT contracts cost so much? Why else do you think Agile was invented?
The core problem is that the customer doesn't know how to achieve successful delivery, they need to be educated in fundamental agile processes, of iterative development to evolving requirements (and by evolve, I mean "as the customer figures out what they want".
I used to have similar problems with a customer, but fortunately I had a contact who knew the business. When I received the stupid requirements, I'd phone him and ask what they really meant. Then I'd develop what he said and deliver it to the customer who was always happy, not matter how far from the written spec it was (it helped that my contact was a senior guy at the customer or it wouldn't have worked)
Re: (Score:2)
No. SkyNet was a monolithic system based on hardware and software. It was paranoid about the human race and wanted to destroy it. The Borg are a democratic, one Borg one vote[1], highly parallel wetware based system which focused more on assimilation and extension as opposed to genocide.
[1] Foot note. I found the entire 'Borg Queen' concept a cop out. It was much more intriguing to me to have a situation where there was no one authority. It in fact created an interesting juxtaposition between the Enterprise
No (Score:5, Insightful)
Most people aren't fit to code. Don't force them to do something they won't enjoy, are going to end up hating, and is most likely going to be very useless in their lives. Well, okay, many think that about maths too, but then I can see that the fundamentals of maths are needed everywhere.
Re: (Score:2)
Re: (Score:2)
...break down complicated tasks into simple steps and then explaining those steps to an idiot.
Hmm, that sounds suspiciously like the IT support I do every day.
Re: (Score:2)
Hmm, that sounds suspiciously like the IT management I do every day.
Signed,
your boss.
Re: (Score:2)
Hmmm, that sounds suspiciously like the corporate behavior I have to watch for every day.
Signed,
Stockholder
Re: (Score:3, Insightful)
Far too many people have built-in barriers to performing these steps
Belief in magical entities that change the world at will, or belief in absolute rules have to be the biggest barriers
Re:No (Score:5, Insightful)
Far too many people have built-in barriers to performing these steps
Belief in magical entities that change the world at will, or belief in absolute rules have to be the biggest barriers.
Coding is world built entirely from absolute rules and that's why people can't do it. They can't actually say what they mean, they just grunt a bit and expect you to have "common sense". The compiler has absolute rules, however.
And if you don't believe in magical entities that change the world at will, you haven't debugged a sufficiently complex system. "Follow these exact steps and the problem will reproduce about 1 in 5 times, more or less."
Re: (Score:3)
Fine. But seeing as they don't all do that, a simple coding course in high school -- perhaps replacing the tribal me-better-than-you training of competitive sports -- could serve to at least somewhat uplift those who aren't otherwise particularly motivated. Actual learning of logic and math would likely do the same (and no, I'm not talking about what passes for sufficient math to graduate from high schools these days.)
Look at all th
Re: (Score:3)
I look at the twisted society that the government and the corporations have created
Back in the 60's and the 70's, I and my peers fought our battles
Back in they day, youth staged protests that actively turned people against the causes they claimed to support. No one cared, or course, because no one cared about results, only intentions, and getting laid and or high, which the protests were the best social scene for. That hasn't changed at all.
The lawmakers are nearly 100% in thrall to the rich and powerful;
Just like though all of history, good times and bad. The good times come when those lawmakers have limited power, the bad when they have near-abso
Re: (Score:2)
Sorry for the infamous car metaphor but I think, for once it is appropriate.
By Your logic, in the beginning of automotive era (let's say around 1900) one could have said "most people aren't fit to drive a car". And in fact this sentence was most certainly true then given what the experience of driving one was.
But now in some countries lack of driving license is a sentence to a miserable live (compared to other representatives of the same society).
Could it be that today programming tools just aren't mature e
Re:No (Score:5, Insightful)
You may be more correct than you think - yes, we've allowed everyone to get a driver's license.
No, civilization is not the better for it.
Be careful what you ask for, you just might get it.
Re: (Score:2)
Most people aren't fit to code.
Translation: I'm super special and unique because I can code.
Get over yourself. Children can teach themselves.
Re: (Score:2)
Or a realization that people have strengths and weaknesses. I happen to find programming easy but if you wanted me to do something artistic such as a painting or write a poem then I would have great difficulty.
I don't know why there is such a great focus on getting people to code. I think that people need to know how computers work but you don't need to know how to program in order to achieve that. We don't expect everyone to become a doctor in order to teach them about health or you don't have to become
Re: (Score:3)
Re: (Score:2)
Indeed.
I didn't learn much math in school, but I caught up on everything I needed as an adult -- as I needed it.
I didn't learn any programming in school, but I caught up on everything I needed as an adult -- as I needed it.
I know as much math -- and programming -- as I need to always accomplish the things that I'm trying to do, whether calculating volume displacements, de-rating wiring, or hacking up a strange combination of awk, sed, and perl to homogenize a random dataset into some higher-level program th
Re: No (Score:3)
Re: (Score:2)
Most people don't need to write "professional" code. They need to write a few simple things. Just like most people don't need to be able to cook a hundred meals an evening, but it's awfully handy to be able to make yourself lunch.
Re: (Score:2)
Re: No (Score:4, Interesting)
I work with physicians. They quite often have to look things up in databases - patient records, imaging, test results, etc. Simple SQL queries would let them find exactly what they're looking for. Since they can't do that, they have to use a basic search interface somebody made (which they paid an arm and a leg for) and then look through individual records. Even more painful is watching them collect charts for some purpose. A simple script with a little SQL would do nicely, but instead the job is so painful they usually hire someone to sift through everything. That someone invariably can't write the simple script either, so does the whole thing by hand.
Similarly, our research coordinator needs things like lists of patients with missing data. Compiling that is a two line Python program (I did it for her once) or a day of clicking. Guess which she has to do?
I have a friend who's a due diligence type accountant. Her job is to sift through accounting records looking for stuff. There are some programs for doing that kind of thing, but only if the data happens to be in the right format. So she spends a lot of time wading through things by hand. The ability to write simple scripts wouldn't make the job automatic, but it would help a lot in searching and organizing.
I know a secretary who is supposed to keep the boss's CV in order. She has to take new publications and enter them on a couple of web pages and End Note. The citation records themselves are online and easily accessible. If she could write some basic code it would be pretty much automatic, but instead she just types them all by hand, repeatedly.
A friend of mine wants to make a webpage with some photos. She doesn't want anything complicated, and most of it can be done with existing open source stuff, but she wants a couple of custom tweaks. She can't do that. Actually, she can't even do the setup for the site, because she can't follow a bit of basic HTML or tweak some javascript.
There's an immense amount of busywork that gets done because people can't write a bit of special purpose code for themselves. Not to mention the problems caused by people who don't possess the logic or problem solving skills that they'd pick up in an intro coding class.
Re: No (Score:5, Insightful)
Sure, right up to the point where the 'customer' feels like you are challenging their status by asking questions that they cannot answer (and should probably know to perform their job)
Yes we should but... (Score:5, Interesting)
It needs not to be with the expectation that everybody will become an app developer.
Learning to code provides a person with an opportunity to develop a better understanding of
1. How a sequence of operations is constructed
2. How logic is part of the decision making process
3. How to approach problems in an organized fashion
4. How to communicate, describe and document ideas
5. How to work with others in a collaborative environment
My business (https://www/mimetics.ca) uses robots to teach programming, but it's important to note that not everyone will become a programmer (or develop applications for robots) but the skills learned by creating simple applications are applicable in life and will help then in a multitude of other pursuits.
Saying that people should learn to code because at some point they will probably will have to program an app is counter-productive and will probably create some very negative perceptions about it. Teaching people (kids) programming as a way to develop the soft skills above and give them a taste of it so they can decide whether or not to pursue it as a career is much more effective and positive.
myke
Re: (Score:2)
Re: (Score:2)
3. How to approach problems in an organized fashion
DING! DING! DING! Especially teaching people to break problems into manageable chunks, and construct layered abstractions. (Even if it's only 2 layers--not enough to master complex programming, but still that's a huge jump for most people.)
Re: (Score:2)
Re: (Score:2)
We have more than enough shitty apps. What we're lacking is accountants who can write a basic program in something more sane than Excel, doctors who can write an SQL query and mechanics who can tweak a simple billing program for their needs.
Re: (Score:2)
I wonder how many programmers actually write applications? If it's just "apps", you know those really stupid programs on "smart" phones that are URLs wrapped inside of XML and given a nice icon, then a very small percentage of programmers actually do that, probably more than we need. If it's all applications for a computer/phone/tablet then I still think it might not necessarily be the majority of developers who do this. I think most devs are doing infrastructure work or support; like IT, operating syste
Re: (Score:3)
The real que
Re: (Score:2)
Troubleshooting is a skill applicable to, and learned in, far more than the narrow domain of coding. Your experience is biased by the crowd you hang out with in your chosen profession.
But any good mechanic (taking that as a generic term for electrician, plumber, etc also) is a good troubleshooter/problem solver, ditto any other expert in their chosen field (doctors, lawyers, salespeople, etc). It's a skill you need to be a good programmer, but it's a skill you need to be good at anything. How do I isolate
Re: (Score:2)
can we fit a meaningful coding class into the high school curriculum?
How about in middle school. I highly suspect that if we dropped algebra, and some intro to programming (don't be afraid kids, it's not math), that when they moved onto the next years course (algebra 2, or whatever), they'll already have their minds wrapped around what middle school algebra tries to teach.
We need to teach people to think, and to use tools (Score:5, Informative)
Ah, the computer, that magnificent "universal machine."
Have you ever watched as someone tries to take information from, say, Microsoft Word, and use it to do mailing labels? Especially if the information has been formatted to be "pretty." Let me tell you, it ain't pretty.
We don't need for people to learn to "code." We also don't need for people to learn how to use particular proprietary products. We need for people to learn things like basic math, basic logic, and understand how they can use computers, with a teensy bit of effort and understanding, to accomplish their unique and specific tasks. We also need to teach people that they should not feel helpless when confronted with a computer program that doesn't do precisely what they want.
I feel a bit Mao-ish on this subject, and truly think the best solution would be to issue a voltage surge to all existing infrastructure, and not allow anyone to buy any replacement computers until they demonstrate an understanding of their jobs (not the computers' jobs, the individual workers' jobs).
Re: (Score:2)
What about surgeons? Should they be forced to learn to code? What about basketball players? Landscapers? Chefs[1]? There is a huge set of people for whom coding is irrelevant. Learn critical thinking? Yes. Coding? Probably a waste of time.
[1] I would argue that a recipe is an algorithm. But implementing it in code is stupid. You can't eat code.
Re: (Score:3)
What about surgeons? Should they be forced to learn to code? What about basketball players? Landscapers? Chefs[1]? There is a huge set of people for whom coding is irrelevant. Learn critical thinking? Yes. Coding? Probably a waste of time.
Were these people taught Art or Music in their public education? Were they taught history, or calculus? Were they forced to learn physics and geography? While they may not use all of the lessons taught to them as part of their career (the reason why "Are you Smarter then a 5th Grader" is actually a feasible show), it's possible that it will help them become well rounded and productive members of society.
Re: (Score:2)
And that logic is such a pain to override when you want to, for example, model natural language, so everyone can code in their native tongue (you could still drop to lower-level code when you wanted).
Re: (Score:3)
Unfortunately, many 'successful' business-people are only adept at rhetoric
Re: (Score:2)
Wrong skill (Score:2)
Seems to me we need to teach people to vote better.
Comment removed (Score:5, Insightful)
Re: (Score:3)
My god. You've manage to Rule 34 this discussion.
I am totally impressed.
Ford never said it (Score:2, Insightful)
http://quoteinvestigator.com/2011/07/28/ford-faster-horse/ [quoteinvestigator.com]
It doesn't invalidate the point, but it's important to be accurate.
Quantity != Quality (Score:2)
Saying we need more people to code is like saying we need more writers. Not everyone is cut out for buidling apps and it takes a bit of experience to get right.
It's conflicting because fixing someone else's crap code is easy money and you can step in and look like a hero.
Re: (Score:2)
And yet for some reason we teach everyone to write. Weird.
Re: (Score:2)
Saying we need more people to code is like saying we need more writers.
No, it is saying that we need more people to be able to write. I don't think that the argument is to have everyone people professional developers, but it sure will create a skill set that a large percentage of the population will be able to use in one form or another at some point later in their lives.
What We Teach People (Score:2)
What is this ? Keep asking the same question (Score:2)
Until you get the answer you want ?
Why not, why don't we teach everyone electronics engineering ?
Why don't we teach everyone sales and marketing ?
Why don't we teach everyone the law ?
Arguably the above would all be more useful for people to know in a non professional fashion than how to code.
Re: (Score:2)
This. Most of the workforce would benefit from basic education in all aspects of business. Sales, marketing, finance, project management, business development, etc.
In our neck of the corporate world (software), too few employees understand how business actually functions and what it really takes to make a business work. The current culture of "just build an app and you're set for life" leaves out many of the key steps needed to build a business. As a result, most promising applications go no where and most
Geometry (Score:2)
Treat it like geometry. Everybody needs a semester of it, for exposure to an essential concept in logic/applied math, but anything beyond that should be elective. There's nobody who can't do basic programming who can pass geometry, but not everybody is cut out for it as a career nor enjoys it.
I wound up taking an extra year of trig in high school, but the most I've ever used it for is roof framing (actually the most approachable book on the subject I've encountered on trig is Roof Framing [amazon.com] by Marshall Gros
Didn't we just do this? (Score:2)
Didn't we have this very debate not long ago?
No, we shouldn't teach everybody to code. We don't teach everybody to balance their own checkbook, or why credit cards with a 29% interest rate are a bad thing. Let's start there. We need basic financial literacy. We need basic scientific literacy. Let's get there, and maybe then teach everybody to code.
Re: (Score:2)
Let's start there. We need basic financial literacy. We need basic scientific literacy
Good idea. Let's make an app for that.
Should we teach everyone? (Score:2)
One solution to the "everyone should learn to code" dilemma is to integrate early coding into classes where kids can choose among a variety of roles in creating multimedia projects. Some students will naturally be more technically-oriented, some will be more artistic, creating art and music for the project. Others may be able to write a story script. Still others may be best at coordinating the project with organizational skills.
This is actually how real life works in my profession, the videogame industr
Fish and farm (Score:2)
we should teach everyone how to fish and farm and hunt.
I could never learn programming my brain is just not wired for it (tried plenty of times, spent lots of time on EA Auction script back in the day and even though I could modify if by inserting other peoples code writing my own was like looking at Chinese characters) but I could rebuild a small engines, fix and modify my rc cars, do graphic design and art.
Jack of all trades, master of none (Score:2)
That's all great and all if everyone had the same IQ and motor skills.
Re: (Score:2)
Re: (Score:2)
It's easy. Get behind the wheel and look like you know what you're doing, same as most weekend boaters. It's not like driving - you won't end up in the ditch or hitting the sidewalk.
Even docking isn't that hard.
No, we don't need to teach everyone to code (Score:2)
Someone, someplace, has decided that for the United States to remain competitive in the global arena, we need to have more people who can code, and that the best way to achieve that goal is to just, well, teach more people to code. So we see all kinds of government and private initiatives to just get more people coding. To the extent that we really do need more coders, and that we reach people who otherwise would not have had the opportunity to try coding out, these initiatives are not a bad idea. Howeve
Nope (Score:2)
It's completely unnecessary for everyone to learn how to code. If anything, more emphasis should be placed on practical things, like basic home repair. Understanding how your plumbing works, or being able to change a tire, is probably far more practical and relevant to lives globally than being able to write simple software.
Re: (Score:2)
It's completely unnecessary for everyone to learn how to code. If anything, more emphasis should be placed on practical things, like basic home repair. Understanding how your plumbing works, or being able to change a tire, is probably far more practical and relevant to lives globally than being able to write simple software.
What? Are you crazy? We can't have people repairing things on their own. Why are you trying to put handymen and AAA assistance people out of work. Not to mention if people start fixing shit they will be buying fewer replacements. Think of the impact on corporate prof--- er the economy! Yeah, The economy!
Teach everyone to code? Yes (Score:2)
Good lord....what stupidness am I reading?
Hell no. (Score:2)
Half the people that work with me do stupid shit like spend their entire paycheck on a new phone, and then are running around at the end of the month, trying to borrow money for rent, get an extension on their gas bi
NO (Score:2)
Re: (Score:2)
I'm not trying to sound like a recruiter or anything but ANYONE can go to a trucking school and take a few month class for $5000 or less and make $50000 their first year.
When the average number is $80,000 for their first year, $100,000 for their second year, and $140,000 for workers with 5 years experience, THEN we will be ready for more people to start thinking of commercial trucking as a seriously in-demand profession.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Highways are the ideal place for them. No adjacent buildings, no pedestrians, no complicated signage. Just a long, straight road. Depos are already built near highways. A robo-truck with an extra-large fuel tank could drive across the entire country without stopping - and with a bit of well-organised management, it only needs to go from the turn-off to the nearest parking spot to meet a driver who can take over for the final stretch. Not only do you save on driver pay, but the trucks can be more productive
Trains (Score:2)
That'd sure be news to my son, an engineer on Burlington-Northern. Trains do not "drive themselves"; they do not control their own switching, their own speed, their own braking, when to go on sidings and when to proceed, or how fast, when to fuel, when to signal at crossings, when and/or how to couple and uncouple... simply put, they're just as far from being self-driving as they were in the 1800's. Which is very, very far. The engineer
Ford knew better than this. (Score:3)
Henry Ford said that, 'If I had asked people what they wanted, they would have said faster horses.'
Ford was raised on a farm.
He knew perfectly well that what people wanted was a tireless "iron horse" with coach or wagon that demanded minimal care and expense and could be out on the road in an instant.
The Ford Model A could cruise safely and comfortably at 25-45 mph on a hard surfaced road, but these were almost non-existent outside the larger cities in the early days.
I disagree with the premise... (Score:2)
..."While everyone today needs to be an app developer,..."
Really, everyone needs to be an app developer? Why?
Teach? No. Play? Yes. (Score:2)
First step is to get kids to have fun developing critical thinking and logical analysis skills. Some of those will go on to want to learn coding and related topics, while the fundamentals will help anyone faced with that sort of problem.
Give grade school kids games like The Logical Journey of the Zoombinis [wikipedia.org] to play, don't force them to memorize the particulars of a programming language that will be obsolete by the time they graduate high school.
More toppings!
Should we really allow... (Score:2)
... stupid questions to make their way to /.?
What do you expect from such a discussion?
Should we try to teach everyone their mother tongue? Should we try to teach everyone history? Should we try to teach everyone mathematics, economics, physics, litterature, arts, poetry and so on?
Of course we should. Learning about history doesn't make everyone an historian and everyone doesn't pretend to be one neither. So, what is the problem with coding? It doesn't mean you want to turn everyone into a professional prog
Yes, and we need a nee teaching language (Score:2)
Subject sayst it, yes everyone in school should learn programming. Actually it is not hard.
The problem is that in our days the slope is quite steep. C, C++, Java, C# etc. are already on the conceptual level to complicated.
What remains are langugaes that have at least an REPL interface ... but they have similar problems. Who want to teach Python, Groovy or Ruby to an absolute beginner in 8th or 10th grade?
We need something on the level of old Basic or Pascal, without line numbers, big integers, big decimals
Re: (Score:2)
Teach them perl.
You know the old saying, it was hard to write, it should be hard to read.
Re:Yes, and we need a teaching language (Score:2)
Ok, but if you want them to grow up strong, teach them APL.
Re: (Score:2)
I think many institutions have pretty much already settled on Javascript as a "first language". Whatever you may think of it, there are some good reasons for using it. It's completely ubiquitous, having a runtime environment in every web browser on every major platform. You don't really even need advanced tools or worry about setting up a particular environment. And, best of all, it's what actually gets used out in the real world. It's easy enough to teach a simple, clean subset of a language initially
same old shit (Score:3)
Instead, shouldn't we be asking whether coding is really the best way to build apps in the first place?
Management has been trying to find a different way since at least the 1970s, CASE tools, 4GLs, yadda yadda yadda. Yet, somehow, in the end if you want an app working, you have to specify it down to the level of a programming language.
Re: (Score:2)
Gotta agree with sribe. The best way to build apps is to have a magic box you can just feed a description of what you want to do into the app.
The problem is, the magic box will ask you lots of questions you didn't think about. You'll have to answer "What should the app do when (unexpected thing) happens?" "What about (error case)?" Et cetera. Source code ends up being a precise and concise way to describe what you want a program to do. Sometimes you can accelerate it using libraries, CASE tools, 4GLs,
Is that a threat? (Score:2)
But until domestic girls (including his daughters) and underrepresented groups get with the program(ming), the President explained he's pushing tech immigration reform hard and using executive action to help address tech's "urgent need" for global talent.
That reads eerily similar to, "the beatings will continue until morale improves."
Until more people start training for careers of which we have a large supply, we'll keep increasing that supply and making it even less attractive.
The "underrepresented groups" part is even weirder. Until American women start going into tech fields, we'll import more and more foreign men?
Not how to code (Score:3)
It does not make sense to teach everyone *how* to code any more than it makes sense to teach everyone law or brain surgery or aircraft repair.
However, everyone does need some degree of understanding *what* coders do, for the simple reason that coding is something that has a large impact on society and the economy. Same as people (particularly those choosing careers or education) need to know what law or surgery or aircraft maintenance are, and maybe some rudimentary knowledge of the field so they have some minimal frame of reference in common with the experts.
For people on a STEM path, yes (Score:2)
For people on a STEM path, yes.
I'd like to see small coding projects be part of the curriculum of science classes.
Elementary school, can have a Science Club, and maybe some coding projects.
Middle School, in science elective courses.
High School, in science elective courses.
College, if someone is in a STEM major of study.
For everyone to have to learn it? Nah.
Every student should learn to code (Score:2)
Try, yes -- (Score:2)
We shouldn't expect everyone to code (whatever that means) anymore than we should expect everyone to understand differential equations.
But what is code changes and will change -- I started with machine code; I don't consider HTML/CSS to be "coding." But I'll admit that properly done HTML/CSS is no less artful that some of the things I've written in machine code, C, or Lisp.
It is also useful to recall that the telephone (the private wire-line kind)
Why does everyone need to be an app developer? (Score:3)
"While everyone today needs to be an app developer, is learning to code really the answer?"
Who's going to make stuff? Are people planning to stop eating and living in houses at some point in the future?
On a related note: (Score:5, Insightful)
Re: (Score:3)
I would say everyone should have to work Retail and Food Service for at least 6 months-1 year during their teen years.
Yes (Score:2)
This will never work (Score:2)
This whole approach of "everyone must code" is doomed to failure. Does everyone who takes a gym class become an NBA superstar?
Does everyone who takes a health class become a doctor or nurse?
Some people have aptitude for things; others do not. If there happen to be few people with the aptitude and will to do something, prices go up for their services. The tech industry is just going to have to deal with the fact that very few people are good at or want to be programmers or architects.
Besides, we do
Re:This will never work (Score:4, Insightful)
Not everyone will become a software engineer. I learnt basic statistics in junior high and I never became a statistician. Still, it made it easier to understand charts, statistics, and help not getting duped by everything I read.
IMO everyone should learn basics... computers are in EVERYTHING we do. I was thought basics of electronics, woodworking, biology, math, foreign languages... a lot of things that are useful in every day life, but are much less ubiquitous. Why not basics of programming?
Then some will run away with it and become software engineering super stars. The rest won't, but will at least be able to understand enough to be able to communicate with the engineering department at their company, or maybe write little scripts on their own to automate stuff they do often.
Why not? Its -everywhere-. They should know at least enough to be able to ask questions about it.
Mandatory computer literacy class in high school (Score:3)
Re: (Score:2)
Re: (Score:2)
Make it fast
Eat it fast
A pound of sugar
That's your breakfast.
Get diabetes
'cuz all you eat is Wheaties
and a bag of Cheesies
when you got the munchies
Get your obesity
freak on, it's destiny
Re: (Score:2)
Unless you’re retired it’s almost impossible to live in the developed world and not interact with computers on a daily basis. So computer literacy is an important part of daily life in the USA
Nope. Half of all jobs, you'll interact with a device with a computer in it, whether you're working checkout at WallyWorld, punching up orders in a restaurant, filling in an order, or talking to the triage nurse at the hospital. None of these jobs require any knowledge of programming.
Re: (Score:2)
I don't have the reference on hand, but somewhere I've got a paper (an actual scientific one published in a journal and everything) where they estimated that about 80% of workers in a modern economy could benefit from being able to write simple programs.
Just because lots of people who use computers can't begin to program them doesn't mean that's a good idea. A generation ago you could have said the same thing about typing. A generation before that, writing.
Re: (Score:2)
Code is essentially just instructions and logic. Every application will be based on this, in one way or another. Other techniques are just other languages represented in different ways.
I think what TFA is putting forward is the idea that most apps don't actually need to apply any logic, and it's just a matter of pumping data from one component to another, so that each does its own job.
It's a pretty shortsighted view (IMHO), because such apps would be pretty trivial, and not much more useful than a radical new skin for WinAmp.
Any app with any value is going to need a little bit of "glue logic" to allow it to do something that is specific to the task at hand, and therefore genuinely useful
Re: (Score:3)
If the language is Turing complete, someone will port Quake to it, eventually. Still waiting for Quake ported to C++ template expansion, some I/O challenges there.