Linked by David Adams on Sun 8th May 2011 04:15 UTC
Hardware, Embedded Systems Well-known game developer David Braben is a little bit fed up with the state of computer science education these days, which seems to have shifted away from learning programming to some sort of computer-oriented "life skills" class. As the father of eleven and nine year-old boys, I can attest that so far, despite a massive investment on the part of their school in computer equipment, their computer education has consisted mostly of "play this math game" and "don't be victimized by cyber-perverts." Braben's idea to stem this tide: a very, very cheap computer that students can learn to program on.
Thread beginning with comment 472223
To read all comments associated with this story, please click here.
Scope
by Brendan on Sun 8th May 2011 07:07 UTC
Brendan
Member since:
2005-11-16

Hi,

Roughly the first 10 years of school (up until a child is about 15 years old) should be teaching general things that apply to a large number of different occupations, like maths, language (English or whatever), typing/word processing, web-browser (and search engine) usage, etc.

Any information that is only relevant to a small number of specific occupations is not "general" and should not be included in these years of school. This includes computer programming (and electronics, mechanical engineering, aerodynamics, accountancy, law, architecture, etc).

Complaining that an 11-year-old boy can't program is as stupid as complaining that the same 11-year-old isn't a qualified plumber, diesel mechanic, accountant or veterinarian. That's what tertiary education (universities, trade schools, etc) are for - to teach stuff that is only relevant to specific occupations.

- Brendan

Reply Score: 6

RE: Scope
by bloodline on Sun 8th May 2011 07:27 in reply to "Scope"
bloodline Member since:
2008-07-28

Hi,

Roughly the first 10 years of school (up until a child is about 15 years old) should be teaching general things that apply to a large number of different occupations, like maths, language (English or whatever), typing/word processing, web-browser (and search engine) usage, etc.

Any information that is only relevant to a small number of specific occupations is not "general" and should not be included in these years of school. This includes computer programming (and electronics, mechanical engineering, aerodynamics, accountancy, law, architecture, etc).

Complaining that an 11-year-old boy can't program is as stupid as complaining that the same 11-year-old isn't a qualified plumber, diesel mechanic, accountant or veterinarian. That's what tertiary education (universities, trade schools, etc) are for - to teach stuff that is only relevant to specific occupations.

- Brendan


I disagree, very few job specs that I've had have required any form of computer programming as a skill... Yet I have been able to be significantly more productive and get better jobs because I have a programming skill.

Computers exist all around us and are used in all aspects of daily life... If one knows the language they speak, then that person is advantaged.

If would be like if we all had servants who could speak our language be we didn't know their language... It's a scary thought!

Reply Parent Score: 3

RE: Scope
by Almafeta on Sun 8th May 2011 07:47 in reply to "Scope"
Almafeta Member since:
2007-02-22

Any information that is only relevant to a small number of specific occupations is not "general" and should not be included in these years of school. This includes computer programming (and electronics, mechanical engineering, aerodynamics, accountancy, law, architecture, etc)


And here we have the reason the US's education quality has been steadily in decline.

I take specific offense at two of the topics you claim should not be taught. Without knowing accounting (staring from the 4th grade) and law (starting in middle school, 6th grade), not only would I have failed high school, I would not be as capable of a citizen as I am today; I would not know how to properly make and balance my budget, nor know the context in which the systems which govern me and my government came to being in. Those are already off the list of topics most students learn. And now, some right wing pundits and pulpit politicos are campaigning to have 'unessential' topics as US history and literature - supportedly to save 'taxpayer dollars'.

What is computer programming, but learning how to represent complex, abstract data in simple mentally-manipulatable terms, and how to break down huge abstract tasks into simple, completable tasks? Just like learning to use a word processor (even if just to 'type letters') helps us to learn English, learning to program teaches us the sort of abstraction, time management, and task breakdown skills that you need to be a complete and functional adult - even if you aspire to do nothing more than work at McDonald's.

Edited 2011-05-08 07:51 UTC

Reply Parent Score: 7

RE[2]: Scope
by Brendan on Sun 8th May 2011 15:32 in reply to "RE: Scope"
Brendan Member since:
2005-11-16

Hi,

"Any information that is only relevant to a small number of specific occupations is not "general" and should not be included in these years of school. This includes computer programming (and electronics, mechanical engineering, aerodynamics, accountancy, law, architecture, etc)


And here we have the reason the US's education quality has been steadily in decline.

I take specific offense at two of the topics you claim should not be taught. Without knowing accounting (staring from the 4th grade) and law (starting in middle school, 6th grade), not only would I have failed high school, I would not be as capable of a citizen as I am today; I would not know how to properly make and balance my budget, nor know the context in which the systems which govern me and my government came to being in.
"

