Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Education

Week-Long Free-Software Class for Kids? 381

mmol_6453 asks: "I have the opportunity to submit a plan for a week-long class about 'Alternative Operating Systems' to our local community college's Computer Camp. The students will be aged 8-16. We've had classes attended by students who used Linux, but we've never set up a class with alternatives as options. We've found that students in this age range, when interested in the material, can absorb a great deal of information in a short time. This means there's a lot of potential to teach them about Linux, *BSD, and open-source. We often get extremely bright students here, the kind who are likely to go out and earn $80,000/yr in a post-90s economy. Some of them are even on Slashdot. I want to give the rest a boost in the right direction."

"Considering that the great deal of material to choose from, I need to ask the Slashdot Community its advice:

  1. Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?
  2. What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)
  3. Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?
  4. Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'
  5. Are there any other key issue I need to think about?"
This discussion has been archived. No new comments can be posted.

Week-Long Free-Software Class for Kids?

Comments Filter:
  • Uh Oh (Score:5, Funny)

    by JJAnon ( 180699 ) on Wednesday December 04, 2002 @05:34PM (#4813650)
    Some of them are even on Slashdot. I want to give the rest a boost in the right direction."

    Aren't the kids in the first group the dangerous ones?
    • Re:Uh Oh (Score:5, Funny)

      by cybermace5 ( 446439 ) <g.ryan@macetech.com> on Wednesday December 04, 2002 @07:13PM (#4814586) Homepage Journal
      Heh, you don't need to be twelve years old to be dangerous. Just tired, bored, and slightly mischeivous.

      Kind of like the other week, when I was just idly poking around my linux box. I started looking for little tricks with devices, and tried various things like cat /dev/urandom > /dev/dsp. Which of course resulted in a satisfying white-noise sound. The next, fateful step, was typing cat /dev/urandom > /dev/mouse. I was using a terminal emulator in KDE, and my cursor starting skittering and swooping around the desktop as if posessed. That was funny, until it started violently clicking random things, dragging windows around...at the same time it opened my "home" folder, I realized that the terminal window was logged in as root. The mouse frantically clicked items in my folder while I frantically tried to kick out of X, kill the process, reboot, anything! As the mouse jumped up a few directories and starting roaming, clicking and right-clicking at root level, I lunged for the power button. Before I reached it, the mouse closed its own terminal window, and the cat process.

      That was the closest thing to terror I have experienced while using a computer. It won't happen again...to me. ;-)
  • by Anonymous Coward
    I would suggest Patrick Naughton.
  • Issues (Score:5, Insightful)

    by Vietomatic ( 520138 ) on Wednesday December 04, 2002 @05:34PM (#4813656)
    Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?

    You shouldn't assume that they know how to install operating systems. The main thing is that it takes a long time to install software, let alone an entire operating system.

    What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)

    The one that they are most familiar with, in terms of GUI.

    Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?

    As mentioned above, the one with the GUI will produce better results.
    • Re:Issues (Score:5, Interesting)

      by Zebbers ( 134389 ) on Wednesday December 04, 2002 @05:40PM (#4813716)
      no gui, no. Most of the slashdot generation prolly started on nongui systems...Mine was apple][ tandy1000...I would hate to know how I would've turned out if I only had touched something from win95 up....there is something fundamental about not having the gui there.
      • Re:Issues (Score:5, Insightful)

        by domninus.DDR ( 582538 ) <domninus@hotmail.com> on Wednesday December 04, 2002 @05:52PM (#4813881) Homepage
        I dont know, I grew up in win95/98 and switched to linux when I was about 15 and I use the shell heavily because its so useful. Even though they start off with gui, if you teach them how to do things with a shell thye probably will end up doing it the fastest way out of the two
      • Re:Issues (Score:3, Insightful)

        by NorthDude ( 560769 )
        maybe, but today, with everything featuring a nice GUI,
        you won't grab their attention if it's not "cute".
        Maybe introducing them to something like gnome and
        kde and then, afterwards, introducing them to bash
        would be a more interesting path for them.

        I myself started on a TRS-80, which had no GUI. But the
        first few application I typed in there were still the one
        doing something "flashy" with some cool beep beep.
      • Re:Issues (Score:5, Funny)

        by LinuxHam ( 52232 ) on Wednesday December 04, 2002 @06:07PM (#4814039) Homepage Journal
        Please don't inflict your treacherous upbringing on the next generation. If they start off learning how to use computers the "easy way", who knows what comfort level they'll achieve after just a few years. They might actually grow up and teach *us* a thing or two about what computers are "supposed to do". By God, man, don't just sit there and say "no GUI for the newcomers". It's safe to say that you (nor I, nor anyone) don't know *everything* there is to know about computers, and how all people interact best with them. Some kids may not (will not) work well with the CLI, but I still welcome them to our community.

        And yes, I started on the Commodore PET some 22 years ago and fully understand that which you speak of.
        • Re:Issues (Score:3, Interesting)

          by brsmith4 ( 567390 )
          I don't know about the rest of you, but I started linux from the GUI (a copy of redhat 6.1). Within a couple of years, I was banging out shell scripts and perl scripts with the best of em. I say learn the way you feel most comfortable with, but most importantly, just learn.
          • Re:Issues (Score:3, Interesting)

            by kscguru ( 551278 )
            Bingo - I actually started Linux from the shell, but the only reason I could pull that off is my dad's first machines were a CP/M a 386 that ran DOS 6, so I was familiar enough with using a shell to not get frustrated (cd worked the same, dir=ls, that was all I needed). Take away that safety net - I wouldn't be using Linux today. Now, the only reason I use a GUI is to have multiple shells on screen at the same time.
        • First I think your title is misleading, talking about 'alternative operating systems' when it seems you blatantly mean 'free Unix clones'.

          If you are giving a talk on alternative operating systems, I think you'd do well to mention other things than just Unix clones (especially those trying to emulate windows). Try to show more variety - MacOS, RISCOS etc. Remember the gui/WIMP operating system as you know it is not here to stay.

          I'm not convinced buy all this WIMP (Desktop) environment stuff. I started using a command line of sorts (BBC model B), before switching to RISCOS which was (debatably still is) a very good alternative operating system - there are many advantages with being stored on a ROM.

          RISCOS is also in some ways the purest graphical desktop I've ever used. It is almost entirely mouse driven and is the only OS I've found with true drag'n'drop saving. (you drag what you want to save into the folder you want to put it in and let go instead of typing(messing around) in save dialog menus.)

          Nowadays I tend to use X-windows with a completely blank desktop without KDE/Gnome or any of that stuff and just use keyboard shortcuts, and the occasional terminal. I've completely forsaken graphical file managers.

          Windows XP initially keeps the screen as uncluttered as possible and tries to obscure the filemanager by hiding the 'mycomputer' icon. So we are already moving away from our mid 90s obsession with graphical file managers. The next version of windows (the evil copy protection infested one) is rumored to be moving further away from a desktop to create a more 'integrated' feel and is said to use some database backend instead of a normal file system.

          Anyway my point is, operating systems (or at least their user interfaces) are changing, and in 10 years time, will look nothing like what they currently do. So try to equip these Kids to be flexible, and please try to inspire them to think about what they want operating systems/user interfaces to be like.

          We must surely be heading towards computers like Holly from Red Dwarf or the computer on the Heart of Gold. We have the technology we just need the will to develop it so please don't kill anyone's imagination by showing them, 'alternative operating systems' that are merely less flashy immitations of Windows.

          Computer operating systems and user-interfaces are in cars, wearable computers, cash points, phones, robots, not just dull PC clones. We are already moving away from being tied to using keyboards and mice the whole time.
      • Re:Issues (Score:3, Insightful)

        by jdunlevy ( 187745 )
        I agree w/ you here. I'm not convinced a more familiar gui's going to make alternative operating systems easier. Kids have certain advantages over those of us who are older: they're not going to be as prejudiced by past experiences. Guis, "desktop" models in particular, are -- among other things -- ways to make presumably abstract, alien computing ideas seem more familar through analogies with "real-world" systems and experiences. To kids, I could see a gui adding an additional level of abstraction, since I don't think they'll be starting from a point where a computer is any more alien than ... pretty much anything else (including the "office" ideas endemic to the "desktop" analogy).
      • Re:Issues (Score:3, Insightful)

        by adamy ( 78406 )
        I have to agree. Do a distro where you can do a startx to get into x, but you boot directly to a prompt. Gets them realizing that the windowing system runs on top of the rest of the OS.

    • assumptions? (Score:5, Informative)

      by ryochiji ( 453715 ) on Wednesday December 04, 2002 @06:30PM (#4814238) Homepage
      It seems like you're making the oft made mistake of assuming that because young kids know less, they learn less. This is not true. You can throw anything at a kid, and if presented the right way, they'll absorb it faster than any of older folks can.

      >You shouldn't assume that they know how to install operating systems

      No, but I'm willing to bet that given a week, they can learn to install Linux. Especially those with GUI-based installers.

      >the one with the GUI will produce better results

      They might be more familiar with the GUI, but they can probably learn to use the shell without much difficulty.

  • by medscaper ( 238068 ) on Wednesday December 04, 2002 @05:34PM (#4813657) Homepage
    Week-Long Free-Software Class for Kids?

    Who takes a whole week to teach kids Gnutella?

    Oh...Free OS. Sorry. My bad.

  • Start 'em off simple (Score:4, Interesting)

    by Sleestack ( 94766 ) on Wednesday December 04, 2002 @05:37PM (#4813682)
    Start 'em off by teaching them to set up a dual-booting system. That way you're introducing the OS to them in less of a "sink or swim" approach.

    Stay with a simple-to-install distribution to start, like Mandrake. Once they're comfy with the KDE screens, you can introduce them to the wonder that is the command line.
    • I agree. I was thrown into Linux by a co-worker who follows the 'sink or swim' philosophy. Sometimes that works out, as it has thusfar in my case, but it's very easy to get discouraged and quite tempting to go back to what you know.
  • $80,000? (Score:5, Funny)

    by Ribo99 ( 71160 ) on Wednesday December 04, 2002 @05:37PM (#4813684) Homepage Journal
    ...the kind who are likely to go out and earn $80,000/yr in a post-90s economy.

    Do you take 27 year old students?
  • Ummm (Score:2, Insightful)

    by Zebbers ( 134389 )
    1.Install
    2.Doesnt matter
    3.CLI please
    4. Definitely ask the rents.
    5.Dunno

    I would really start with installs...and do it with an easy to customize system..show them you can have a full system running with very little diskspace(floppy, even)...then show them how you can add things, and end up with a full fledged desktop OS. Show them the many faces of Linux(r). And CLI is very important, specially in Linux...you aren't really a power user without it. Just my 2 cents.
  • installation (Score:5, Insightful)

    by Jucius Maximus ( 229128 ) on Wednesday December 04, 2002 @05:38PM (#4813694) Journal
    "# Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?"

    Which do people learn first: How do drive, or how to rebuild a car's engine?

    Show the kids the cool things they can do with the software first, and once they're interested, then they will understand why they need to learn how to install it and do that on their own.

    • Re:installation (Score:2, Informative)

      by cristofer8 ( 550610 )
      For the BSD angle, you could set them loose with a FreeBSD mini install, and then let them build a system from the ground up using ports/packages. I found that to be a great introduction to how BSD and NIX systems work.
    • Actually, I learned how a car worked, including major maintenance (mom had a dodge omni in my pre-teen years) before I learned to drive.

      Replaced a head gasket before I knew how to use a clutch... that explains things a bit...
    • One word (Score:5, Insightful)

      by abe ferlman ( 205607 ) <bgtrio@@@yahoo...com> on Wednesday December 04, 2002 @06:26PM (#4814197) Homepage Journal

      "Knoppix."

    • Re:installation (Score:3, Insightful)

      by wass ( 72082 )
      If you're like my cousin, then definitely the latter first. He has been rebuilding engines for the last 7 years or so (he's currently 17). Heavily into dirt bikes for the past 5 years, does nearly everything on/for them you can imagine.

      He just finished building his car, which is a Ford Cobra kit that he bought (well, his father bought it on the assumption that he can sell it for more money after it's built). The 'kit' basically comes with only a welded body, and he had to go through scrapyards to find old mustang parts and refurbish them himself, as well as build many other things from scratch.

      So, to answer your question, this kid is a total 'geek', doing things with engines what most people here are to computers. So in his case, he was rebuilding car engines before he even had his driver's license.

      Of course he's more the exception than the rule, but his outlook and experience is probably similar to what the students at one of these camps may be like. I know he did go to science camp, where he did typical kid-geek things like model rockets, HAM radio/electronics, dirtbike repair, etc.

      In other words, students at a program like this may already be of the advanced type that want to learn all the details. They might care very little about actually playing nethack on a computer, but want to see how one can compile nethack to work on said computer, for example.

  • Pre-install (Score:5, Insightful)

    by redfiche ( 621966 ) on Wednesday December 04, 2002 @05:38PM (#4813695) Journal
    I wouldn't teach them installation, I think it's far more important to get them using the system. I would start them out with some command-line stuff, though. That'll give them some historical perspective, and reduce the fear-factor if they ever need to go into command line to recover from a crash. I would definitely warn the parents about the CDs.
    • Gotta walk before you can run. If they're gonna play with the software they learned about in this class, they'll have to install it on something. Might as well show them how that's done, it's something they're all going to need to know sooner rather than later.
    • If they dont get a view of the install, then how can they fair if they get free cds and want to install em? At least give em a peek at the instructor installing a system or two, make em pick up a few important points (partitioning on bsd or debian would help a lot). By all means, after that say "go find out how to install the rest", bu8t dont just drop them in it.
  • Show them how to install a free os, then teach them a shell. If anything ever goes wrong, usually a shell can fix it on most all operating systems. I might even stay away from a gui until they have taken an intro class and learned the basics of a shell.
    I would talk with mom and pop before giving away CDs and adress any questions they have about "free" software and piracy.
  • Give them Knoppix (Score:5, Informative)

    by Anonymous Coward on Wednesday December 04, 2002 @05:39PM (#4813703)
    You should give away Knoppix [knopper.net]

    Knoppix is a Debian based LiveCD distribution. It runs directly from the cd. No worries about dads computer getting it's partition table wiped. You could hand these out to the kids day one with no worries.

    It contains KDE, OpenOffice, KDevelop, xmms, Mozilla... The list goes on and on. IIRC there is 1.6 gigs on the CD.
  • Some ideas (Score:5, Insightful)

    by Nos. ( 179609 ) <andrew@th[ ]rrs.ca ['eke' in gap]> on Wednesday December 04, 2002 @05:40PM (#4813721) Homepage
    • Start off by explaining "FREE". Explain both free as in speach and free as in beer... though maybe not in those terms considering the age group.
    • I would stay away from an install of Linux, you could be there all week answering questions on it alone (What does this package do?). Also, stick with a distro you know, but point out all the others. Nothing worse than not knowing right away where that config file is.
    • Next up, make sure they're familiar with whatever editor you plan to use. Leave it open to use more complicated editors (vi) if they know it, but otherwise stick to simpler ones.
    • Give lots of handouts/links to sites with further information
    • Pick a few languages that you are very familiar with, be it PERL, PHP, C, etc.
    • Get some interesting projects for them to work on, be it a webpage, game, utility, etc
    That's about all I could come up with quickly.
    • Re:Some ideas (Score:3, Insightful)

      # Start off by explaining "FREE". Explain both free as in speach and free as in beer... though maybe not in those terms considering the age group.

      "... Free as in soda", a concept that most kids are familiar with.
    • Definately make handouts. They need paper references or a CD to take home when done. A CD with both Windows and Linux OSource software is a must too.

      Teach them a little bit about hardware, if they are interested.

      Definately show them how to dual boot, and fix a broken LILO bootloader.
  • by gpinzone ( 531794 ) on Wednesday December 04, 2002 @05:41PM (#4813733) Homepage Journal
    The title of the course reminds me of the term "Alternative Lifestyles." In that case, give 'em macs.
  • by N0decam ( 630188 ) on Wednesday December 04, 2002 @05:41PM (#4813736) Homepage
    I speak from experience, having been a camp counsellor at a computer camp for two summers.

    You'll lose the kid's interest unless you're giving them something to do at all points.

    Since that's a given, I wouldn't get them to do an install. You might want to walk through a slideshow install or something, but the interminable waiting will get the kids bored and throwing things in a hurry.

    Teach them the shell - teach them perl, turn them loose with a bunch of tools at their disposal, and see what they do.

    We had one kid test the limits of wordpad, using copy/paste/select-all/repeat. He had a great old time, and actually gathered a crowd, as he was "breaking" things.

    Show them how to build a dialectizer in perl - you'll be amazed at the fun they'll have with that.

    Keep it fun. End of story.
  • 8-16? (Score:5, Informative)

    by CVaneg ( 521492 ) on Wednesday December 04, 2002 @05:41PM (#4813737)
    You might want to have two separate ciriculums if you have such a wide age range in students. I think it would probably be damn near impossible to come up with something that was as engaging to someone in 2nd grade as it was to someone in 10th grade.
  • Focus (Score:5, Informative)

    by Reality Master 101 ( 179095 ) <<moc.liamg> <ta> <101retsaMytilaeR>> on Wednesday December 04, 2002 @05:41PM (#4813740) Homepage Journal

    First of all, I think you need to ask yourself exactly what it is you want to teach them. If this is about "alternative operating systems", then are you going to teach them ABOUT operating systems? Most people don't even understand where the application stops and the operating system beings. So is it going to be:

    A class on how to use Linux and run various user applications?

    A class on setting up and administering various Linux server apps?

    A class ABOUT operating systems, how they work, and the differences in technical philosophy among them?

    A class about programming?

    A class about Unix and its history?

    It sounds like you haven't really pinned down what this class is about, other than you want Linux/BSD involved. I think it would serve you well to set back from the details of the course, and ask yourself exactly what concepts you want the kids to walk away with.

    That said, given its a computer camp, etc, I would take the opportunity to teach about operating systems and what they do. Don't bother having both Linux and BSD, they are effectively the same thing (Unix). Have a Windows box, a Macintosh and Linux, and talk about the technical philosophies of each. Note that the Macintosh, while technically a Unix, does overlay a lot of technology, which creates a lot of interesting opportunity for discussion about where the operating system stops and the applications begin.

  • Distros (Score:2, Informative)

    by gowen ( 141411 )
    You could try distributing Knoppix [knoppix.net] or one of the other Live-CD distros, to reduce the chance of Little Jo partitioning away mummy's accounting data.

  • Get them the basics, then show them why they blow MS out of the water, while getting them productive on the OSS OS.
  • How about BeOS? (Score:3, Interesting)

    by teamhasnoi ( 554944 ) <teamhasnoi AT yahoo DOT com> on Wednesday December 04, 2002 @05:43PM (#4813760) Journal
    It's free (as in something), the install is easy, easy, easy.

    The speed of their computer is not too important, Beos runs great on a P200.

    There is a pile of software on BeBits (see my present sig), and it is easy to install.

    It has a UNIX-esqe command line with many similar commands.

    The Personal edition can be installed as a file on Windows and requires just 500 some megs.

    Lots of hints and info on the BeOS Tip Server.

    The GUI is easy and fast, and there is lots of new driver support.

    It will have an OS version rather soon, with options of binary compatabilliy (openBeos) or intergrated with a linux kernal (Blue Eyed OS).

    Just some stream of consciousness ideas here.

  • by pete-classic ( 75983 ) <hutnick@gmail.com> on Wednesday December 04, 2002 @05:43PM (#4813761) Homepage Journal
    Consider releasing your course materials under the FDL.

    (So I can snarf them!)

    -Peter
  • That sidesteps the issues both of "need to install first?" and "giving out debian cds with no questions asked." Knoppix *can* be used to install a permanent, hd-based system, but it doesn't need to be.

    Also, it comes with a mess of good apps to start with (various desktop environments, too), so you can demonstrate a wide range of possible uses.

    There are (is at least one, anyhow) similarly bootable BSD system, and that brings me to one more reason to suggest Knoppix here -- you don't have to wipe out any *existing* OS installations to use it.

    timothy
  • This sounds like a great thing. Too many schools are only teaching Windows as if it's the only operating system in the world, and that's simply not true. These kids deserve to see full-strength Linux, particularly if this is being offered as a sign-up class where everybody in the room wanted to hear about non-MS computers. You certainly should show them how to install Linux, and especially in a dual boot situation, so that they can take the Linux CDs and (after getting the OK from their parents) dual-booting the family PC, or better yet, direct them to the local PC parts vendor to show them how cheap a PC is capable of running Linux. I think most of what the kids want to do will be GUI-based, so spend most of your time on that. But, they do need to understand the "nuts and bolts" under that GUI, so spend at least an hour or more showing them around the text console so that they can figure out how to get around when they just don't have the GUI. The one thing I'd advise you against doing, however, is sounding too much like a pro-Linux preacher. Yeah, Linux is the topic on the label in your class, so you're not going to show them the equal Windows software, but do adknowledge that Windows exists, and point out the strengths and weeknesses of both so they can make an informed decision between the two... "Linux is better because Open Source is the only way to go!" is not a convincing argument to a boss. "This can do everything we need to do, and costs much less." is. The best tech professionals are the ones who can run everything, and figure out what tool to use when...
    • This sounds like a great thing. Too many schools are only teaching Windows as if it's the only operating system in the world, and that's simply not true.

      That's how it was when I was in elemtary school, except that it was those small Apple's. I still ended up running Linux by Junior High, and then eventually Windows (once Win95 came out).
  • That walks them through OS installation, complete with screenshots and the like. OS install demo's would suck up too much of your time.

    But they are too important to just ignore all together.
  • Take a cue... (Score:2, Informative)

    by aeakett ( 561176 )
    from "Running Linux" from O'Rielly. This book covers everything from histroy, installing, management, and tools in a logical, and easy to follow order. It's coverage is focused on the command prompt, which is probably best since that's where most experienced users find they can get the most work done

    It was my introduction to Linux, an has served me well ever since as a reference.
  • First things First. (Score:3, Interesting)

    by Niles_Stonne ( 105949 ) on Wednesday December 04, 2002 @05:46PM (#4813803) Homepage
    First make sure that they are comfortable users, then worry about the Power User status.

    The age group you are speaking of tends to be low on the wisdom scale, so I think that it may be a VERY good idea that you get the parent's permission to give them the CD, or even better, introduce them to Linux via something like Gentoo linux [gentoo.org], where you simply need to boot off the CD and the Hard Drive isn't touched at all.

    Using something like Gentoo eliminates the "Do they need to know how to install" question. I would include a few page document of "Linux options" with information on where to get different flavors, as well as cautions and howtos on installing them.

    I think that understanding of the GUI would be more valuable initially.

    And most importantly, teach them where to find information. Don't just say "do this, then do this". Say something like "There is a HOWTO here, read it and I'll help you if you get stuck".

    Teach them what they need to know in order to teach others to be comfortable using(not administering) an alternative OS

  • CLI (Score:4, Interesting)

    by SuperQ ( 431 ) on Wednesday December 04, 2002 @05:47PM (#4813810) Homepage
    Start with the CLI, back when I started work on appleII and dos machines, CLI was all there was.. and it was a good thing, because I learned early on, that you don't ask "what am I supposed to do", but rather "what can I do".

    Viewing the CLI, and computers in general, as an open book with nothing limiting what you can do with them is a key to making people use computers properly.
    • Start with the CLI, back when I started work on appleII and dos machines, CLI was all there was.. and it was a good thing, because I learned early on, that you don't ask "what am I supposed to do", but rather "what can I do".

      What I learned from starting on a CLI was that if you type everything correctly, nothing happens. You only get feedback if you do something wrong. This was not only excellent preparation for a career in computers but also for dealing with women...
  • by gregor_b_dramkin ( 137110 ) on Wednesday December 04, 2002 @05:47PM (#4813817) Homepage
    Stick with what you know. If you've never used anything besides Debian, don't teach the class using RedHat. The slight variations might make you seem uneasy. Remember, they can smell fear :)

    Don't bog yourself down in installation. A coworker took a Linux class where they did nothing but install for the first two days! If at all possible, have the computers pre-installed before day 1. If some of the kids have prior knowledge, they could assist before the week starts.

    As far as which features to learn, ask yourself, "what excites me about *nix". Steer the course towards the answer. You will have to start with the basics no matter what. If you tailor the basics toward a goal, particularly one you enjoy, you're much more likely to inspire somebody.

  • When i did a course in the local college, i was introduced to various "alternative"operating systems. These werent your Free OSes like nowadays, but stuff like UNIX, MacOS etc. It enlightened me a whole lot, as up until then i had only used Windows at school. Anyways, on with my answer :)

    Ok, glad your covering Linux, a couple of standard distributions should do it like redhat (covers RPMs), gentoo (Source, also for the portage system, nice one to draw over to the BSD side), Debian (apt, and a different config layout etc). Next up is your BSDs, id say go mainly for FreeBSD, as this is your all rounder, then OpenBSD to show off the security benifits etc. NetBSD isnt really worth looking at as the other two cover it on x86 hardware. With the BSDs, show off the ports system, stuff like that.

    Another thing to do is to show the kids the various editors, stressing that each to their own. I know a lot of people that would have killed to have someone sit by then the first time they used vi or emacs.

    Id concentrate mainly on the command line, as anyone, especially kids, can pick up a gui easily, but when things break its the command line you turn too. Alsoo it wqould be a nice point to make out that some distros are more command line driven and some are gui driven, making some better for servers and others for desktops. Show em around a basic system, where the config files are, how the file system works etc.

    As for giving away cds, do up a selection. CDs are cheap these days, so spread em around. See if you can get permission off Theo to distribute copied Openbsd cds, as these are copyrighted (as this is educational he may let you, hes nice like that). Hand out a covering letter with each cd pack, which tells the kids to get parents permission before using them etc etc. Also send letters home to the parents detailing that you are giving away free software, that its not pirated or stolen in any way. This will clear up a lot of problems, and also may get the parents interested.

    Lastly, video tape a few sessions, put it on line, show other kids :)
  • A week is a long time. Then again, there is a lot of information out there. I'm not sure how well a class can be tailored to fit an age range of 8-16 and still be interesting to everyone, but I think focusing on the spirit and drive behind free software. Focus on the volunteer and communitarian aspects, and how/why it is possible to actually create useful things instead of the whole chaotic thing not working. Then again, the 'kids' might not have forgotten how cooperating can be advantageous yet. There are so many things one can do, it should be planned out to make sure the class doesn't lose focus and/or go off track. Examples are good, though. Maybe one class can be GIMP? Eh... maybe not.

    As for giving things free, how about Knoppix? www.knopper.net and find a good mirror. Many LUGs have them mirrored, too.

    I'm sure there are lots of hints and tips I could give, but they all seem like common sense. I guess, just don't lose your mind while drafting the plans, and try to keep it interesting while also making them learn something.

  • Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?
    Take them through the installation of the OS. Take a long time with it, because there are a lot of important topics they need to grasp. And there are, of course, tons of terms they aren't likely to know ("interface," "device," "terminal," "shell") that will come up. Giving them a light introduction to networking and things like that will also help you out later on.
    What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)
    For a week-long course, RedHat and no BSD at all. I loathe RedHat with all my heart, but it's what everyone and their mothers use, so it'll be the most useful for them. Moreover, 90% of all Linux distros are based on RH in one form or another, which means they can translate at least some of their RH-specific skills to other distros.

    The BSDs are all really wonderful, but in a week you aren't going to be able to teach these kids enough about Unix to keep them from hating it. And since your goal is to bring them out of this with a positive impression toward free software and operating systems...

    Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?
    You shouldn't have to teach them anything significant about the GUI at all, if they've ever used a Windows machine before. Both KDE and GNOME are Windows clones, occasionally with a few extra features thrown in. In fact, if you want to teach them Unix, don't use those desktops at all: install FluxBox or AfterStep or something similar to give them a real taste of what Unix GUIs are like.

    But the command line should occupy the majority of your time, I think. It's both the most important skill and the most difficult to teach. But you should probably stay away from the more complex tools like sed and awk and keep it to cp/rm/mv/find/xargs and friends. (find/xargs is really illustrative of the powerful things you can do in Unix, and it might inspire them to learn about sed and all the rest on their own.)

    Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'
    Give away the CDs. You're only responsible for the kids while they're in the classroom. If they get home and fsck up dad's computer, that's dad's fault.

    The primary thing here is that you want to give these kids a push in the right direction. Give them an appreciation for Unix, and the tools to take their appreciation to the next level. If they have Debian CDs and a basic familiarity, maybe they want to install it on their home computers to learn more. That's exactly the sort of response you want, right? And if the kids' parents are smart, they'll encourage this sort of learning-on-your-own too. I know my parents did, even though it meant my mother went two weeks where she couldn't use her computer because I'd put Solaris on it.

  • Suggestions (Score:4, Informative)

    by bagojunk ( 608006 ) on Wednesday December 04, 2002 @05:50PM (#4813855)
    As a (fellow) O/S-Networking-Hardware instructor, lend me your ear: 1. I have heard (and felt) the Mandrake makes both installations and runtime easy, other than that...there is too much similarity between the distros to really have an impact 2. Inform your students that there are many things that can be done at the CLI as well as the GUI-- some things require the CLI or the GUI...research a dozen or so and walk them through it-- be careful what you choose as you want to let them see more than a few basic functions of an operating system. If you choose wisely, it may serve as a stepping stone for their future exploration/education. (I.T> stuff is always an exploration) 3.Just make sure the ramifications of installing an o/s are discussed-- distribute on! 4.Make sure you show them all of the windoze interoperability tools (wine, etc.) so that when they DO load the o/s on their own systems, they do not lose interest as soon as some of my students do (a few minutes or so) and can still chat with their friends, play games, etc. 5. Inform them of the MINIMUM requirements for their o/s so that if they do not have a dedicated machine, they know that a pentium2 or amd k-6 will run most versions of lin** just fine (and nowadays can be put together for less than $150!!)...perhaps you should send them over to me for a hardware lesson!! The children are the future....of open source as well as anything else!! braunr@pbcc.edu
  • by Alethes ( 533985 ) on Wednesday December 04, 2002 @05:54PM (#4813905)
    What is important to kids in an OS?

    I think if you can answer that one question, you'll know whether or not you need to turn these kids in to "power users" that are CLI wizards or just introduce them to KDE.

    I don't want to sound cynical, but it seems to me that most kids would mostly be concerned about the quality of their gaming experience more than uptime and intellectual property discussions, and in this case, Linux and *BSD may not provide a satisfactory experience. I want to be wrong about this, so feel free to correct my possible misconceptions.

    What do kids value in an OS? Cynics want to know.
  • Haha. (Score:5, Informative)

    by OrangeHairMan ( 560161 ) on Wednesday December 04, 2002 @05:56PM (#4813929)
    I was one of those kids who went to a computer camp, got interested in Linux, and started to read Slashdot. Here are the tips I can provide about my experience:

    1. Personally, I already had a great interest in computers. Granted, if the kids are going to a computer camp, they already will, but I was *really* interested. I skipped BASIC and went to C++. (Mind you, this was when I was 10.) See topic 4.

    2. The teachers love what they are teaching. If you tell a Microsoft cert to teach about Linux, nothing will happen. Get some hardcore Linux gurus who love kids (hah), and stuff will truly happen.

    3. Give them as much as they want, and what they want. :) If they want to learn about KDE or the command line, teach them that. They will learn much quicker, and be much happier (angry kids are not fun)

    4. This kinda coinsides with 3, but... If they want to go ahead and be very advanced, let them. If you are covering ``ls'' and they want to learn sed/awk, teach them that and let them learn. Again, they'll learn much quicker.

    Well, a lot of what I said has to do with teaching in general. But still, being a good teacher is key.

    To answer some of your questions, hand out CDs to the parents, so they know what will go on. Bootable CDs (like DemoLinux) preferibly. Don't teach them how to install until they love the OS. And teach them the command line or Gnome, which ever one they want. Teach them an easy Linux, like Mandrake or Redhat (not Debian, even though it's my distro of choice), although mention *BSD and pros and cons.

    Hope this helps!
    Orange
    • Get some hardcore Linux gurus who love kids

      That shouldn't be a problem...

      [cue "Linux users are chlid molesters" joke here]
  • 8-16? (Score:4, Insightful)

    by xchino ( 591175 ) on Wednesday December 04, 2002 @05:56PM (#4813943)
    That's a pretty wide range of ages to cater for. An 8 year old would probably get bored with the shell pretty quickly, and opt to play a few games of xbill (Free games, a great way to learn about the benefits of OpenSource), whereas a 16 year old would probably be more interested in nmap and gcc (You'd better not produce a legion of script kiddies).

    And as far as the one who are on slashdot, the best directions you could give them is "Quit trolling" :)
  • I remember how much I could cram into my head before I had things like bills, work, and life filling up the gaps. I'd say first get them used to the GUI, since presumably most of these aspiring nerds have a windows machine at home. It's likely they'll quickly get a grasp of how it works, but get them used to how similar the desktop is to what they already know; then highlight the subtle differences like wharfing, the menu that pops up when you click the middle button, etc. Then right after, get them to open up a terminal window, and then get them started on the good geek stuff. :)

    There's a plethora of 'cheat sheets' that have all the common shell commands in them, so it would probably be a good thing to hand out photocopies of those while they're fiddling around, just make sure you let them know the devastating power of -R. :) It would probably be a good thing to have alias rm to rm -i or -noclobber depending on what you end up using.

    Debian would probably just as good a starting distro as anything else, but let's not start that war here. Make sure if you give those CD's out to put a nice big disclaimer on the label or case warning them not to wipe out Mom and Dad's taxes. Then again there's whatever distribution it is that installs on a windows partition, less of a chance of destroying the home PC.

    Of course make sure they get a good dose of how to do everything they already do with a *NIX box. Make sure you have OpenOffice or StarOffice on there, and whatever other browser on there, if you're really brave, put your favorite IM clone on there, but don't expect them to pay any attention to you afterwards. :) Then once they get to see all this cool software that they're using does what they want, mention that it was free and slip them some Open Source propaganda. :)

    Remember to keep it interesting for them, show them where the games are if need be, after all when we were their age, who didn't check to make sure Xbill functioned properly after a new install? Speaking of installs, I'm sure plenty of these youngsters have already nuked the family computer at least once, and Linux installs have come a long long way in the past few years, they'll figure it out.
  • A few ideas... (Score:2, Interesting)

    by The Bungi ( 221687 )
    1. Don't politicize your teaching. The last thing the world needs are more brain-blocked hysterical zealots.
    2. Teach them what is good and what is bad about both sides of the fence (Linux/Microsoft/Everyone Else). Don't polarize things and say "MyOS is better than YourOS... because"
    3. Don't give them crutches but don't overwhelm them. Show them how to work the damn thing off of a blinking cursor. If you don't have time to go into X and GUI stuff in general, don't worry. If everyone started with a command line the world would be a better place (and support reps would have more hair). At the same time, don't try to go into how bootstrapping works - just stimulate their appetite. If they're good for it, they'll take the next step by themselves.
    4. Teach them what is good about open source and why it exists and what it's all about. Don't let them grow up to be confused thinking that "free" means "I should get everything for free" instead of "freedom"
    5. Don't mention RMS.
    6. ???
    7. Profit!!!
    (ok, the last two were a joke. Just the last two)
  • I think at least one full day should be used to teach what can be done in a good shell (such as bash, etc). There is lots of power there that people who use Windows will never learn. Examples:
    • Don't have to navigate through hundreds of menu's.
    • Can pipe simple commands together and get something powerful.
    • Very low bandwidth.
    That's just a few. And throw in the 'find' command if you need to both impress and confuse them :-).
  • Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?

    I would think they should already know how to install the OS. I think an intro to linux class and a power user class would have to be two separate things.

    What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)

    I think you answered your own question there. If you only are familiar with Debian, and you are teaching the class, you'd better stick with Debian.

    Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?

    SHELL!!!

    Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'

    Hopefully, after your first class they will know not to do that. Hand out the disks would be my vote.

  • by Strepsil ( 75641 ) <mike@bremensaki.com> on Wednesday December 04, 2002 @06:02PM (#4813996) Homepage
    Is this course supposed to be about "Alternative Operating Systems" or "Free Software Evangelism"?

    I'm not suggesting you ignore Free Software at all, but give a little time at least to the non-free alternatives. OS/2, or whatever it's called now, would be a good example of something technically well-designed, but which failed in the marketpalce. Pre-OS X MacOS has a very long and interesting history. There are buckets of sites out there that'll give you enough material for a few hours on each one.

    It might also be worth spending a little time on the differences between the various Windows incarnations, at least from 3.1 to 95 to NT.

    You've got a great concept here - don't go turning it into a sermon. The merits of the Free stuff will be obvious, so there's no need to avoid mentioning the competition.
  • Hands on (Score:3, Informative)

    by geogeek6_7 ( 566395 ) on Wednesday December 04, 2002 @06:03PM (#4814002) Homepage
    Being 16, a Linux user for [almost] 3 years, (and someone who earns $20/hr setting up Linux servers for local businesses), and having attended a computer camp, I can whole heartedly recommend that your students individually install Linux on a computer.

    It can be tough, though, as some will bring computers that they can't touch. When I went to computer camp, there were a bunch of rental machines. Had they decided to teach us to install Linux (They didnt, I was the only Linux user... It was extrememly amusing to watch the VB trojans created by our loving counselers fail completely on my box, however... ), I think it would have been smart to image a rental box, store the image someplace, and let the campers go hog wild installing *ix.

    You can study, and you can watch someone do it on thier screen, but its nothing like doing it yourself.

    When I first started with Linux, I had by cobbled together box that I built for $40, which included 3 hard drives and an S3 Vision864 graphics card. Because I had a free CD of Turbolinux that I got when installing a router at my church, I installed Turbolinux 6.0. XFree86 3.3.6, kernel 2.2.14, all kinds of fun stuff. I tried to *resize* my Windows partition, which produced negative consequences for about 30 mp3s, otherwise failing to have any effect. And that graphics card. If you though S3 cards were bad in windows, you should try to get one working in XFree3.3.6. It took me hours of xf86config tweaking before I had two readable resolutions: 640x480 and 1024x768. Didn't touch XF86Config ever again.

    All of that to say, it was a major pain in the butt. No kudzu holding my hand, I had to learn everything from scratch. It was a big deal, but now I configure XFree86 with ease, and can partition a harddrive with the best of them (well, for what its worth. It's not really all that hard :P).

    With Linux, its a learn by doing proposition. I urge you to offer your students this opportunity.

    -geogeek

    ~Geogeek now runs an Athlon 1.4GHz box with a nice, big, 80GB hard drive, and a Radeon 8500. Funded in part by Linux skills~
  • I use Debian unstable currently, but I don't show it off. KDE is a beat slower than the blazing speeds I see in the Windows GUI. (Of course, KDE is Free, but some people don't get that.) This is because Debian has not yet recompiled its distribution with GCC 3.2.

    GCC 3.2 offers a huge speed increase for C++ code. KDE, built entirely in C++, suffers from GCC 2.x's late symbol resolution slowness. To impress the power of Free software on the kids, make sure you use a distribution that has compiled KDE with a modern compiler. You want to make a good first impression, and that means killer speed and killer looks. For the same reasons, if you're going to be doing anything multimedia (even just playing music from XMMS), use recent ALSA drivers that support multiplexing (i.e., SB Live!), and be sure to patch the kernel with one of the real-time scheduling patches. Again, skipping music is not a turn-on.

    From there on out, teach them the power of multi-desktops, keyboard shortcuts, and shell scripting. Start them on the platform with a positive view.
  • Give every kid a copy of the KNOPPIX CD. (http://www.knopper.net/knoppix/index-en.html) They can take it home and run Open Source stuff on the home PC with little risk of messing up Mom's recipes or Dad's tax forms. There is no installation hassle and it has a very good selection of OS stuff. (The people with Mac's at home just need to be told about Fink). --jim
  • 1. Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?

    I learned how to use Linux on a coworker's computer at an internship I had. I didn't learn how to install Linux until I was comfortable using it at work, and I found the installation to be pretty simple.

    You'll run into a bit of a chicken-and-egg problem here if you think about it too hard. In order to learn how to install the OS they will have to deal with a bunch of things all at once: partitioning, filesystems, mountpoints, and thousands of names of programs that sound cool. Installation is pretty easy if you have a handle on these concepts, but if you don't you'll find it very exasperating--little documentation and a lot at stake. But if you make then a power user first, then they get hands-on experience with the OS, they have a reason to want to install it, and they'll be more capable at installing the OS itself on their own when it comes time to do that.

    2. What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)

    If you focus on Unix, and what the Unix philosophy is, then it won't matter much. Being able to cast around sed & awk, make command lines with for loops, and configure networking manually is a lot better than knowing how to use a graphical system configuration/installation utility like linuxconf or dselect. Plus, focusing on the tools is more likely to carry over to other operating systems. Teach them regular expressions. Teach them loops and conditionals. Don't teach them how to run RPM just because they might have to someday; it's rote, they won't remember it when they have to use it, and they'll be falling asleep as you explain it.

    3. Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?

    No question: the shell. Even if you use the GUI all day (I run KDE!), lots of low-level things are written in bash/ksh/csh. If you're going to be able to sit down at any Unix computer and use it, you're going to have to be competant with at least sh/bash. The first thing I do when I sit down is fire up a console. They should be doing that automatically by the end of your class: the console is where the work is done.

    There's a lot of variety with GUIs, and it can be great fun to mess around with window managers and so forth. Give them the ability to change these things (teach them how to edit their .xinitrc), and point them to the Window Managers for X [plig.org] webpage, let them tinker with it. But definitely teach the shell, because that's where the real power is.

    4. Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.

    Make the CDs available, but do talk to the parents. Make sure the parents realize that if the kid is going to do anything with "partitioning" they should go out and buy a copy of Partition Magic so they don't permanently screw everything up. That software was the best $50 I spent in high school, when I was a big OS installing weirdo. My parents never lost any data. :)

    Clearly, some of the kids are going to want to install it at home, and it's not necessary that their parents understand the whole idea behind partitioning (though it would be nice). It's also not necessary to scare the parents into preventing the kid from doing what they want to do out of fear. I geniunely believe PM is the right answer to this problem: it's got undo until the last possible moment, and it's very user-friendly, which helps a lot when you're just getting started. Once that's taken care of there is very little that can be screwed up (most installers either ignore other drives or assume that if it's type "vfat" it shouldn't be formatted).

    5. Are there any other key issue I need to think about?

    Yes, definitely try and think of a curriculum. Kids who are interested can absorb tons of material, but you've got to keep it interesting. The best way to do that is to not focus on the rote doing of things, but to talk about the possibilities of things. Don't just say, here's regular expressions, instead say with regular expressions you can strip out everything in a file you don't want, get a list of all the email addresses on this webpage, etc. Keep them interested in the possibilities that you're opening up for them by teaching them the software.

    Be aware of your philosophy and how it affects your decisions. If you believe in focus-follows-mouse, set up all the machines that way. Let them change it but make them try it out first: expose them to as many possibilities as possible. Have vi and emacs on the machines, and let them pick. You've probably got a whole set of quasi-religious beliefs about Linux. This is your chance to instill those beliefs in other people, but make sure that you point out your biases. Most of the kids who take your class are going to take Debian home to install, which is fine as long as you don't focus on the "Debianness of it all."

    Show them the Linux that newbies don't usually get to see, because of the religious wars that go on. Regular expressions are another great example, because vi and emacs both support them. You may not be able to extend vi in lisp (and you might with vim), so don't focus on that. Keep it open.

    Here's my advice on the actual software to talk about:

    1. Shell: bash
    2. Distribution: Debian or Redhat
    3. Window Manager: Blackbox or WindowMaker
    4. Browser: Galeon


    I suggest bash because of it's ubiquity. Everybody uses it and knows it, and it's very expressive in its weird little way. Debian or Redhat because they are also everywhere, but don't focus on rpm or apt. I suggest Blackbox or WindowMaker because they don't have a bazillion settings that you can spend all day on. If they fire up GNOME or KDE they'll be so absorbed in the coolness of it all that they'll spend the whole day configuring it and not listening to you. Galeon is simpler than Mozilla but uses the same rendering engine, and makes webpages look pretty decent. If you have them firing up Netscape 4.7 or Mozilla, they'll either be disappointed or distracted (my guess). Past these options I don't think the software matters much if they have choice.

    Good luck with your project! It sounds like a step in the right direction to me.

    --
    Daniel
  • by zapfie ( 560589 )
    Why is Free Software a boost in the "right direction"? Shouldn't you teach them about both and allow them to make up their own minds?
  • by Dthoma ( 593797 ) on Wednesday December 04, 2002 @06:13PM (#4814096) Journal
    1. Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?

    Explain what the installation will do, step by step (disk partitioning and the like). I'd recommend showing them around the installation process, but coming up with something for them to do for the 10/20/30 minutes it takes to install.

    2. What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)

    I know next to nothing about *BSD as well, but I'd recommend showing them at least two different Linux distros (RH and SuSE, perhaps?).

    3. Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?

    I know a lot of people will disagree here, but I would actually show them the shell first. Bash can do a lot of things here, and show them how to use the basic commands (rm, cd, cat, ls, w, id, top, grep, etc.) and then show them some of the cool stuff like Perl, tr, and awk. Then tell them a bit about X and desktop environments; then let them play with the pretty widgets like xmms.

    4. Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'

    Knoppix. And talk to the parents as well, yeah.

    5. Are there any other key issue I need to think about?

    Tell them what not to do, and (most importantly) say WHY not to do it. If you just say "never never do 'rm -rf /'" then you can probably guess what's going to happen. On the other hand, if you say "if you do 'rm -rf /', you'll delete all of your important files (if not the entire thing) and then you'll be up the creek." Though they should be able to figure this out by themselves once you tell them about how the filesystem works and rm's different command flags.

  • by swb ( 14022 ) on Wednesday December 04, 2002 @06:17PM (#4814123)
    This means there's a lot of potential to teach them about Linux, *BSD, and open-source.

    I read this statement and saw a similar version right next to it: "There's a lot of potential to teach them about economics, history and socialism."

    Two of those things are disciplines, one's a specific political theory. Two of your topics are operating systems, one's an often controversial intellectual property concept. What are you trying to teach them -- about Linux or a BSD, or to proselytize about Open Source?

    Sure, how Linux or BSDs are developed ("Who makes Linux Mr. Smith?") is likely to be addressed, but a simple explanation that it has many developers collaborating and is distributed freely would be an adequate explanation. Especially considering you're dealing with kids -- even adults with a good grasp of what intellectual property is don't always grasp the concept of open source well.

    I wish you well, but don't lose focus as to what you're doing. If you want to preach open source, fine, but don't call it an operating system class, call it an appeal for open source.
  • if my mom saw me come home with a shirt with the bsd daemon on it she would have flipped out that i had sold my soul to the devil regardless of how cute his sneakers were
  • Is that like "alternative lifestyles"?
  • Recomendation (Score:2, Insightful)

    by sonpreach ( 630571 )
    I'm a junior high student using linux on an iMac, here are my recomendations:

    >1. Do they need to know how to install the OS >first, or should I let them look that up on >their own while I make them power-users?
    Teach them how to install the OS. That was what I had problems with learning Linux, though distros have gotten a little easier to install since then.

    >2. What distributions of Linux and BSD should >they be first introduced to? (I'm only familiar >with Debian, and I know virtually nil about *BSD.)
    I would say Red Hat and FreeBSD, and possibly Darwin if they use a Mac. Red Hat is easiest to get used to from Windows (especially v.8). I use the version of Red Hat for PPC, Yellow Dog Linux. FreeBSD is supposed to be easiest to use of the BSDs, though the only BSD I've used is Darwin in OS X.

    >3. Initially, do they need to be more adept at >the GUI, or do they first need to know how to use >the shell?
    Teach them the basics of the GUI and major apps (eg. OpenOffice, Mozilla, Evolution) the first two days, then mainly concentrate on command line.

    >4. Should I give away Debian CDs >no-questions-asked, or should I talk with the >almighty Parents so little Daniel doesn't install >Linux over Dad's 'work computer.'
    I think there may be a distro of Linux that runs in Windows off a disc image, though I do not remember the name... If it works well enough give them a CD of it.

    >5. Are there any other key issue I need to think >about?"
    Show them gaim or another AIM client, and mention that they should switch from AOL. Almost every one at school I know uses AOL, except for a few people that have broadband
  • That's a hard choice.

    I would think that at that age (and any age) you might get faster results by teaching them GUI. Since you have the opportunity to shape their usage, please!! make sure they know the power of the command line and its advantages over GUI.

    Maybe show them some scripts and how powerful they can be over the pretty GUI. Even if they start using the GUI, as long as they know the command line is there and it's extremely productive, I think their curiousity will take over and accept cmdline sooner or later.
    • I once did a semester-long, twice-a-week computer lab in BASIC programming for fourth and fifth graders.

      In a programming language, keyboarding skills as far as spelling and punctuation are critical.

      I stressed accuracy over speed, and the kids got the point right away.

      My point?

      You'd be surprised how well kids would take to a CLI.

      They get gooey enough at home with Window$...

      t_t_b

  • by paradesign ( 561561 ) on Wednesday December 04, 2002 @06:49PM (#4814404) Homepage
    i would want to see a windows box running all of teh software i use on a daily basis. winamp, office, ie, photoshop, email.

    then i would want to see a "free" box next to it doing all of the same things. xmms, openoffice, mozilla, gimp, evolution.

    then go on to show them how it is different thatn windows in terms of cost, freedom, opensource, configurability. then show them all of teh aditional software. show tehm sourceforge and fresh meat.

    the command line is scary for non-geeks, i bet very few OSX users even know they have it, let alone use it, (and im not refering to the /. crowd OSX users) show them it only to enhance, not confuse, their experience.

    in short, show them linux as an alternative, and how it can seamlessly replace their current tools, and extend their computiong functionality.

  • 8 - 16 year olds (Score:4, Insightful)

    by Eric Damron ( 553630 ) on Wednesday December 04, 2002 @07:15PM (#4814601)
    Make sure that they understand that Linux can be a great gamming PC. Be sure that you demo Linux on a decent PC with an accelerated graphic card, the correct drivers for it and then demo Quake 3.

    That should get their attention.
  • by QuietRiot ( 16908 ) <cyrus&80d,org> on Wednesday December 04, 2002 @07:32PM (#4814757) Homepage Journal
    Do they need to know how to install the OS first, or should I let them look that up on their own while I make them power-users?

    Do the install demo the last day. Show them all the wonderful things non-Micr0s0ft platforms can achieve first, then show them how to harness all that power on their own system at home by demonstrating how to dual boot a box. NOT! Be sure to include a big disclamer - write letters to parents to back up their data, etc. Or give out demo CD's like the Knoppix distro and maybe figure out a way for people to store their data somehow. Messing with people's parents' hard drives would not be advised for a bunch of high schoolers. Fried hard drives are not the right way to send a good message about Linux and other alternatives to parents, etc.

    What distributions of Linux and BSD should they be first introduced to? (I'm only familiar with Debian, and I know virtually nil about *BSD.)
    Use debian for the majority of your demos. Debian is used as a base for a lot of other distros out there, so this would be a terrific learning platform. apt-get is extremely popular and easy to use and would be a great way to build confidence. "Gee! That's even easier than windows!" It is, again, used in a number of debian-based distros and this is a plus. Messing with RPM dependencies I would say would be less conducive to learning. It should be experienced, but you don't want to spend a lot of time with a headache like this. Let them figure it out when they get to a real RPM based system and they overload their harddrive with unnecessary packages. We needn't worry their little minds with this now.

    I would suggest, if you've got a bunch of spare computers for your use, installing a selection of operating systems. Maybe just have them around, for kids to explore on their own time if they seem interested. A selection of the common Linux distros would be good - Red Hat, Mandrake, etc. If you've got the money, do some installs of Xandros, Lindows or Lycoris. Show an install of Gentoo and demonstrate the portage build system. Put YellowDog or LinuxPPC on some older Mac machines that the school is sure to have laying around. Install something fun on a new G4. You're wide open here. If you've got the time, do installs of NetBSD, OpenBSD, and FreeBSD. Actually, I'd move FreeBSD [osnews.com] up the ladder a bit, even into the linux distros above. This one I think is going to become pretty important in the next few years. It's clean, stable and very security concious. It also runs linux binaries and, all in all, is a tremendous platform. The flexible workhorse.

    Linux and *BSD aren't the only alternative operating systems. Try doing an install of SkyOS [skyos.org], AtheOS [atheos.cx], or MinuetOS [menuetos.org]. Read about those here [osnews.com].
    There's also Syl-la-ble [sourceforge.net], QNX [qnx.com][review [osnews.com]], and, lest not forget, the Wonderful! the Amazing! MacOS X [apple.com]. Amiga, Minix, VMS, on and on. Find a local LUG with someone in it that likes these obscure operating systems. See if he (she?? --nahh...) will lend a hand. No. Not that hand.

    Initially, do they need to be more adept at the GUI, or do they first need to know how to use the shell?

    Show them the GUI. Copy some files around or perform some other common tasks using the GUI's helpful tools. Then show them how much faster and more efficiently they can do the same after clicking on gnome-terminal (or Kterm or whatever). Show them the virtual terminals that are availible if X isn't around. Show them that you can start up two instances of X, each with a different user, and switch between them [after you have one going, type "startx -- :1" in a virtual terminal as the user you want running the second instance, then Alt-Fx to find it. Switch back and forth). Then ask them if they can do that on dad's windows box. Give them a printed reference of some of the more common unix command and have them figure out how to perform a selection of tasks. Do the shuffle about pipes and redirection and all that and have them do some "homeworks," maybe working together. Then tell them to use the man pages for command xxxxx and yyyy, integrate the knowledge found there with the printed references you gave them, to complete another task. Do speed trials. Ask them to try the same task with only the GUI. Point made.

    Should I give away Debian CDs no-questions-asked, or should I talk with the almighty Parents so little Daniel doesn't install Linux over Dad's 'work computer.'

    Hand them a Knoppix disk. Let them find debian if they are feeling adventerous. Suggest to them if they think they know what they are doing, and can stand being grounded or whatever if they break mom's computer, to try an install of Mandrake - with the easy repartitioning and all built in so nicely. Easy to use from the get go, but quite fully functional linux distro as well. Easier still, and based on debian, would be Xandros. Apt-get to your hearts content, and can even resize NTFS partitions.

    Are there any other key issue I need to think about?

    "Am I wearing my pants?"

    Don't forget this one before you walk into your first day of class.

  • by mkiwi ( 585287 ) on Wednesday December 04, 2002 @08:18PM (#4815063)
    First of all, I'd like to say how much I love your idea for creating a cirriculum for budding geeks.

    Speaking from experience, it is extremely difficult, time-consuming, and frustrating to learn about *nix alone, and a mentor-like system would help kids greatly.

    Here are some of the things I wished I knew before I bought books at Barnes and Noble:

    What technologies Unix has, what they do, what they are used for, and why they should be used. Talk about languages like Perl, PHP, and whatever else to give the kids a roadmap. I had no roadmap, and I ended up buying an ASP book because I wanted to learn web programming. -_- I was young, naive, and unable to return the book in time to get a refund. It did burn brightly, though.

    Go through the compile process and explain dependencies and things like that. Before I got my first Unix machine, I had used classic mac os and I knew nothing of the 10000000000000000 extra libraries and such I had to install to get the gimp working. On that thought, talk about package managment systems- the where, why, and how.

    Talk about geek culture. Where did open source start? Larry Wall's Camel Book has a rather good chapter about perl culture, and much of it can be applied to more than one place. Mention slashdot, and tell them to read often ;)

    Talk terminals. Please! Get students familiar with the command line, insert a few *modifications* into a configure script to aquaint people with the compiler, linker *gasp*, and the shell environments. Teach kids what LDFLAGS, CPPFLAGS, etc. they can tweak to get code running on their machine. Also, cvs is really useful, so please teach kids how to use and navigate that! The first initial hump in cvs learning can be hard to get over, and I would definately have liked it if I could have had some direction.

    Literature. Teach kids how to buy computer books, how to read computer books, and how to amass a library of computer books. Personally, I cannot stand reading text from a computer screen as it hurts my eyes, so don't limit offerings to online documentation.

    After all this fundimental knowledge is gained, talk about how to compile a linux (or other) kernel, installing an operating system (i.e. not redhat; installations that use a simple text-based interface, as if some geek threw a linux distro together together that afternoon :)

    I attended java programming classes at my local community college, which were a big waste of time. The lesson is to teach kids how to have some self-direction, so that when they grow up they can be autonomous learners. I had to learn my lessons the hard ways, so I'm glad someone is making an effort to reach out and help students.

  • Intro. to GIMP (Score:3, Informative)

    by gouldtj ( 21635 ) on Wednesday December 04, 2002 @08:29PM (#4815129) Homepage Journal
    I would stay with fun things, and GIMP is probably one of those. I might be biased though, as I think GIMP is a really wonderful program. You are welcome to use my Photo Editing with GIMP [gould.cx] presentation. It is a good introduction, but it doesn't get into layers or anything like that. It does get you stared with GIMP though, and most people have a few digital photos.
  • C tutorial (Score:3, Informative)

    by chris_sawtell ( 10326 ) on Wednesday December 04, 2002 @09:12PM (#4815344) Journal
    You might find some of the students like The C tutorial [cam.ac.uk] I wrote a few years ago. The youngest students I know about were a 12 yo Israeli, and a 14yo Canadian.

    Other points:-

    • Knoppix to take home. Can't overwrite the parents' precious files!
    • Don't waste time installing. Just dd the file set to the students' disks beforehand.
    • Have the same distro on all student machines.
    • Be very familiar with the distro youself.
    • Introduce a scripting language.
      • Ruby [ruby-lang.org] for the older students. FOX or Tk windows available.
      • Squeak Smalltalk [squeakland.org] for the younger ones.
    • Be very visual. Kids need to see things quickly.
    • Games, and more Games. It's supposed to fun.
  • OSS Camp (Score:3, Interesting)

    by bytesmythe ( 58644 ) <bytesmythe&gmail,com> on Wednesday December 04, 2002 @09:35PM (#4815472)
    In regards to your curriculum, I would suggest informing them about different types of software, not just operating systems. The idea is not just that you want them to learn how to use linux and let that be the end. All you'll end up doing is teaching them how to use unix, which won't turn out to be immediately very useful unless they have a computer with a spare partition at home. The following ideas might be useful to you...

    1) Operating systems. Spend the first day letting them boot and play with linux. As others have suggested, use a CD-based distro like Knoppix or Gentoo. Show them the GUI AND the shell. Don't worry about shell programming; just go over the basic commands like ls, cat, grep, etc. Nothing too fancy. You've only got a week, so don't swamp them. If they've got the mind for it, all you'll have to do is provide the introduction at this point. Don't forget to provide a nice handout for the various commands. Include pipes and redirection.

    2) Go over using an editor. For god's sake, don't start the poor kids on vi. You want them to get something useful done, not spend all day trying to figure out why they can't exit. ;) Pico/nano or something like that for the shell, or a plain text editor like nedit in the GUI. This shouldn't be too long of an exercise, as they probably know how to use an editor already. The main idea is to expose them to a plain text editor in a shell environment.

    3) Explain the various categories of software like web servers, databases, programming languages, etc., and let them know there are completely free versions out there that are just as useful as versions for which people pay hundreds of thousands (sometimes millions!) of dollars.

    4) Let them tinker with making their own website. If you gather a large collection of free images and backgrounds (and GIMP so they can make their own), then give them a handout on basic HTML, they should pick it up pretty quickly. Kids who finish earlier can take a handout on PHP and learn to make pages dynamic w/ database access. This will allow them to see several different functional areas (the OS, programming, web server, database, and browser) all come together in a cohesive way.

    5) Possibly cover some basic programming. Perl or ruby would be a good start. Maybe Python, but I'm not a big fan of its forced indentation. I think it might be ok to talk about the difference between interpreted languages and compiled languages, but teaching C or C++ is probably a little much.

    You could probably spend a week on that stuff and instill in them an idea of the types of open source software available, how open source benefits people (especially point out that the class they are in wouldn't be possible without open source because of the cost!), and how they can use open source themselves at home. With any luck, you can start another generation of computer-philes who will understand why the Copyleft is a good thing, not a virus. ;)
  • by Arandir ( 19206 ) on Wednesday December 04, 2002 @10:26PM (#4815762) Homepage Journal
    Stick to the concepts. There's nothing worse then spending a week learning one particular operating system, then having to use a different one later on.

    Teach the concepts instead. For example, teach them about harddrive partitions, and not about a specific partitioning program. I don't care how much you know the Mandrake or Redhat partitioning GUIs in the installer, it won't do you any good when you're faced with fdisk. But if you know the concepts, you at least know the shape and pattern of what you need to do.

    And teach them how to use the available documentation. Man pages. Info pages. How to use lynx or another textmode browser for html files. They will never know everything there is no know about UNIX, but they *can* know how to find out anything they might not know.

    Finally, give each one in the class a different system. Use as many as you can scrounge up. FreeBSD, Mandrake, Debian, Slackware, OpenBSD, etc. Then when you teach about partitioning the harddrive (for example), they'll realize that there are a dozen different right ways to do it.

    As the old saw says, "If you learn Redhat you learn Redhat. If you learn Slackware you learn Linux." There is a kernel of truth in there. Someone who is exposed to just Redhat Linux isn't going to transition to a job working with Solaris as easily as someone who's been exposed to a couple of different distributions plus a BSD. You do NOT know what the tech world is going to be like in ten years, so don't make your students live in the past when they get there.

Those who can, do; those who can't, write. Those who can't write work for the Bell Labs Record.

Working...