ACM Urges Obama To Include CS In K-12 Core 474
jmcbain writes "The ACM issued a set of recommendations supporting Barack Obama's stated goal of making science and mathematics education a national priority at the K-12 level. The ACM is urging the new administration to include Computer Science as an integral part of the nation's education system. 'The new Administration can play an important role in strengthening middle school education, where action can really make a difference, to introduce these students to computer science,' said ACM CEO John White." Is CS such a basic subject, at the level of science or math, that it makes sense to (try to) teach its principles to every elementary school child?
Re:Absolutely! (Score:2, Informative)
Allow students to advance their CS knowledge if they are interested, and teach everyone else how to use a computer! Plugging in peripphials, playing with wireless routers, how to properly plug computers in if they ever buy a new one, installing a basic operating system.. linux is perfect
What you describe is NOT Computer-Science... you're talking about how to utilize various "tools".
Computer-Science is the field/discipline where we take a process, break it down to its base tasks, and then develop computational tools/technology to automate components of the process or the process in its entirety.
Computer-Science == "I currently do X, by performing tasks A, B, and C, is there a way to make this easier or more efficient using formal logic tools (such as computer-software or simple electronic components)?"
Computer-Science != "How do I plug in a printer?"
I'd refer you to Dijkstra's Telescope analogy, but no-doubt it'll be used by someone else.
Re:Quite simply... no. (Score:3, Informative)
As a maths teacher I agree with your 1st and last sentences. Everything between I take great umbrage to.
One of the reasons we have so many people graduating High School with little to no mathematical sense is the argument that "we have calculators so arithmetic is not so important". Consider polynomials. The best introduction to this important branch of maths is decimal arithmetic, as any radix representation of number is a polynomial. Students struggle with rates and ratio, because they cannot deal with rational arithmetic.
Geometry and algebra are two ways to consider deductive reasoning. Formal logic makes more sense if it can be cast upon a framework already constructed.
The equation of a line is a crucial concept. Almost all applied maths and numerical computing is essentially refinement of the idea that the only equations we can always be sure of solving with real numbers are linear. Without a solid grasp of this concept (which is difficult for a distressingly large number of students) there can be no understanding of calculus, nor can someone understand statistics (so they can't really understand democracy) or finance.
Studies do not involve "continuous time" until senior years. Until then it is far more important that students learn about days, hours, minutes and seconds, and their relationships with the shape of the earth and the seasons.
There is a shocking lack of diversity in K-12 maths education in developed countries. Part of the problem is the lack of mathematicians who are passionate about the subject working in K-12. Part of the problem is curriculum bloat. Part of the problem is really bad textbooks that purport that there is "one right way" to solve problems.
How many 12 year olds can extract square roots these days? Or can tell you that 19 x 21 is 399 without resorting to machines or lengthy sums? Or can even tell you what all those zeroes mean when they do a "long multiplication"?
By all means teach algorithmic theory and programming in LOGO or Squeak in maths in school. Teach them about memory. Teach them to consider the efficiency of their methods. Doing so and we might just start teaching maths again.
They can't learn (Score:3, Informative)
You do realize, don't you, that we're talking about K-12 here, not college?
They can't learn until they can think. Knuth is a good start on that.
They used to teach a lot of things in elementary school that people these days think are college level: grammar, spelling, latin, greek, algebra, basic chemistry, debate, logic.
I'd give that list a 10 points out of 10. Nicely done.
Re:CS will end up = programming (Score:4, Informative)
But I do understand what you mean, and as a science person I agree, at least in part. Math is just one of the many languages we use to describe the world. So, like other language classes, it is important to use it to describe the world, just like one would use in a english, french, spanish, or latin class. The same goes for computers. It is just one of many ways we model the world.
The issue comes in if the student does not have an understanding of these concepts. It is all well and good for me to talk about going to the store to buy stuff, or creating linear equation using patterns of blocks, or non linear equation using the multiplication tables. These things are taught all though grade school. But how am I going to use the incline plane for a trigonometric function is the student was not given the experience in science lab to create and interpret the models. I don't have time in math class, and not all the students are going to have the experience outside of the classroom.
Likewise, it would be very difficult for me to take a class in and have them make graphs on graphviz(for instance, who knows who in the class) if they never had a class to teach them about computers. I would spend all my time introducing them to the computer, and trying to keep them off facebook, because computer time is too valuable to some of them to waste it on lessons. If they do not have a class to play on the computer, like if they do not have a class to play science, then they will not do it maths class.
Which applies to logic as well. There are many good resources for logic. Web pages that create truth table, karnaugh maps, allow you to draw circuits and test them. It would be wonderful to have a month to teach logic using these techniques, maybe even build the circuit to show how a story can be rendered with 74xx or GAL or similar technology. But it the kids never played with such tech in science class, never was trained to use the computer as a tool, not a toy, such effort would be fruitless. The novelty of the computer would overwhelm the topic to be taught.
From my experience, things must be taught separately, in chunks. Sure at the college level you can assume that the kid will learn the tech on their own time, and if not, who cares. The school has the money, it won't be refunded, and the prof still has the tenure track. But in secondary education, the drop rate matters a lot, especially since the realistic number is about 50%. So we can't always assume that tech will be learned, or that tech won't be a distraction. I would argue any kid that does not type by 9th grade, does not have a CS course by 12th grade, and has never had drafting is no more educated than a kid who never had visual art or was never forced to read that 18th century novel crap. It may not be for everyone, and lots of people just want in direct form, not that boring project based learning, but everyone should have it to be educated.
Re:Dear ACM, STOP. (Score:2, Informative)
You're looking at it backwards. There's nothing that says the Federal government cannot require me to fill out my income tax forms whilst a butt plug adorned with tassels is firmly seated in my arse either.
Actually, you are quite missing my point, which is to state that none of these actions that are being conducted are meddlesome. All federal funds can be refused by a state, and any state could refuse to submit their data to the department of education.
The constitution limits the power of the federal government to impose its will. However, all the department of education offers is a service which states do not have to utilize.
In summary: If you have a problem with the federal government's influence on your curriculum. Lobby your state legislature to stop accepting the handout.
Re:Yes! Absolutely not! (Score:3, Informative)
Do you honestly think that after being in school from 8am to 3pm (7 hours) students should be expected to study an additional 6-12 hours? (1-2 hours per subject). This is ridiculous, as no person, let alone child has that kind of attention span or time (12-19 hours).
It is my humble opinion that the majority of 'textbook' learning should be done at school, and afterwards, the students need time to learn to play, interact, and learn responsibilities besides that of doing their homework.
I'm a high school teacher in a country where homework amounts like the GP's are commonplace - Japan. My students are often at school 8am-5pm. They then study more at home, several hours a day. Most go to cram school 1-2 times a week.
They aren't much better off academically for it, on the whole, I'll say. They're known to sleep through classes because they were up too late the night before studying. They can't concentrate that hard that long. It's just not possible.
On top of that, it takes a huge toll on their social development - I have 18 year olds telling me that they wish they could date, but they don't have time for it yet, maybe in college - and it's easy to see that there's a cost without any real measurable benefit.
There are some serious problems with most all educational systems, and from my experience, adding more criteria to test them on is going the wrong way.
Re:Doesn't matter if it starts out bad (Score:3, Informative)
http://es.wikiversity.org/wiki/Educaci%C3%B3n_Secundaria_en_Uruguay [wikiversity.org]
Maybe a more realistic goal would be teaching people to use uppercase to start sentences?
Re:Yes! (Score:3, Informative)
I think it's hard to grasp because "teachers" (books, etc.) all start at too high of a level. If you started kids out on the basics of binary, how that relates to digits and go from there, you might actually make some inroads to CS in lower education. I never really "got" programming until I sat down with an assembler book out of curiosity. The first few sections talked about why and how it all works. I had a general idea before, but it was all kind of hazy from previous books that would dare not touch the subject. They started you off believing that the computer was magic.
Then again, I've always asked "why" and I hated when someone started trying to teach me with an example and try to work backwards to prove it by first giving you the code, then stepping through it requiring the constant flipping of pages to piece it all together.