Linux should be a part of School Education
linuxfederation.com
linuxfederation.com
If Linux is going to find a place in mainstream education, it's going to have to earn it. This is of course quite possible. Raspberry Pi is a good example of this. I can see Linux forming a valuable part of a more advanced secondary school computing curriculum too.
The article is living in the past though. Many children now, and many more in then future will equate computers with tablets. Some will run iOS, others will run Android and maybe some might even run Windows. Decisions about which solution best serves the educational needs of children should be in the hands of educators, not technological partisans.
I agreed about the Raspberry Pi being the best device for education right from day one. That was until my father bought my daughter one for her birthday and I ended up being the resident "fix it guru" for it.
The thing teaches you merely how to jump through funny shaped hoops to get something working rather than anything realistic or helpful. Most of it is google-fu and copy and paste. When you do finally get there it's a baron land of absolutely unrealistic, undocumented crud that can't self-serve. Plus it barely works and browns out to start with resulting in USB-hub jiggery-pokery (and that only happens because I actually understand how USB works).
For ref, I have 20 years' of Unix and Linux experience (right down to writing kernel drivers) and it was painful getting it off the ground so I'm not approaching it blind.
Being critical (constructively!) of this results in the RPI forum thread being deleted which in itself an affront and a general recommendation against the things.
My problem is that in 1982 you could really impress your kids with simple programs. Now my child wouldn't be impressed unless you create an 3D princess game. The hurdle to catch a child's imagination is 10x higher.
I think rpi (culture/ecosystem) is still absolutely the best thing, it's literally the perfect AppleII/C64 for today. Today is also more complex and more stuff is possible but there is also Unix which at least tries to be simple.
I've given one of my rpis to my 13 year old neighbour and he is regularly meddling with it. It's likely that he is also constantly failing but that's what is needed in order to learn, it certainly was the case for me when I started (I'm still failing after many years, that's a reality).
Where you could make a difference is just by saying you'll be there to answer some questions ... now and then. Encouragement and enthusiasm!
Really? In many ways RPi is far more of a closed, proprietary system than the common desktop PC.
"Dad: is this what your job is about?"
It's not and never has been.
The perfect Apple 2 / C64 (or in my case, BBC Model B) was the one that you opened the box, plugged it in and it worked the moment you turned it on without fail, every time and never poked you in the eye unless you told it to.
I still think the (partial inspiration for the Pi) i.e. the BBC Micro is still a better starting point than the Pi itself. Well documented, relatively simple, very powerful, forgiving and the ability to write high level (basic) or low level code (assembly) from the get go from the books that came with it, can play games on it and if you screw anything up, just restart it.
Hardware wise the USB hub is probably the weakest part in it and that's where they have the most issues.
Plus the fact that some hardware part are undocumented because their proprietary.
Try not to be the "fix it guru" all the time though since if your daughter can always ask you to do it she will never bother to learn herself.
sounds like it fits perfectly into education then. It's much like a lot of the working world as well. A lesson in grit perhaps? A lesson in our tenuous grasp in technology. At least it's something that can be held in your hands and not a group's invented agreement about how something should be (grammar) or subjective watered down recounts of reality (social studies).
Just last week, I was held at gunpoint and told to find the integral of an equation, then - you won't believe this - my boss said I was fired unless I could write 1000 words on Jane Austin's "Pride and Prejudice" by the following day.
I have never had to encounter linux, and I'm so glad there are people like you fighting to keep education relevant!
The result was that the Apple II series did take over the education market, and also sold quite a few machines to the parents of kids who used Apples in school.
What the author fails to take into account is that the major cost to schools and school systems is the continuing cost of ownership for these computers. Updates, maintenance, tech support, all cost time and money. I regularly perform alternatives analyses for clients, and while I'd love to more often recommend open source solutions, the risk of finding qualified support or full-time employees, and the often greater costs associated with that service, is usually too high to not go proprietary (all features and needs being otherwise equal).
However, I do agree with the spirit of one of the author's ethos(es?), and perhaps disagree with simonh here -- a flavor of Linux shouldn't be discounted because the students may never see it again. The OS really doesn't matter so long as tools are provided for word processing, performing internet research and exploring information that students may discover. There's a wealth of this in the mainstream Linux distros and I think it'd be a fine alternative.
Except for that whole ongoing-maintenance thing.
Androids is a Linux computer.
Learning linux is vital - because Linux runs everywhere, and almost everything!
Been on a train in Europe? Your life is being protected by Linux. Made an Internet connection in the USA? You're using Linux, somewhere.
Teaching kids to use the Linux OS should be as equally valid an approach as teaching them Windows. The Linux ecosystem is as equally viable as any other - so why should kids miss out on the value of this technology, just because a corporate lackey has managed to make a deal with school administrators?
Inverse-Totalitarianism!
You see, your argument doesn't really work in your favour, either - because cars have been following the computerization model (or is it the other way around) for years .. whereas you once could have worked on your car, now its completely locked down, you need special proprietary tools to work on it, and you're not going to be able to function as a driver without further investing in the infrastructure. A pity, as it used to be that kids in their teens could repair cars, if they need to.
Do you really think your position improves society, or perhaps it just serves to justify its current state of utter incompetence?
Is using Android really your idea of learning Linux? iOS is a Unix variant too. Do you really think those facts are in any way relevant to the learning experience of children using them? That's pure technological partisanship, based on an agenda that has nothing whatever to do with education.
Linux is a commons resource. ABSOLUTELY, children should know how they can use the commons resource they have available to them - anything else, and you set up future generations for even more corporate control.
In case you're an un-educated American who doesn't know what the commons is, and why Linux is such an important resource when viewed from a commons perspective, educate yourself:
http://en.wikipedia.org/wiki/Commons
I know that commons is anathema to American industrial thinking, but alas .. this is precisely why its important to educate our children on what rights, responsibilities, and resources they have available to them. Linux is a very, very powerful tool which belongs to everyone. Microsoft Windows belongs to the shareholders of Microsoft - and nobody else.
> Many children [...] will run Android
Care to reconsider your argument?
Forcing people to use Linux sounds antagonizing and like it'd hurt the reputation of Linux. The same way feminists / marketers think they should be CTO's and top developers with nothing but twitter followers - and how it could potentially hurt females who no axe to grind who actually love engineering.
When exactly do children apply geology in their daily lives, or calculate refraction? It sounds as if you're making a case for home economics, basic arithmetic, and reading to be the only subjects. Maybe marketing?
How many of the will end up making decisions on the assumption that there is nothing else that runs on a computer except for Windows?
Computer education is important and should really have a more important part. And when I say computer, I'm not advocating for PC, mobiles, Windows, Linux, or whatever thing whose market share will have drastically changed in ten years.
Children should be taught that they can have a computer do tasks for them and, if possible, without practical dependence on whichever architecture/OS you pick. I don't care which system they train on, as long as they get that computers are logical systems with predictable output. I don't care which language they learn, as long as it makes them understand computers are not some black boxes but things they can control.
Also, I would like such an education to teach that the Internet is not some big corporation controlled by shady lolcatz or a box supervised by elders in Big Ben. I would like them to know that the World is vast and that the Internet is shallow; the Internet is in their reach and allow them to go farther than ever (geographically, but also intellectually).
tl;dr: the important is making them understand they can, not necessarily how (they should be able to teach themselves specific skills)
The distinction has to be between educating people how to do things on the computer (which really doesn't take all that long, but can turn into "qualifications in specfic version of Word"), versus understanding the technology enough to fix your own problems and develop new things.
How many YC ventures' server software are running on a hosted Linux system? How many of their endpoints are running on Android? Was the toolchain Linux-based?
It's more likely that you have a smartphone rather than a PC. It's more likely you have an old, unused smartphone than that you have and old unused PC for paying with operating systems. If you are writing software, it's more likely you are targeting a Linux instance running in a VM at a hosting service or a smartphone, than a Windows PC.
In previous 10 years I had access to PCs (usually Windows).
Train the proles up so that they can be useful to their future employers? Teaching any specific vendor's products exclusively isn't a proper role for a public institution.
> How many of them would ever see a PC running Linux again?
Practically none, if the educators who choose which company's products are the winners tend strongly to one vendor's products.
> The cost argument doesn't really stand up either,
No, but it bothers me a bit that one dominant market player gets the majority of public money, and another tends to get nothing. I'm not sure how to solve this though.
>books cost money and 'do nothing but line the pockets of the publishers' to paraphrase the author.
There are a lot of fair criticisms of the textbook publishing industry.
> It's not as if computers running Linux cost nothing either.
True. But at my college, Microsoft licensing is a budget item as is maintenance of Windows PC's. If they were Linux PC's the replacement for those expenditures would probably cost less. A more proper solution would probably cost slightly more than standardizing exclusively on Windows.
>If Linux is going to find a place in mainstream education, it's going to have to earn it. This is of course quite possible.
Public institutions ought not to be picking winners here. It isn't appropriate.
>Decisions about which solution best serves the educational needs of children should be in the hands of educators, not technological partisans.
Well, currently it is usually in the hands of institution IT folk, most of which (in my experience) tend to be technological partisans.
A few days later, he found me and gave me a Linux live CD with Knoppix on it. I remember it claimed to have 2GB of software, compressed into the 700MB a CD could hold. I could put it in my family computer at home, and without installing anything, changing settings, messing up the computer my parents used in any way, I could use an entirely different OS, it was amazing!
This was the point at which I realised how software and hardware were truly separated. A computer was no longer an 'appliance'. The "start button" wasn't part of the computer, it was just some software that I could replace.
I believe, and have told many people in the years since, that this was the turning point in my computer education, that has lead to me studying computer science, and becoming a software developer.
Linux should be a part of school education, because teaching kids that computers aren't appliances, that hardware and software have a split, and you can change both, is crucial to developing a real understanding of how they work.
* how DNS works
* the process model with stdin,stdout,env vars + cmd args
* streams - text or otherwise
* protocols like HTTP but what they actually did on the wire
Every OS uses the above list and so even for a young child - you can teach by example.
Surely using nice fluffy diagrams it would be worth trying this to find out that only 'old' people can understand such things?
We should teach "how" computers work (very basic principles) and maybe "how" communications work (very basic principles). And definitely we don't need to teach kids about HTTP... Maybe, and only maybe, we could teach them how a programming language can help them with their "math homeworks" and things like that...
Show kids how to build a webpage with HTTP and CSS and they will run for their lives. Maybe you can teach them how to configure any content manager making an effort in explain them how having a webpage can affect their lives and how can they prevent them (security, privacy...).
It is school guys, teach kids useful tools for their lives, don't bore them with hypes (I am purposely obviating the "brain" development thing).
can you tell me a few other fundamental internet technologies you think are irrelevant to your internet job? we need some ideas for expansion in 2014.
thanks.
Since clicking with these basic things - I have enjoyed my job much much more.
However - at what age they should be introduced not sure - 10, 15, 31?
Future accountants and mechanics aren't going to benefit much from understanding how DNS works, but they can benefit from knowing how to install an OS, or even doing high-level automation.
There's plenty more people using HTTP than there are biologists in the world, you still get fed up all those subjects that don't suit your area. Why single out the ones that are mostly likely to be useful to anyone?
Even amongst Free operating systems, why Linux? What are the advantages compared to FreeBSD, or OpenBSD, FreeDOS, or ReactOS? In an article like this, you need more than a few vague statements to back it up ideology, you need evidence and proof that Linux is the best route.
Programming? I'd say the OS doesn't really matter. Simple, easy to see initial result environments like MIT's Scratch, or Logo run on pretty much everything.
To start? Probably a programmable calculator.
Don't misunderstand me, I don't advocate hardcore CS for everyone, but some basic scripting would not hurt the average student.
A couple weeks back I remember the case when someone bleached her home because she feared she could catch the viruses on her computer. There are many people who do, for the lack of a better word, rituals with their computers because they can't figure out their wi-fi radio tales some time to grab the local network signal. They do it because they did it once and it worked and they have no idea it had nothing to do with the problem they were trying to solve.
A basic understanding of technology is increasingly important.
Operating systems don't have magical powers for making users interested in their internals.
How many people die every year for not understanding the basics of electricity?
Evidently if you try to repair your TV (without knowing how to repair it), change the electrical installation of your house (without knowing anything), touching a high intensity cable or something like that it is a dead by accident or by stupidity.
MacOS should be a part of School Education!
It's primitive tribalism. People should learn "computing" as part of a school education as over life things are going to change and they're going to need to adapt.
However they're just the foundations on which you teach. Programming languages, tools and software packages are the important bits. Which OS doesn't matter really. Neither does any red vs blue pill selection.
Most of my knowledge is applicable to any platform as it's fairly generic. I avoid specialisation for this reason.
I can sit down on any machine and be productive straight away regardless of if it's open source or a feudal empire. That's what we should be teaching.
The real issue was Universities acknowledge them as points towards UCAS so practically everyone on the course ended up staying on another year or two and studied other subjects to get the necessary points.
I'm hopeful that one day the system will cater for more subjects but its a long way way at least in the UK.
Probably the closest you can get is KDE since for most users if the setting isn't in the GUI it doesn't exist.
It would be cool if schools had a mix of windows and Linux computers though that way students can learn that Windows doesn't equal computer there are other OS's as well. And before you ask no, where I'm from Apple was as if it didn't exist.
I only learned about Linux when i was 14 and to be honest i though it was crap at first since all Linux windowing systems that I tried were awful.
But i continued to discover more of my system and figured out that Linux without the terminal is only appropriate for grandmas that can barely use a computer and are unlikely to run into driver issues when connecting new devices.
When was the last time you saw a machine running Linux in person?
> unlikely to run into driver issues when connecting new devices.
I am not a grandma and the last device that didn't play nice with my Linux machines was a prototype Blackberry phone. I somehow don't think it was the computer's fault.
While now I rarely run into driver issues that are very serious i still needed to replace my Wifi card on my laptop to be able to run it in monitor mode about 1 year ago.
So no Linux still has driver issues with certain hardware. Granted this is a bad example since it's quite a technical requirement and it's not Linux's fault but the manufacturers however Linux driver coverage is not as vast as windows nor do products come with a CD containing drivers for Linux so if it doesn't work regular users aren't going to care why.
Their going to blame the OS.
Why does the installed OS imply anything at all about the quality of the hardware?
> Like it or not students don't see the potential of Linux ...
Why would they, if they have never been exposed to it?
>and truth is Windows is still more user friendly then Linux when it comes to doing some moderately advanced things.
I've always felt the opposite is true, that most Windows based solutions enable people to do easy things easier than with Linux, but that implementing more complex solutions often quickly becomes harder on the Windows platform than on Linux. That's been my experience, YMMV.
>It would be cool if schools had a mix of windows and Linux computers though that way students can learn that Windows doesn't equal computer there are other OS's as well. And before you ask no, where I'm from Apple was as if it didn't exist.
I agree. I think it makes for better educated graduates, and a better marketplace for computing products.
>I only learned about Linux when i was 14 and to be honest i though it was crap at first since all Linux windowing systems that I tried were awful.
That may have been a fair assessment at the time.
It doesn't for people who understand the technology but a kid learning in school will asses the entire package as a whole with the limited skills he has at using it mind you.
> Why would they, if they have never been exposed to it?
I doubt they would even if they were exposed to it. I takes a lot of dedication to reach the point where you're comfortable with the terminal and see it's potential. I don't think students would reach that point in school.
> I've always felt the opposite is true, that most Windows based solutions enable people to do easy things easier than with Linux, but that implementing more complex solutions often quickly becomes harder on the Windows platform than on Linux. That's been my experience, YMMV.
It is from a technical point of view but for the average person who will never need to do anything more complex it isn't. And even if they do need something more complex they're already invested into windows so it's unlikely they'll switch. Since windows made it easier in the beginning they'll assume that the pattern continues.
Linux is perfectly capable for use as a general purpose computing appliance. It is not ideal for every task, but no OS is. The terminal isn't necessary for everyone.
>It is from a technical point of view but for the average person who will never need to do anything more complex it isn't.
If you're talking about the most casual users, then I disagree, those people don't care or need to know much about their facebook appliance.
>And even if they do need something more complex they're already invested into windows so it's unlikely they'll switch.
Because someone made that arbitrary choice for them.
> Since windows made it easier in the beginning they'll assume that the pattern continues.
Which is an argument against reinforcing those patterns.
Were we impressed by the machine ? Hell no, everyone knew it was a piece of crap in that day and age. Just as we were not impressed by retroprojectors, chalk boards, out of date cassette players and 10. years old science experiment stuff.
Did we learn to program the arm in some simple basic like language I forgot how it looked like ? Well, yes, because we wanted good grades. Like for every other course.
I think most of us didn't care about programming, but at least the ones that never touched a computer before got to know how an algorithm would look like and how a program runs.
Linux at school should be efficient on the same level, to teach basic things (not just programming of course) and give a first experience in something students might not care about at all.
[1] http://atomictoasters.com/tag/thomson-t08/
PS: to be clear, I don't think linux at school should be used to push linux, helping some group's agenda shouldn't be school's role. Giving students more insight into how the *nix like systems work and can be used is a better goal, primary windows user could bet behind as well.
Coming to the topic at hand: This reeks of fanboyism and fanaticism. While I personally agree that young people should be introduced to more than Windows as a part of their edution in computing, this is taking the rhetoric too far.
The concept of "open source" should be part of school education.
We don't need thousands of proprietary version of the same thing. That's a HUGE waste of resources on literally every level.
All we need is 1 version that is accessible, clone-able, and modifiable for everybody.
Imagine where humanity could be today if we had used that approach right from the start and for every single product out there.
That is exactly the model Linux has offered for over two decades now. If it was such a good model, systems like Windows and MacOS should now be history.
But those proprietary systems still dominate.
I don't think it is wrong for a college to have a Microsoft site license, but I do think it is wrong for a public college to require a specific vendor's products where equivalents exist. I also think it is wrong for a public college to force students' exclusive use of a single vendor's products. Computers are mere tools and it isn't the job of a public institution to choose winners.
The counter point is that they shouldn't need to know this, but then why do we teach flower germination? or the causes of the second world war? or Shakespeare? - I've never had to use these in everyday life.
The simplest possible programs are still very simple and short. Even with verbose languages.
One drawback here is that even a simple game by modern standards is light-years ahead of my best efforts on the Apple II. And those best efforts would be considered rather mundane or sub-standard today. A modern-looking program involves interacting with a GUI library and they are complicated animals.
What a successful teacher should do is to instill the love for the essential part of the program. When you write a "guess the number", there is no need for particle generators, applause, music and animated backgrounds. Keeping the basics short the kids will learn that programming is no different than creative writing using imperative forms all the time.
Now there was a gap for me but I have children now and they are learning how to write HTML and basic JavaScript. They are using software to produce video productions and stop-frame animations, they are even getting instruction from parents on how to write python. They have Windows desktops, iPads and a few Linux netbooks. They have it pretty good.
And this is a London primary school with an Ofsted "needs improvement" rating.
It's not all that bad.
I visited a school the other day, all they seemed to have were windows machines, which presumably are pretty locked down. Fortunately we brought Raspberry Pis to the school and kids seem to love it and learnt a bit of python on them.
If it hadn't have been, I might have skipped the 7 year continental philosophy grad school detour. Ah well...
As for Linux in schools, my feeling would be that there should be a room or two of Linux boxes, and the rest should be Windows - simply because 90% of computer usage in schools, according to some statistics I just made up, consists of doing your homework double quick at breaktime or other mundane uses where it would be better if kids were working with an OS they recognise from home. People who want to do CS/code type subjects should be taught Linux, and it should be available to 'computer clubs' etc.
IMO all kids at school should be taught an ugly, difficult language like x86 assembly. Hardly any of them will understand it to a significant degree, but they will appreciate how difficult working with computers is. They will be more impressed with say, grep, or the original DOOM game.
Some of those kids will grow up to be somebody's boss, that potentially annoying, ignorant boss that expects you to juggle knives while tap-dancing in clogs.
The article however; utter shite. It's bad journalism.
'do nothing but line the pockets of the publishers', well yes. The company does profit from this, so? That's not valid argument to not use it in a schools? It should be approached from a 'look what we can learn from free tools' angle.
If you start a child off with Windows or Mac, look forward to them maybe not ever understanding what a directory is, or that a computer has two types of memory. Consciously choosing and paying a premium to learn computing from Windows or Mac OS sounds to me only mildly better than trying to learn computing with a Playstation. They're simply not meant to be user serviceable.
I don't know what to say about not teaching children computing. There's a better case for teaching computing than any other science, if you judge usefulness by daily opportunity to use your skills to understand and improve your situation. The only reason I'd be against it is because I love being overpaid to do simple work due to the ignorance of the general population of the machines that completely run their lives.
My goal for a childhood education in computing would be to produce an adult that understands the capacity and flexibility of computing, and can be trusted to manage or hire computer workers, an adult who won't over or underestimate what can be done with computers, and an adult that has a deep relationship with the devices which, from now on, are going to be in physical contact with them at all times.
Yes, it's more important than learning how to fix your car. I've never had a car. How many people can say that about a computer? How many people can say that about a computer without ignoring embedded devices?
Edit: I googled it but each result explained a different type of memory (caches, system RAM, virtual memory, hard drive) or (RAM vs ROM) or (Primary vs Secondary).
edit: there's volatile memory and non-volatile memory. Or hundreds of different types for every place they're used, every purpose, and every brand name they're sold under, for trolls who miss the forest for the trees.
Volatile memory, like RAM, needs a constant source of power to hold information, but is very fast, so computers use it for calculation, or information that it will come back to immediately. Non-volatile memory, like a hard drive, holds information even when the power is turned off.
cache: means a temporary place to hold stuff, and isn't a particular type of memory.
system RAM: is volatile memory used by the system.
virtual memory: is stuff that was in system RAM but hasn't been used in a while, so was stored on a hard drive for a moment. Or rather, the place on a hard drive that you've reserved for that stuff.
hard drive: non-volatile, spinning platters written on with magnetism, like a cassette tape. It's better than a cassette tape because you don't have to rewind or fast-forward the entire thing to get to what you want.
RAM: is volatile memory
ROM: is non-volatile memory that is written once, and usually never erased and rewritten. Many forms of ROM actually can be rewritten, but to the extent that it's easy to rewrite ROM, the less it counts as ROM.
Primary: another word for system RAM.
Secondary: another word for non-volatile memory, like hard drives.
Of course processor caches are a type of memory! All RAM is is a "temporary place to hold stuff" too.
Hackers love acronyms, I don't mind them unless there is ambiguity (I haven't yet come across any).
A couple of years back I was in the same situation as yourself, when I bagged my first laptop. The only advice I can give you regarding getting to grips with computers is to focus on one subject at a time (which is easier said than done, especially if you get lost in the myriad of wikipedia articles).
A few weeks ago I lost my desktop (I run ubuntu), and could only access the system through terminal. Luckily I knew enough about using the command line to find a solution (I think I typed in sudo apt-get ubuntu-desktop). Sooner or later knowledge of little use becomes vital.
Well, at least you're honest about it, but I think that line of thinking does lead to certain problems in the industry. One that popped immediately to mind was:
http://en.wikipedia.org/wiki/Technical_debt
I think this situation is probably going to grow. One day, even you and I could be considered ignorant.
I don't teach Linux, I teach operating systems generally. Most of my students use different OSes already: Windows on a home desktop or laptop, iOS or Android on a phone. Learning Linux for school is no big deal for them.
I teach word processing, not Word or OOWriter; and spreadsheets, not Excel or OOCalc. In a one-semester course, I introduce and compare OSes, do some shell scripts to contrast the CLI and GUI, introduce HTML and create some web pages, then cover word processing, spreadsheets, and presentation software. This course is required for graduation as is a second one-semester course. This uses Kernighan's book "D is for Digital" [ http://kernighan.com ] and covers what any well-informed person should know about computing: hardware, software, networking, and data.
I enjoy using Linux as a platform for teaching computing for three reasons: (1) Linux boxes are cheaper than PCs or Macs. (2) The idea of choosing one's OS fits well with our charter school's ideas of making one's own educational choices. (3) Students learn more about the systems they use at home -- Windows, OS X, or whatever -- by contrast with Linux, just as they learn more about their first language (English, say) by studying a foreign language.
Special camps and tutors are fine, but I don't think they are necessary in many cases.
Author : "Challenge...accepted"