So lets get this straight. Either:
a) by the time you left primary/middle school you were a qualified accountant and a qualified lawyer; and anyone doing a University course in accountancy or law are actually spending 4 years doing nothing because they already knew everything from 6th grade, or
b) they only taught you the basics - the "general knowledge" parts of accountancy and law, and people who want to become qualified accountants or lawyers need to spend 3 or 4 years to learn everything that school didn't teach.

I'm going to assume "option b".

Now apply that to programming. Maybe schools should teach children some of the "general knowledge" of programming - basic stuff like, um, algebra. Should they teach OOP, multi-threading/parallel programming, networking protocols, internationalisation, UML diagrams, SQL and languages like Java/C/C++? No.

If you were a dentist, you'd be complaining schools don't teach kids enough about local anesthetics and high speed drills. If you were a mechanic you'd be horrified that your child doesn't know how an automatic gearbox works. If you're an Olympic athlete you'll be appalled that your child can't do a triple somersault on a pair of skis. When your child grows up and tells you they want to be a chef, you'll get over it.

- Brendan

Reply Parent Score: 6

RE: Scope
by Neolander on Sun 8th May 2011 10:49 in reply to "Scope"
Neolander Member since:
2010-03-08

I disagree. Programming is a general topic, at least a part of it. Learning how to program when I was younger taught me the basic scientific workflow of our days (start from a problem, analyze it, slice it in tiny bits, work on those bits, put the pieces together), which in turn was very useful knowledge later. Computer are stupid machines, programming them involves putting vague, abstract thoughts in a precise form. And that knowledge is very useful.

Reply Parent Score: 5

RE[2]: Scope
by WereCatf on Sun 8th May 2011 11:01 in reply to "RE: Scope"
WereCatf Member since:
2006-02-15

I disagree. Programming is a general topic, at least a part of it. Learning how to program when I was younger taught me the basic scientific workflow of our days (start from a problem, analyze it, slice it in tiny bits, work on those bits, put the pieces together), which in turn was very useful knowledge later. Computer are stupid machines, programming them involves putting vague, abstract thoughts in a precise form. And that knowledge is very useful.


I agree. Programming itself might not be such a useful talent for many people, but learning how to handle complex problems and the workflow of picking a problem apart and putting it back together is always useful, no matter what field you're going to take in the future. And for learning that programming is a very logical choice, there's not many other fields where one can be taught such as easily.

Reply Parent Score: 5

RE: Scope
by M.Onty on Sun 8th May 2011 11:43 in reply to "Scope"
M.Onty Member since:
2009-10-23


...
Any information that is only relevant to a small number of specific occupations is not "general" and should not be included in these years of school. This includes computer programming (and electronics, mechanical engineering, aerodynamics, accountancy, law, architecture, etc).
...
- Brendan


Teach only a specific language for a specific purpose, such as C# or Javascript for making 'apps', and that may well be the case. That would be occupational training like you say. But teaching some BASIC, LOGO, a dash of javascript, even some C++ and you are *not* just training pupils for an occupation. You are giving them an understanding of the logical foundations on which almost all our technologies, and an increasing portion of our society, are now based. How many people *really* needs to know about the Tudors? Or quadratic equations? Very few. However these subjects expand ones capacity to think. As does computer logic.

