Building a Linux Computer Lab for Schools?
joseamuniz asks: "After giving Linux classes to Secondary School Teachers, I got in touch with a non-profit organization called UNETE. This association has donated 1,523 computer labs to public schools in Mexico. I told them about Linux, and they are interested in equipping a beta computer lab with this Operating System, with Intel PIII, 256 MB RAM PCs. The more they like this lab, the higher chances to include Linux in the new labs donated by this institution." What hardware configurations and software packages would you install on such a machine to show off the real power of Linux in an educational environment?
Firefox
Make absolutely sure that any software these schools really want to run either has a native Linux version, a practically-idential Linux version, or will run flawlessly under WINE. If the schools can't use the software they want to, it'll leave quite a bad taste in their mouths about Linux.
Im afraid most of the educational software taught at the school level is built for windows and wont support other OS's very well. So the primary thing is find out which software is needed by them and get those working on Linux. Not many school children are going to start out running command line programs, or coding in perl and C++. Most likely, they will browse, use rich text editors/spreadsheets, chat apart form educational software. Unless of course, we are talking higer grades, even then, not all of them are going to be computer professionals. -imho
~never play leapfrog with unicorns
Should we do this? :(
Linux is still in the domain of the educated user. From what I know of secondary schools here in the states, most people that run computer labs have trouble enough configuring MS products, much less running linux.
Unless the people in the labs know what they are doing, I would stick with something simple.
Microsoft wins again
You have the classic battle between OpenOffice and Microsoft Office.
After just Linux and OpenOffice installed, it will be evident the advantages are much greater than using Microsoft products, namely because of the price. If these guys are donating thousands of computers to schools, reducing software price from $200-300 per unit to $0 is going to enable them to construct out quite a bit more labs.
There are quite a few Gnome applications which would help in everyday usability. Of course, Gnome or KDE would probably be your desktop of choice, especially if the organization is coming off of Microsoft Explorer; keep it familiar to effectively show advantages.
You didn't specify what type of educational environment the labs target, but for programming Anjuta is a great alternative to Microsoft Visual C++.
A few other mentionable applications would include Mozilla Firefox (over Microsoft Internet Explorer), and The Gimp (over Photoshop).
For networking with existing Windows labs, Samba is an effective alternative.
Nonsense. Computer skills taught in schools should be just that: computer skills. Not 'keyboard shortcuts for Word 97', but skills that can be applied to any computer. Let's face it, any specifics you learn in secondary school are going to be obsolete by the time you get your first job.
An example: My secondary school had a lab full of Apple IIs. By the time I needed my own computer, I bought a Macintosh. % of specifics that weren't obsolete: zero.
Granted they said they'd sent out free cds, but isn't asking them to send 100 cds to Mexico a little much? Why not just download Ubuntu, spend $20 on a spool of cds and print off some labels for the copies of the main cd.
I traded all my mod points for these magic beans.
Those who use only windows at home and at school learn just that, how to use windows.
Force them them to use something else, and they no longer just know how to use windows, but how to use a *computer*.
I've heard it said that the best way to learn how to learn language is to learn many of them. This is why we teach spanish, or why a good CS program should involve several different programming languages.
The concepts for using any OS are the same, and that's what should be taught in school, not exactly where to find what button in Word. You wouldn't say that kids should skip reading Shakespeare because every newspaper in the country is a 100% modern English shop, would you?
In a certain sense I agree with you. I want more people to use linux, and it is a disservice to those students if we force them to use linux to further our own personal opinions or political goals. Ultimately, for them to succeed in the world (at least the current world), they will need to learn MS Windows.
On the other hand, let's give students the credit they deserve. If you provide students with learning both on Windows and linux, they will have a greater skill set when they go onto university and workplace. Since linux can dual-boot, I don't see any problem with teaching them how to use different operating systems. And once they've learned two different OS+GUIs, it won't be hard for them to adapt to new technology (e.g.: they won't be intimidated by a Mac).
I'll recap, 00squirrel's SOLE basis to use Windows versus Linux was because everyone eles uses it. That's NOT a good reason. If everyone one else uses a knife instead of a screw driver, should I stop using a screw driver too?
If someone says he and his monkey have nothing to hide, they almost certainly do.
This is a joke right? Giving students kernel access? Maybe in a small lab or on a special "development" lan or something, but in general this is a bad idea. Students (hell anyone new to this) have a tendency to jack things up without realizing what they've done. If that isn't recoverable, you've doomed at least one computer in the lab, possibly more. Yes it can be fixed with a backup, but why go to the effort for a standard computer lab used for word processing, email, and internet "research"?
Let's not even consider the few students who are actually involved in hacking or programming who might decide to use the school lab (instead of their home boxes) to develop malicious code.
bkr
"Growing old is inevitable; growing up is optional."
Forget about distro arguments, forget about how cool kdeedu is, forget about how amazing (whatever, I don't use gnome, but I'm sure there is something).
Concentrate on the fact that you have slow machines running undocumented software that are being demonstrated by people who do not know the software. Every one of those issues needs to be resolved, and if you want the lab to be a real success then aim for the goal of making everything run smoothly every time.
The machines will feel slow, so you will have to work around this somehow or choose a light wm and cope with the added complexity it brings. The software is mimimally documented, and what documentation exists will need to be rewritten for your target level and language. Think howtos with step by step screenshots -- the reason cheesy computer courses use those is because they work... And the teachers need more than just a training course if you expect things to go well, they need a depth of experience.
So to start with the hardware. Linspire does not run well on a typical 500MHz machine because it needs more ram. Decide for each major choice (distro, window manager) how slow it is, and if it will feel better if you choose the fast but hard option or the slow but easy option. Generally, people who haven't used 3GHz computers cope with slowness more, so decide based on their experience rather than yours. If the machines have high ram I would go with KDE, low ram and I'd go with enlightenment or similar.
Next, concentrate on making sure every single thing these people want to do will work flawlessly first time. Make the documentation perfect. In many ways, the docs will be more important than the software.
Now you have the computer side working, concentrate on teaching the teachers to the point that they feel 100% comfortable. It is important at this point that no changes happen to the software. If the teachers just know how to do their lesson but don't feel comfortable then that discomfort will show strongly.
I hate to say it, but this sort of project is a lot of work even with awesome software running on blazingly fast machines. You're not targetting geeks who will overlook details such as user interface or docs because a program is cool. Of course, if you drop your standards and just deliver something that will appeal to geeks, well that's pretty easy with linux.
If you do manage to get the software, training materials and educators all working smoothly, then don't change a thing. Say openoffice 2.0 comes out and would fix a number of issues, ignore it! You can only retrain geeks fast, not people. You'd break your howto with items shifting menus or even just icons being tweaked. You'd upset your educators who don't have the depth of experience in software to cope.
Oh, and please publush everything at this point -- collaborative development doesn't just apply to software.
Good luck.
Software for a school lab installation's pretty similar to what you'd want in a normal business.
I used to help admin a high school windows lab, and let me say this:
1) Most edutainment software, while entertaining, is really kind of a silly use for the systems. The only place it really helps is to get little kids used to using a mouse.
2) You almost never find specialty software useful after elementary school.
A good high school workstation needs:
1) A web browser - Firefox or Konqueror
2) An office suite - OpenOffice.org
3) A graphics editor - The Gimp
4) A code editor - Take your pick. I'd say something a bit easier to use for a beginning coder/HTML writer, though
Moreover, there should be a few systems in the school with
1) A dv movie editor - no idea on linux
2) An audio editor - ditto
3) Science tools for conducting lab experiments
If someone else wants to fill in those gaps, go ahead.
These obviously go where you'd need that specialization.
That's about it. What's *more* important for a lab is a system to deal with the fact that KIDS LIKE TO MESS WITH COMPUTERS.
They will change the desktop, delete important files, install crap, put keyloggers on just to play around, etc, etc.
There are a few ways to fix this:
1) Use restricted users or special software to keep them from doing any of it.
2) Have a script to re-image the machine every night.
I strongly recommend a combination of the two, leaning toward the second one. It works a lot better, and doesn't constantly annoy the students either.
I'll leave it to the linux gurus to suggest how you actually do this in linux, but I know that it can be done reasonably, and that these are the most important aspects of a high school computer lab. I think that any install recommended for this purpose doesn't need to show any flashy about linux, or how the students can compile their own kernels (although that is fun), but how it can set up an easy to use and maintainable lab much cheaper and simpler than doing the same thing in windows.
Especially push the "no MS Audits" thing. We used to waste *SO* much time worrying about those. According to my teacher, if we got caught with one unlicensed copy of anything on a system, they were legally allowed to confiscate the entire lab (although I was never entirely clear on who "they" were). Not having to keep track of MS serials sounds like plenty of reason for a switch to me, especially since you never use any of the special capabilities of Word or excel in high school that make OpenOffice migration difficult in the business world.
Anyone who thinks that Linux can somehow get around the physical limitations of older hardware is deluded.
However, Linux is indeed a great solution for breathing life into outdated equipment, provided the equipment is up to the task.
As an example, at school I had to use an old P166 for my programming class. It was running some version of Windows (2000, I think), but it was frustratingly slow. Windows 2000 was probably designed to run on computers manufactured somewhere around the year 2000, and not 1995.
To get around this, I loaded Linux on the machine. Now, of course, since Linux can't make the hardware faster, I had to change something else to get the performance I wanted. The simplest solution was to not install X and just run everything from the console. The hardware could easily handle Bash, Screen, Links (text-mode web browser), and Vim, so I was able to use very outdated hardware to complete my project.
If I had one complaint, it would probably be that compiling my application took roughly 45 minutes (this was a one hour class), compared to less than one minute on modern hardware (undoubtedly due to a lack of RAM).
Basically what I'm saying is that Mozilla is a huge and rather bloated piece of software and it will never run well on very old hardware. On the other hand, Mozilla is not the only option with Linux and a decent system can be setup on old hardware.
As a preemptive response, I'd like to point out that other browsers based on the Mozilla rendering engine are much faster. If that lab had been set up with IceWM (or XFCE) and Epiphany or Firefox, I think the results would have been much better. I am in no way suggesting that you should have used text-mode web browsers.
True story.
Second, the best distro would likely be Fedora Core or SuSE, as these are "friendly" and geared towards the non-technical folk. Maintenance is relatively easy, stability is generally good and security seems to be fairly well taken care of.
Third, you absolutely, definitely, without question need software that can interact with Windows software and systems. That means you want Samba installed (probably as server as well as client), Open Office, Terminal Services, Evolution and readers for the various Microsoft codecs. If you want a lot of web-based activity, you'll want to make sure browsers support PDF, Flash, Shockwave and preferaby JScript.
Depending on the age-range of the student, and the activities they'll be wanting to use the computer for, you will likely want to install software developed by a variety of Universities, research laboratories and scientific institutions. What you ideally want to do is ensure the students come away with the feeling that Real Stuff can be done on any home computer, even if it is slower than NASA's latest supercomputer.
(This is vital. The biggest single turn-off in education is to come across as irrelevent factoid-pumping or useless trivia. It doesn't matter if the students end up using the programs in class or afterwards, what matters is that they don't feel they're wasting their time learning about - or with - computers.)
If you get the chance, I'd suggest installing either grid software or clustering software, plus a demo that wanders from screen to screen. That is likely to hold the attention of brighter students, who will likely want to learn how that's done so that they can do better. Again, it's all to do with interest levels.
The key with students is that you need to make a subject or a technology a drug of choice. They must want to get hooked on it and must want more so badly they can taste it. That is how you get them engaged and that is how you get them to do more than sit around like stuffed dummies.
Of course, you COULD treat them like stuffed dummies. At that point, you could save yourself time and effort by installing empty boxes rather than computers. They won't notice the difference, in that state.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
Unless its for a class about Linux, or your plan on teaching the kids Linux its best to stick with Mac for elemantary students and Windows for secondary ones. One problem Linux does have is that its written fro geeks by geeks and although some Microsoft programs are buggy and what not the reason they cost $ is because MS researches the best way to buid a interface. If you sit a kid in from of a Linux workstation and expect him to know how to use it then your wrong
You GOT TO get it
- Centrally authenticated
- Centrally managed (updates, new software installations)
- Work with the rest! (File & Printer shares)
because that is what the Windowses do nowadays with quite an ease. If you don't, no one will want extra burden from your tweaks.
So, negative moderators of the parent post, please explain to me how Mexican students are served by being force-fed a marginally-used OS in favor of one that is used by almost everybody in the business world?
So I think I have answered your original question. Do you agree?
You cannot really expect students to be compiling their own kernels.
What makes you think that would ever be necessary?
Seriously. The admin doesn't even have to do this. Just install the distro hook up the clients, create accounts, and you're done.
Hard disks are cloned so that a PC is exactly the same as the other. So installation will actually just based on one manually installed computer.
This is much easier with LTSP. Thin clients don't even need hard drives.
"If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
Don't worry too much in the beginning about the "wow" factor of Linux and what a good OS can do. First focus on demonstrating that Linux can in fact do all of the things you expect from a typical pc (web surf, check email, write MS Office docs with OpenOffice, etc...). Once your users see that Linux can do everything they already do, then they might be ready for the gee-wiz stuff. It has been my experience that diving into the technical details of what makes Linux better than some OS's turns people off. Teachers usually don't care that you can custom compile your OS :) Cheers and happy computing to all.
Beggars can't be choosers. You can't dictate what is donated to you.
Sometimes you don't hae a choice. remember, most of the world is POOR. Or do you think us Africans should go back to living in mud huts and walking across the trackless bush? Most of our schools and road infrastructure are at least partially paid for through financial aid. Given a choice between a piece of crap PII and nothing, the PII will do very nicely, thank you.
Specialisation is for insects