November 10, 2016 at 8:02 am
I don't think more people need to be writing code or even knowing the basics of writing code, what more people need to be learning are basic concepts of logic and abstraction. And I'm including very many people who do write code in that group.
November 10, 2016 at 8:08 am
I agree with Steve. We cannot expect everyone to be expert coders (From what I have seen, I am pretty good, but not an expert).
But if you have a day to day position in which some knowledge of coding would help. Then by all means learn some if, even if you never write a single line of code.
I deal with 'uneducated' users all the time that really do not understand that the computer only does what it is programmed to do. Even if it is programmed badly.
November 10, 2016 at 8:21 am
I totally agree with Steve, but for perhaps different reasons than most. Coding teaches basic logic and critical thinking, and I can't think of more important skill set that is more fundamental to the wellbeing our society today and one that is in great need.
November 10, 2016 at 8:25 am
Very nicely put, and I do totally agree with you.
Steve.
November 10, 2016 at 9:00 am
I rarely do more than write a script or edit a recorded VBA macro.
I see a lot more projects failing from other issues than code.
That being said, I really like the comments and thoughts shared here on the topic.
412-977-3526 call/text
November 10, 2016 at 9:53 am
roger.plowman (11/10/2016)
Having been a developer for 30 years now I hate to rain of Steve's parade, but perhaps I have a different view of what he means by coding than he does. Coding to me is far more than being able to use a command line or script a backup.Teaching someone to code who isn't a coder is worse than worthless, it's actually detrimental. First, it will either inspire false confidence (a little knowledge) or it will sour them to the point they'll hate computers and everything to do with it.
I wouldn't be adverse to a *little* coding exposure, otherwise how will kids know if they want to take it further? But real coding exposure would burn them out. It takes a certain mindset and worldview to be good. It takes a passion to tolerate the tedium year after year.
Teaching someone how to create a program to shuffle cards? Why? What does that give them? Trust me, it *won't* teach them logic. :hehe:
The whole "teach coding to more kids" mindset is baffling to me. Sure, show them some basics but in the end programming is a very specialized branch of discrete mathematics.
How many mathematicians do YOU know? 😀
I completely disagree. We do teach people math, and science, even though they aren't going to be mathematicians or scientists. We want to expose them and give them appreciation of those subjects. I'm fine with people stopping at general science completion, or getting through algebra if those topics aren't of interest to them. However, we want to ensure they understand the basics of those topics, and can perhaps then empathize with the ways in which the professionals do work in those areas.
Having someone learn to shuffle cards teaches them a methodical, logical approach. It isn't about logic as in philosophy or boolean logic, but about approaching a problem and breaking it down into steps. Tackling each step. There is an understanding that one gets from looking at a task in a detailed way. Most people unconsciously go through lots of tasks without really thinking them through.
As an example, teaching kids coding by having them assemble instructions to make a pizza is good. They start to get that there are many more steps they need to document than they expect.
We aren't asking people to code for money, as a profession, or even for others. This is a basic skill in understanding the digital world, which is quickly becoming quite embedded in our analogue one.
I don't expect this to reach 100% of people or even that 100% of people will learn to shuffle cards, sort a set, or finish whatever task they attempt. It's about reaching some of them.
November 10, 2016 at 10:00 am
skeleton567 (11/10/2016)
Sure, and more people should drive 18-wheelers on the interstates. I think I'll go over the airport and volunteer to fly a load of folks to Chicago today, too.Having started to write code in 1969, I have seen lots of it, worked on my own and that of others, and verified the results of many, many lines of it. I'm now 73 years old, and still write my own code. I definitely am not up to date on all the new bells and whistles of the software, but I still can validate results produced.
Folks writing their own code can be very dangerous to companies that may end up depending on invalid results for important business decisions. A while before I retired I happened to need to do some revision on a set of 10 or 12 statistical reports for my employer. Getting into the code, I discovered that nearly all of the set of reports contained the same or similar errors causing them to produce invalid information.
And even more scary, since the organization allowed non-technical 'project managers' to control such things, and since these folks were often too timid to implement code changes, the fixes were never applied.
While it is true that code can be cobbled together so that it will RUN without failing, that in no way indicates that the data produced is VALID information.
This is silly and insulting. I'm not asking, nor are more people, for everyone to learn to be self sufficient, or even write code to support their (or others') jobs.
We do want many people to learn to drive. It's a valuable skill, and perhaps many people should get the chance to try to drive a small truck or small trailer, but no need for anyone to commercially deliver goods. That's for someone that chooses to be a professional.
Driving an 18 wheeler or flying a plane aren't things that most people do. That's highly specialized. However, most people do interact with computers, and do find a need to perform simple tasks. People import and export data, even something as simple as a contact list. They upgrade, they mail merge, they might macro something in Excel.
Getting more people to code is imparting a basic skill, even if they never use it.
November 10, 2016 at 10:03 am
mjh 45389 (11/10/2016)
I can only see it being of use if it is done well. Over the last thirty years the bane of my life has been people who have done a bit of trivial coding at school or university, and as a result think coding is easy. Having worked with relation databases for most of that time I am also staggered by the number of people who think they fully understand them because they have created a spread sheet with addresses or have used Access. A friend who I graduated with (BSc Physics) went on to become a Physic teacher. A few years ago the headmaster that he could teach programming when he had done none apart from some Fortran during our degree course. He really struggled with it as he had no real interest and accepted an offer of early retirement a few years later. The headmaster - he was replaced shortly after when the school slipped down the league tables.So if coding is to be taught it has to be done well - done badly it does more harm than good!
Define well. I'm sure plenty of people would disagree on what this is, and plenty of us would compromise our own code at times. There are always stories of people that write bad code, write incorrect code, or that do amazing things. Often, all of them are paid in no relation to the code they produce.
Teaching someone to code is not about teaching them to code for a living.
November 10, 2016 at 10:04 am
djackson 22568 (11/10/2016)
Let's face it, there are people who are extremely intelligent, all the way through dumb as a rock. IQ tests are built to measure this very concept. So I clearly believe it is a waste of effort to try to teach everyone to code. That is part of the problem with the US school system. We expect every child to be equal, so we hold back those who would excel so we can teach everyone basic math.IMO the proper thing to do is to teach everyone the basics, but once they get it, let them move on to advanced subjects. So making coding available to those who meet a certain standard is fine. Making a class available to entice people who aren't ready, but who might otherwise decide to apply themselves, is also fine. Wasting time trying to teach everyone how to code, when a large number of people are not interested, not capable, and never will be, is counter productive.
Other than birth defects, all people are born equal. Unfortunately various things result in some people excelling while others fail. Helping everyone excel isn't going to happen with a programming course. Offer a class, sure. Just understand that ~70% (or more!) of the people in first world countries are not capable of getting anything out of it. I am sure I have posted about the classes I had where extremely disruptive people ruined it for everyone else. We have all experienced that. I prefer to limit attendance in high level courses to those who care.
Coding isn't necessarily a high level class. It can be, but so can math. Or writing.
I think we should try to teach everyone to code. Just allow them to stop at some point. Like we do with math, science, English (or your language of choice), etc.
November 10, 2016 at 10:37 am
Steve Jones - SSC Editor (11/10/2016)
skeleton567 (11/10/2016)
Sure, and more people should drive 18-wheelers on the interstates. I think I'll go over the airport and volunteer to fly a load of folks to Chicago today, too.Having started to write code in 1969, I have seen lots of it, worked on my own and that of others, and verified the results of many, many lines of it. I'm now 73 years old, and still write my own code. I definitely am not up to date on all the new bells and whistles of the software, but I still can validate results produced.
Folks writing their own code can be very dangerous to companies that may end up depending on invalid results for important business decisions. A while before I retired I happened to need to do some revision on a set of 10 or 12 statistical reports for my employer. Getting into the code, I discovered that nearly all of the set of reports contained the same or similar errors causing them to produce invalid information.
And even more scary, since the organization allowed non-technical 'project managers' to control such things, and since these folks were often too timid to implement code changes, the fixes were never applied.
While it is true that code can be cobbled together so that it will RUN without failing, that in no way indicates that the data produced is VALID information.
This is silly and insulting. I'm not asking, nor are more people, for everyone to learn to be self sufficient, or even write code to support their (or others') jobs.
We do want many people to learn to drive. It's a valuable skill, and perhaps many people should get the chance to try to drive a small truck or small trailer, but no need for anyone to commercially deliver goods. That's for someone that chooses to be a professional.
Driving an 18 wheeler or flying a plane aren't things that most people do. That's highly specialized. However, most people do interact with computers, and do find a need to perform simple tasks. People import and export data, even something as simple as a contact list. They upgrade, they mail merge, they might macro something in Excel.
Getting more people to code is imparting a basic skill, even if they never use it.
While the point may have utilized a method you don't like, I don't think it is insulting.
I don't understand how you consider driving an 18 wheeler or flying a plane is "something most people don't do" but coding is? When you state that driving commercially is for "professionals" you come across as saying we aren't.
Come on - anyone can learn to drive a truck. Anyone can learn to fly a plane. Anyone can learn to be a plumber, electrician, a whole list of things that require mostly manual dexterity. Those are simple to learn. I took flight school in high school, with straight A's. Very few people can learn to code.
(edited because my original choice of words was wrong and inflammatory. I apologize if anyone read "nothing but manual dexterity" and was insulted. I did not mean that. I have a huge respect for electricians, plumbers, truck drivers and others. Sorry!!!)
(deleted rant about the state of education in America and how it is PREVENTING kids from learning what they should, and therefore most kids are now incapable of simple programming) - but I'll leave in this - kids today are told to not worry about getting the right answer in math, they just have to answer all questions in the time limit, and they get an A if they answer them all wrong! Common core BS at its best!
Coding is a complex task suited for very few. Introducing and offering it to kids is fine. But let's not discourage people who have no interest, by forcing them to learn something they will never use, and simply aren't capable of. There is nothing wrong with being a garbage collector, plumber and other jobs.
Dave
November 10, 2016 at 10:40 am
Steve Jones - SSC Editor (11/10/2016)
As an example, teaching kids coding by having them assemble instructions to make a pizza is good. They start to get that there are many more steps they need to document than they expect.
This is an excellent example of pseudo coding that is a good idea. It isn't learning to code though. I'll bet the disparity in opinions about this is more about what we consider coding to be, than about whether we should teach it.
Writing code - no way!
Using a program to teach kids how to assemble instructions to make a pizza, perfectly fine way to start learning logic.
Dave
November 10, 2016 at 10:50 am
djackson 22568 (11/10/2016)
Very few people can learn to code.
I disagree. Many/most can learn to code. Very few people can code to a high standard. If I was feeling mean then I might suggest that there are some people here that probably can't code to what I consider a high standard. But that is the point. Those people, whom I've most likely just insulted (oops), are probably coding in a minor (compared to others) but very productive manner (so worthwhile).
I drive quite well but I haven't studied/practiced enough to safely drive huge or unfamiliar vehicles. I also do not have it in me to win the Indy 500 (the US reference just for you "over the pond'ers").
Gaz
-- Stop your grinnin' and drop your linen...they're everywhere!!!
November 10, 2016 at 10:58 am
Gary Varga (11/10/2016)
djackson 22568 (11/10/2016)
Very few people can learn to code.I disagree. Many/most can learn to code. Very few people can code to a high standard. If I was feeling mean then I might suggest that there are some people here that probably can't code to what I consider a high standard. But that is the point. Those people, whom I've most likely just insulted (oops), are probably coding in a minor (compared to others) but very productive manner (so worthwhile).
I drive quite well but I haven't studied/practiced enough to safely drive huge or unfamiliar vehicles. I also do not have it in me to win the Indy 500 (the US reference just for you "over the pond'ers").
I understand, and again I think the disparity in responses is what we consider the definition of coding to be.
On safety, do we really believe every truck driver is safe? I know companies that focus on safe and polite driving. Not all of them do. Do we really want the unsafe drivers (or as I am trying to make a point, the people who can't code) driving a truck on our highways (coding anything beyond making a pizza in a video game)?
Dave
November 10, 2016 at 11:08 am
People should be exposed to programming and then decide if they want to pursue it as a skill or career. There are plenty of gateways to this now days from Excel to Python to HTML to Minecraft.
The best formal elementary method I know is Racket. But it requires a certain amount of aptitude and curiosity.
Any more than casual programming becomes work and most people don't want to program for a living.
November 10, 2016 at 11:19 am
djackson 22568 (11/10/2016)
Gary Varga (11/10/2016)
djackson 22568 (11/10/2016)
Very few people can learn to code.I disagree. Many/most can learn to code. Very few people can code to a high standard. If I was feeling mean then I might suggest that there are some people here that probably can't code to what I consider a high standard. But that is the point. Those people, whom I've most likely just insulted (oops), are probably coding in a minor (compared to others) but very productive manner (so worthwhile).
I drive quite well but I haven't studied/practiced enough to safely drive huge or unfamiliar vehicles. I also do not have it in me to win the Indy 500 (the US reference just for you "over the pond'ers").
I understand, and again I think the disparity in responses is what we consider the definition of coding to be.
On safety, do we really believe every truck driver is safe? I know companies that focus on safe and polite driving. Not all of them do. Do we really want the unsafe drivers (or as I am trying to make a point, the people who can't code) driving a truck on our highways (coding anything beyond making a pizza in a video game)?
My licence stipulates that I have demonstrated that I can safely drive cars and small trucks. I would need further training to drive bigger vehicles. Nothing says that I will drive safely just what I have shown I can drive safely. There are levels. It is just that few will have the ability, training, skills and qualifications to code complex systems.
Gaz
-- Stop your grinnin' and drop your linen...they're everywhere!!!
Viewing 15 posts - 16 through 30 (of 62 total)
You must be logged in to reply to this topic. Login to reply