As an aside, the only one decent 'computer class' I had in ten years of IT (I'm 23, from England) was when we didn't touch a PC. We just played with chunky electronic logic gates, wiring them up to make simple patterns. *That* taught me what a computer is. It wasn't difficult, it just aknoledged that copmputers are more than secretarial tools.

Reply Parent Score: 3

RE: Scope
by xiaokj on Sun 8th May 2011 12:16 in reply to "Scope"
xiaokj Member since:
2005-06-30

Roughly the first 10 years of school (up until a child is about 15 years old) should be teaching general things that apply to a large number of different occupations

Sorry, but this is very much disagreeable. Especially in the current day and age, where there is increasingly less an unskilled person can do to survive (I'll expand upon this later in here), you might want to have a different viewpoint.

I mean, what is the point of an education that serves only to give the student "facts"? Facts are ridiculously easy to acquire if the basic structure is known. The real problem is how to teach people to be wise, and that is only imparted with a careful combination of facts and exemplary teaching. Seriously, nowadays, Wolfram Alpha and Google can replace many tables of data people would require to do stuff, and calculators are cheaply available. Tables of data are just that -- collection of facts. What we really need to know before we can even use them is "why are they true?" and "what caveats do they have?". These cannot be taught with just facts alone, or "general knowledge". Just in my course, there are a lot of people given tools they simply just cannot use, not for a lack of knowledge, but for a lack of understanding.

People, we need to teach people to think! There will be no future for those that do not! Increasingly, we don't need people to just man the workplace; we need people to push the frontiers!

Which brings me to the other point. Why must we teach people to man the workplace? If they cannot already do it by themselves, the society will eradicate them. It is already happening -- of the lower end jobs, the salaries are not increasing much faster than the inflation rate. And always, the locals are making it worse: always complaining about foreign workers upending their jobs, the locals quit when forced to take them up. A society cannot survive when a sizeable fraction is just made up of brats. This hypocrisy is so deep: the foreign workers, simply by manning those positions, actually make things much cheaper for the locals. Xenophobes are just that, a great big bunch of brats that are doomed to have no future.

There is nothing more general and common sense than Mathematics. Is the contemporary teaching of that any good? Really? Don't you know that Programming is nothing other than one aspect of logical Mathematics? Why is this branch outside of high school? Of the good part of current teaching, we still teach Geometry. I propose that, for any serious teacher of Geometry, to state clearly at the start of, and at the end of any module to say the following:

"Ladies and Gentlemen, it may seem that we may be dealing with lines, circles, figures and angles in Geometry. It has nothing to do with that. My main purpose is _not_ to impart in you these facts. Education needs to be much more than that. What is really happening is that, society has realised that in order to prepare you to be useful, to no one other than yourselves, not us, we need to teach people how to argue logically with the facts; in other words, how to be a complete and total pain in the liar's neck, and how to do it legally and irrefutably. That is the true reason why we want to teach Geometry -- to prepare you for your inevitable need to reason."

Reply Parent Score: 3

RE: Scope
by mogwai82 on Sun 8th May 2011 12:37 in reply to "Scope"
mogwai82 Member since:
2010-03-15

Hi all,

This is an interesting discussion Scope brings up and I had to ponder it myself a little too - as maybe I only think that programming should be taught in schools as I'm a coder myself.

But I think that programming, at least the basics of it, is a useful for people in this IT saturated world to understand how best to work with computers and that they are still just dumb machines! Also, planning algorithms and breaking down problems to basic steps should have some benifits in other fields - I'm sure that sometimes my analytical knowledge is useful in other domains (ok, maybe not always so helpful in other domains - relationship advice, etc!), or at least can bring another PoV into account.

Anyway, I was happy with my 80-90s Computing at school, we did a little BBC Basic programming at primary, some Turtle graphics and at secondary did some good stuff (loops, functions, conditional statements, working with files, etc...) with a Scotland only language called COMAL (just an advanced BASIC for DOS) and a little HTML. We did the word-processing, spreadsheet stuff too which I did find really dull! but we also did traversing DOS file-system and basics of the fetch-execute cycle which was great. Basically as I was doing hobbist stuff at home as well I found my BEng Computing degree a doddle in first year.

Cheers,
Chris.

Reply Parent Score: 1

RE: Scope
by JAlexoid on Sun 8th May 2011 15:04 in reply to "Scope"
JAlexoid Member since:
2009-05-19


Complaining that an 11-year-old boy can't program is as stupid as complaining that the same 11-year-old isn't a qualified plumber, diesel mechanic, accountant or veterinarian. That's what tertiary education (universities, trade schools, etc) are for - to teach stuff that is only relevant to specific occupations.

- Brendan


No. Programming might not be necessary for everyone, but understanding that a computer is not "magic"(trademark lawsuit be damned) is necessary. Software is programmed by people. And computers follow a very strict logic.
With computers being all around us, we all have to understand basics behind computers. We all have to understand what is computer software. Just like we all have to understand the basics behind combustion engine, how an atom looks like, chemistry and all other sciences that are all around us in daily lives.

150 years ago Greek and Latin were all around educated people, not today. Today English, mathematics, computers are all around us. If you can't search Google for information you are permanently disadvantaged these days. If you can't enter a formula in Excel you are disadvantaged in many other ways.

School is there to level out those disadvantages for all. But those have to levelled out to average, not lowest common denominator.

Reply Parent Score: 3

RE: Scope - critical thinking
by jabbotts on Sun 8th May 2011 20:55 in reply to "Scope"
jabbotts Member since:
2007-09-06

The entry level into programming is critical thinking which can indeed be taught to a ten year old and does apply to pretty much every occupation that child may go into. Math can be an aid in teaching critical thinking but there are better way's to approach logical thought.

Also, the complaint in the article was not that a ten year old child couldn't write professional grade C but that after a few years of "computer classes" at the school the student was still unable to grasp and perform basic computing tasks which could have been covered in a two hour tutorial. "Computer class" equates to playing a few math games and typing letters into Word while remaining unable to type letters into any other word processor? I'd be meeting with the principal if that was my child's school.

Reply Parent Score: 3