US students are in many cases barely able to read and fail miserably at math.
It's possible that they fail miserably at math because they never get to apply to math beyond busy work. But if they spend some time programming, and can see how many of the math principles apply to something, many will start getting better at math.
I don't think that we need more of my tax dollars going to football.
or teaching them all the things they barely have the resources for now?
The students will probably be better at understanding math concepts if they could apply them when programming CS assignments. And then when they start doing better at math, and can see how it can be applied, it'll probably trickle over to being better in science class.
No. Sorry. Programming is something you have to want to do if you want to do it right. And let's be blunt here, code that's just plainly WRONG, we already have enough of.
So your argument is that now, when there's no public education for programming and lots of people self teach themselves, that there's lots of bad programs. But if everyone got a foundation in programming, and more got exposed to it who wouldn't have other wise, that there all programs would become even worse?
A well-rounded education and encouraging curiosity
And how is teaching CS not providing a well-rounded education and not encouraging curiosity? There are stories after stories of people who became programmers who found programming to be the thing in their life which encouraged that curiosity more than anything else. Every article on how men 'stole' CS from women involves a quote where a woman who dropped out of CS talked about how there would be a group of students who weren't taking the courses as a class, but more it was their life. They lived, breathed and did practically nothing but learned the ins and outs of computers. And since they weren't as passionate about it, they self selected themselves out, thinking that something was wrong with them. CS definitely encourages curiosity.
You're spot on with these points. I'd be cheering these initiatives on if I had some idea that those things are what they teach. Instead, I see the "how" part completely glossed over, and the general computer remains indistinguishable from magic.
It's probably going to take a couple of generations, and iterations to work that out. But a starting point is a starting point and we'd better get started on it.
Isn't cooking your own meals from ingredients for yourself or others cheaper than buying prepared meals?
Possibly, but possibly not. It depends upon if you're good a buying bulk, and looking for deals. Also, it depends on if you've made the upfront capital investments to acquire the hardware to do a lot of cooking. Also, it depends upon how much your time is worth.
Money is a scarce resource, and it strikes me as idiotic in the extreme to think that we should spend money on the brainless notion that "everyone" should be a programmer.
The idea isn't that everyone will be a programmer. The idea is that if students can apply Maths, they're more likely to do better in Math class. Right now, so many students don't see the point of post Geometry math. But if they could actually apply Math via programming it'll help with a lot of the rest of their schooling.
Another thing which would be very beneficial would be to show students the potential of what computers can do. That way when they get into whatever they get into as adults, they might see potential for something new, that they wouldn't have seen without having done some programming themselves. Even if they aren't the ones who end up doing to programming.
Even as a big supporter of CS in Education I can't see any value for the K-6 range. I think that CS should come before algebra, but it's pretty pointless to come before arithmetic. Middle school is the time to introduce CS/Programming to students.
My brother-in-law was excited to show me his project from his high school computer science elective course, and I was surprised by what I saw. From what I could tell it was an IDE specifically designed to help kids build and run video games with in the IDE. I'm sure that' helpful for teaching students some very abstract concepts, but it's not empowering. I'd much rather learn how to build a program that will run on an actual computer, than piecing together objects to create a video game that only I'd be able to play.
After a year of computer science class he still couldn't write a program that could independently of the IDE, or a program that was not a Mario clone. The greatest thing about programming is the empowering ability to get a computer to do what you ask it to do.
And I would submit that intolerance of intolerance is also intolerance.
Depends upon the degree of intolerance. If the degree is "I don't think that someone doing that should get a tax break", I agree. If the degree is "We should go round anyone like that up, and publicly execute them" I disagree.
I'm confused by what side of the argument you come down on. The impression I get from the first few sentences is that you hate corporate culture, and how it can restrict developers desires to try new things to solve new problems. But then you make a very convincing argument for why the people who are invested in the business get to make the rules on how their business is run. If anything you made me a believer on why development shops should only have standard installs.
First, make Education majors (especially Math Education majors) take Intro to Programming in University. Second, tell students they get a year off from math when going into middle school, and that they get to take Computer Science instead. Once implemented all students will be better in their math courses - now that that they've been able to apply abstract math concepts to build something - and even teachers will start knowing how computers work!
In math, the word "unknown" might be a better word than "variable". It's simply a number whose value you don't know.
In programming a variable is something that doesn't have a value, until it does have a value. In prealgebra math a variable is used in the same way: find the value of X. I admit the concepts are slightly different, but there's also a lot of overlap.
what will we drop from the curriculum to make room for CS?
1. Prealgebra. I don't think that prealgebra teaches a single concept that you wouldn't pick up with an intro to programming
2. Geography. I loved my geography class, but let's be honest, it's kind of a pointless filler.
Enough people fail to grasp the concept of a variable
I think the reason why people fail to grasp the concept of a variable is because they only use it in an ambiguous way in a class in school that they consider to be busy work. But if they learned some programming before they had to learn about variables in math, when it came time to use variables in math class the concept will be solidified in their minds. Being able to see the value of the variable change in a debugger really lets the concept sink in, before students event need to know that the idea of a variable is a math concept.
At least with antivirus they're likely already getting updates regularly
Why do you think that? Won't most people try to run with their original, old version of the antivirus and hope that the package definitions keep getting updated?
US students are in many cases barely able to read and fail miserably at math.
It's possible that they fail miserably at math because they never get to apply to math beyond busy work. But if they spend some time programming, and can see how many of the math principles apply to something, many will start getting better at math.
How about a $4 billion school lunch program,
Um, negative ROI?
or extra teachers, or tutoring
To teach the students CS?
or athletics programs,
I don't think that we need more of my tax dollars going to football.
or teaching them all the things they barely have the resources for now?
The students will probably be better at understanding math concepts if they could apply them when programming CS assignments. And then when they start doing better at math, and can see how it can be applied, it'll probably trickle over to being better in science class.
No. Sorry. Programming is something you have to want to do if you want to do it right. And let's be blunt here, code that's just plainly WRONG, we already have enough of.
So your argument is that now, when there's no public education for programming and lots of people self teach themselves, that there's lots of bad programs. But if everyone got a foundation in programming, and more got exposed to it who wouldn't have other wise, that there all programs would become even worse?
A well-rounded education and encouraging curiosity
And how is teaching CS not providing a well-rounded education and not encouraging curiosity? There are stories after stories of people who became programmers who found programming to be the thing in their life which encouraged that curiosity more than anything else. Every article on how men 'stole' CS from women involves a quote where a woman who dropped out of CS talked about how there would be a group of students who weren't taking the courses as a class, but more it was their life. They lived, breathed and did practically nothing but learned the ins and outs of computers. And since they weren't as passionate about it, they self selected themselves out, thinking that something was wrong with them. CS definitely encourages curiosity.
You're spot on with these points. I'd be cheering these initiatives on if I had some idea that those things are what they teach. Instead, I see the "how" part completely glossed over, and the general computer remains indistinguishable from magic.
It's probably going to take a couple of generations, and iterations to work that out. But a starting point is a starting point and we'd better get started on it.
For those that are interested there's no way they could possibly get or afford training in the subject.
Is there any subject taught in school where that isn't true? I don't think that should be standard for what can be taught in public education.
Isn't cooking your own meals from ingredients for yourself or others cheaper than buying prepared meals?
Possibly, but possibly not. It depends upon if you're good a buying bulk, and looking for deals. Also, it depends on if you've made the upfront capital investments to acquire the hardware to do a lot of cooking. Also, it depends upon how much your time is worth.
Money is a scarce resource, and it strikes me as idiotic in the extreme to think that we should spend money on the brainless notion that "everyone" should be a programmer.
The idea isn't that everyone will be a programmer. The idea is that if students can apply Maths, they're more likely to do better in Math class. Right now, so many students don't see the point of post Geometry math. But if they could actually apply Math via programming it'll help with a lot of the rest of their schooling.
Another thing which would be very beneficial would be to show students the potential of what computers can do. That way when they get into whatever they get into as adults, they might see potential for something new, that they wouldn't have seen without having done some programming themselves. Even if they aren't the ones who end up doing to programming.
Even as a big supporter of CS in Education I can't see any value for the K-6 range. I think that CS should come before algebra, but it's pretty pointless to come before arithmetic. Middle school is the time to introduce CS/Programming to students.
I have far more complaints abut personal email from my server being redirected to the Junk folder from Hotmail users than from any other provider
The vast majority of SPAM never even makes it to the Junk folder.
Sell a specialized solution with extra features such as E-mail encryption or Archiving features that MS and Google cannot offer at scale (YET).
Why can't MS or Google offer E-mail encryption at scale? And I know that MS does offer online Archives as part of O365.
If more people get 25 MPBs service, more services will be available at 25 MBPs. Chicken and egg Senators, chicken and egg.
But C++ and Java isn't for beginners.
I started with Java and then learned C++. I can't think of a better way to start as a beginner.
My brother-in-law was excited to show me his project from his high school computer science elective course, and I was surprised by what I saw. From what I could tell it was an IDE specifically designed to help kids build and run video games with in the IDE. I'm sure that' helpful for teaching students some very abstract concepts, but it's not empowering. I'd much rather learn how to build a program that will run on an actual computer, than piecing together objects to create a video game that only I'd be able to play.
After a year of computer science class he still couldn't write a program that could independently of the IDE, or a program that was not a Mario clone. The greatest thing about programming is the empowering ability to get a computer to do what you ask it to do.
And I would submit that intolerance of intolerance is also intolerance.
Depends upon the degree of intolerance. If the degree is "I don't think that someone doing that should get a tax break", I agree. If the degree is "We should go round anyone like that up, and publicly execute them" I disagree.
The only thing that will stop a bad man with a pen, is a good guy with a pen.
Unfortunately the bad guy wrote "Don't read what the good guy wrote" and the angry youth will not read what the good guy wrote.
It is yet another language, yet another IDE
I don't think you can call Visual Studio, yet another IDE.
I'm confused by what side of the argument you come down on. The impression I get from the first few sentences is that you hate corporate culture, and how it can restrict developers desires to try new things to solve new problems. But then you make a very convincing argument for why the people who are invested in the business get to make the rules on how their business is run. If anything you made me a believer on why development shops should only have standard installs.
First, make Education majors (especially Math Education majors) take Intro to Programming in University. Second, tell students they get a year off from math when going into middle school, and that they get to take Computer Science instead. Once implemented all students will be better in their math courses - now that that they've been able to apply abstract math concepts to build something - and even teachers will start knowing how computers work!
In math, the word "unknown" might be a better word than "variable". It's simply a number whose value you don't know.
In programming a variable is something that doesn't have a value, until it does have a value. In prealgebra math a variable is used in the same way: find the value of X. I admit the concepts are slightly different, but there's also a lot of overlap.
what will we drop from the curriculum to make room for CS?
1. Prealgebra. I don't think that prealgebra teaches a single concept that you wouldn't pick up with an intro to programming
2. Geography. I loved my geography class, but let's be honest, it's kind of a pointless filler.
Enough people fail to grasp the concept of a variable
I think the reason why people fail to grasp the concept of a variable is because they only use it in an ambiguous way in a class in school that they consider to be busy work. But if they learned some programming before they had to learn about variables in math, when it came time to use variables in math class the concept will be solidified in their minds. Being able to see the value of the variable change in a debugger really lets the concept sink in, before students event need to know that the idea of a variable is a math concept.
because I've been feeling lately like we might as well just pack it in and establish a monarchy to keep order
As long as I'm the monarch, I'm cool with that.
It's possible that journalists are wrong when they decide what makes good journalism and the public is right.
At least with antivirus they're likely already getting updates regularly
Why do you think that? Won't most people try to run with their original, old version of the antivirus and hope that the package definitions keep getting updated?