PDA

View Full Version : teaching linux to 13-15-years-old kids. what to teach?



ahmad598
May 31st, 2011, 04:00 PM
Hi
I'm going to teach linux to some kids aged between 13-15 at a guidance school in Iran (Allame Helli 1, Tehran). they have learnt how to program using Microsoft QBASIC and I'm not allowed to learn them any new programming language (such as bash scripting or python). I want to introduce them to linux and FOSS world and motivate them through this philosophy, and mainly learn them how to do their day to day jobs using free softwares. I am thinking about these syllabuses:


brief history of GNU and linux
why do we prefer FOSS against any other model
linux distros & desktop environments (i will use ubuntu + classic gnome, because i think unity is still under development. any ideas?)
installing some of drivers such as graphic cards and dial-up modems, if they use any
surfing the web, listening to music & video files with proprietary codecs, using Libre Office + media libraries such as moovida
some familiarity with GIMP, Audacity, Inkscape and may be Blender
WINE, of course
simple commands in bash, a little introduction with VIM
installing new softwares from Ubuntu software center & apt-get
playing with CompizConfig
involving them with communities, getting help from them, giving back to them, and trying to teach them the real meaning of Ubuntu
some network tools, such as Tramission (or Vuze), FileZilla, wget, aria2c
maybe some scientific apps, I dont know which ones
some easter eggs, for more joy!

what is your opinion? any new ideas?
Thanx a lot ;-)

Linux_junkie
May 31st, 2011, 04:03 PM
I think internet security is a must for all children. How to stay safe whilst online.

krapp
May 31st, 2011, 04:08 PM
Thanks for doing this ahmad, great service, even if it's just your job.

Could you explain why using Ubuntu as an introduction to Linux as opposed to any other distro?

ahmad598
May 31st, 2011, 04:09 PM
I think internet security is a must for all children. How to stay safe whilst online.
What do you mean by internet security? do you mean iptables and so on, or about trusting websites and configuring privacy in web apps, or anonymousness?

ahmad598
May 31st, 2011, 04:13 PM
Thanks for doing this ahmad, great service, even if it's just your job.

Could you explain why using Ubuntu as an introduction to Linux as opposed to any other distro?
because it is simpler to some of the other distros, such as gentoo and even debian, it is more stable than fedora or fedora-based distros, and it is more linux (IMHO) than Mint or some other distros like that. i think if i succeed to teach them ubuntu, they have learnt how to use Mint, and I have showed them the way through the RPM-land, and most of them just dont need to be cluttered with some more complicated distros, just like myself.

tapi0n
May 31st, 2011, 04:15 PM
What do you mean by internet security? do you mean iptables and so on, or about trusting websites and configuring privacy in web apps, or anonymousness?

I think with children that age it's more productive and useful to talk to them about how to safeguard their identity and stuff like that. Like what to put on the internet and what to definitely not. Of course more in depth.

Nice project you're working on by the way, I salute you!

jhonan
May 31st, 2011, 04:15 PM
Differences between Linux, Windows, and OSX (both in terms of philosophy, business model, and technical)

I'm sure some of them will have been used to using Windows up to now, so it might be useful to frame it in this context.

ahmad598
May 31st, 2011, 04:17 PM
I think with children that age it's more productive and useful to talk to them about how to safeguard their identity and stuff like that. Like what to put on the internet and what to definitely not. Of course more in depth.

Nice project you're working on by the way, I salute you!
it's a great topic to talk about, i will consider it. thanx buddy ;-)

Dustin2128
May 31st, 2011, 04:19 PM
Emacs, of course ;).

lucazade
May 31st, 2011, 04:57 PM
Very nice project. I would add a couple of things:
* let the kids know "the cathedral and the bazaar" and/or "Revolution OS" movie. These are full of interesting points and probably the movies is less "boring" than other ways.
* purposely break a linux machine and ask them to figure out the issue and to find a way to fix it by doing researches. Learn by doing.
* Teach them how to search for stuff in internet.. this could appear banal instead in my experience people hardly find via google, wiki or other channel, the things they need.
* Let them grow curiosity.. knowing everthing is a file in linux and beeing able to search and grep inside files they could modify and fix almost everything.

el_koraco
May 31st, 2011, 05:09 PM
If you can find a computer with an ATI card, have them try to get the open source and the proprietary drivers working half-way decent :D

Legendary_Bibo
May 31st, 2011, 05:31 PM
Don't talk about FOSS, you'll end up preaching.

cracker89
May 31st, 2011, 05:31 PM
And an id at ubuntu forums!!! You know where they're doing their homework and tests :D :P

I respect you ahmad. Wish you all the luck. I'll recommend networking basics through the command line. Really opens up one's mind at a younger age.

cracker89
May 31st, 2011, 05:32 PM
Don't talk about FOSS, you'll end up preaching.

Or dont preach about FOSS. talking about it is fine and a must i think.

frankbooth
May 31st, 2011, 05:33 PM
Instead of teaching the kids the philosophy behind Linux and open source. Just mention it. If they are interested they'll read or watch documentaries later on.

What you should focus on:

Explain that there are alternatives to Windows.
Teach them how to use these alternatives.
Make them realize that Linux isn't hard, and everyone can use it.
Show them different desktop environments, make them realize they just looks different but works pretty much the same.
Introduce the terminal, there's no need to go deep (forget bash scripts etc.) They are kids.

Legendary_Bibo
May 31st, 2011, 05:41 PM
I'd say just stick to teaching them about the OS. Stick to the fun stuff mostly.

cracker89
May 31st, 2011, 05:44 PM
I'd say just stick to teaching them about the OS. Stick to the fun stuff mostly.

...for now...

pookiebear
May 31st, 2011, 08:01 PM
If there are 1 or 2 that already know the OS well, let them get started writing code with Java, C or php or similar depending on their interest.

Chronon
May 31st, 2011, 08:24 PM
why do we prefer FOSS against any other model

what is your opinion? any new ideas?
Thanx a lot ;-)

I think you should avoid this. Tell them about FOSS and its origins and let them make up their own minds regarding preference.

Bandit
May 31st, 2011, 08:34 PM
any new ideas?

Sure I got a few. Big thing is to start each day with something interesting, show them something that intrigues them and then dig into how to perform such things. Like Conky for example. Remember these are kids, they will want all the fun with none of the work. Well dont we all.. lol but dont jump into something to complex off the bat. Start with simple things, then build upon them.
You have alot of todo's listed on your first post. Honestly scrap half of them off, not that they are not needed, but I dont see you having time to cover all the information listed in one school year without running through each subject so fast that it will leave them with more questions then answers.

That said I applaud you for taking the time to teach Linux.

- Exo

ahmad598
May 31st, 2011, 11:09 PM
Very nice project. I would add a couple of things:
* let the kids know "the cathedral and the bazaar" and/or "Revolution OS" movie. These are full of interesting points and probably the movies is less "boring" than other ways.
* purposely break a linux machine and ask them to figure out the issue and to find a way to fix it by doing researches. Learn by doing.
* Teach them how to search for stuff in internet.. this could appear banal instead in my experience people hardly find via google, wiki or other channel, the things they need.
* Let them grow curiosity.. knowing everthing is a file in linux and beeing able to search and grep inside files they could modify and fix almost everything.
Revolution OS is great, maybe i give each of them a copy of that. searching is very important and i will try to have it through the communities syllabus. curiosity is the core of learning linux IMHO, and i will try to make it ;-)

Emacs, of course ;).
sorry, but just for the sake of Editors war, i am a VIM man! (in fact i don't know how to work with emacs, and i couldn't teach it to them!) but maybe i remove even the VIM and just come up with the simple gedit or Kate.

Instead of teaching the kids the philosophy behind Linux and open source. Just mention it. If they are interested they'll read or watch documentaries later on.

What you should focus on:

Explain that there are alternatives to Windows.
Teach them how to use these alternatives.
Make them realize that Linux isn't hard, and everyone can use it.
Show them different desktop environments, make them realize they just looks different but works pretty much the same.
Introduce the terminal, there's no need to go deep (forget bash scripts etc.) They are kids.

showing them that linux isn't hard is really important i think, and i agree with the rest of your opinions except that one about the philosophy. i think this is one of the most important jobs of mine. without it, linux just loses much of it's joy.

If there are 1 or 2 that already know the OS well, let them get started writing code with Java, C or php or similar depending on their interest.
i don't think that there are any, and as i have mentioned i am not allowed to learn them any new language, and i dont know any tool to program in QBASIC language in linux.

I think you should avoid this. Tell them about FOSS and its origins and let them make up their own minds regarding preference.
yeah, that's right. by using "we", i meant we the FOSS pros.

Sure I got a few. Big thing is to start each day with something interesting, show them something that intrigues them and then dig into how to perform such things. Like Conky for example. Remember these are kids, they will want all the fun with none of the work. Well dont we all.. lol but dont jump into something to complex off the bat. Start with simple things, then build upon them.
You have alot of todo's listed on your first post. Honestly scrap half of them off, not that they are not needed, but I dont see you having time to cover all the information listed in one school year without running through each subject so fast that it will leave them with more questions then answers.

That said I applaud you for taking the time to teach Linux.

- Exo
i have just 10-12 session with each of them about 1:30 hours. do you think it is a few for our job? greedy to know your opinions about this one.

Old_Grey_Wolf
June 1st, 2011, 01:10 AM
If you are saying you will have about 16 hours total, then I would approach your list as follows:


brief history of GNU and linux
Keep this very brief. They will not care about the history of GNU or Linux.

why do we prefer FOSS against any other model

involving them with communities, getting help from them, giving back to them, and trying to teach them the real meaning of Ubuntu
Just explain how OSS is different from proprietary projects. Most of the people I know using OSS do not give back to the community. The Ubuntu reciprocity idea isn't mandatory.

linux distros & desktop environments (i will use ubuntu + classic gnome, because i think unity is still under development. any ideas?)
Just demonstrate Gnome, KDE, XFCE, and LXDE on Ubuntu. Then explain that for the purpose of your class they will be using Gnome 2.

installing some of drivers such as graphic cards and dial-up modems, if they use any
I have a question at this point. Are they using school owned computers or family owned computers? If these are family owned and they have no Internet connection or just have dial up, this is an obstacle to this course being successful. So much of what you described needs Internet.

surfing the web, listening to music & video files with proprietary codecs, using Libre Office + media libraries such as moovida

some familiarity with GIMP, Audacity, Inkscape and may be Blender

installing new softwares from Ubuntu software center & apt-get

some network tools, such as Tramission (or Vuze), FileZilla, wget, aria2c

maybe some scientific apps, I dont know which ones

I would divide the class up into groups. Then give each group an assignment to explore the software center to find and demonstrate to the class what applications they found, what they liked, and what they didn't like. The groups could be set up to focus on word processors, spreadsheets, presentation applications, music playback and editing applications, graphics organizers and editors, torrent applications, etc.

WINE, of course
WINE is still hit-or-miss when it comes to running Windows applications. I would limit the material to showing them that it is available, and explaining its limitations. Hopefully they wont need it.

simple commands in bash, a little introduction with VIM
I would show them basic commands; such as, cd, ls, cp, rm, grep, cat, more, less, and so on. I agree with VI as I have used it on server that do not have any other editors installed.

playing with CompizConfig
Compiz is cool; however, I wouldn't place very much emphasis on it. It could distract them from accomplishing the other activities you want them to accomplish. I would consider putting it at the very end of the series of sessions.

some easter eggs, for more joy!
I think of this as a waist of time. That is why they are hidden as easter eggs.

WRDN
June 1st, 2011, 02:04 AM
I think it's great you are trying to teach others and spreading information, however, it is important not to be "preachy".

In order for a person to understand the software ecosystem, and FOSS compared to commercial/ proprietary applications, you must not only focus on the positives, but also the negatives and the reasons a person may use an alternative OS, such as the use of applications including Microsoft Office (with usage usually based on brand familiarity), Adobe Photoshop and numerous AutoDesk products (AutoCAD, 3DS Max, Maya etc).

It is important to emphasise the positives including speed, security, the community development approach (and successes).

To focus on something rather more specific, with regards to the original post:


(i will use ubuntu + classic gnome, because i think unity is still under development. any ideas?)

That is somewhat logical due to the much greater stability of the classic GNOME environment (GNOME 2.x) compared to Unity. I would still show people a test-drive of Unity and/ or GNOME 3.0 though, to show the diversity of environments, the speed at which projects can move, and the drastic changes in usage. Further, these newer projects may peak the interest of the students, and help alleviate preconceptions that may exist about Linux based OS usability and new features.

With that said, it would also be relevant to expose them (if only briefly) to the terminal. The purpose of this would be to emphasise that, it is possible to perform tasks beyond a GUI. Examples include showing usage of "ls", "mv" and "cp" to list, move/ rename and copy files respectively. Each of these would show that, the GUI programs (e.g. Nautilus) are performing no "majic", and these operations are performed at a much lower level (than the user level).

As mentioned, it's great that you are willing to teach young students about Linux, however it is very important to show a broad spectrum of understanding of the software ecosystem and economics, as well as emphasising that, the "GUI" is not majic, with computation occuring at a much lower level.

krapp
June 1st, 2011, 02:15 AM
What is with Linux users and not being "preachy" about using Linux. Get it into your heads that we are a very small small minority and have to be vocal about using Linux or we won't be heard. I assure you no young mind will be harmed by hearing even the most baseless praise of Linux.

Maybe it's just English-speaking Linux users? It smacks of Anglo-American pragmatism.

Thewhistlingwind
June 1st, 2011, 02:30 AM
Personally, I think using the LiveCD to recover data will actually be something they'll use, it's cool, and best of all, it enforces the notion of using Linux for something later without necessarily preaching, if that's not your thing.

SeijiSensei
June 1st, 2011, 05:46 AM
You might want to discuss this article with them, if the minders don't object.

http://yro.slashdot.org/story/11/05/31/1238226/In-Censorship-Move-Iran-Plans-Its-Own-Internet

The Slashdot commentator adds that "The article also mentions unconfirmed local press reports suggesting that Iran is building its own national operating system."

One that will be more resistant to son-of-Stuxnet (http://en.wikipedia.org/wiki/Stuxnet), I'd imagine.

Thewhistlingwind
June 1st, 2011, 05:53 AM
You might want to discuss this article with them, if the minders don't object.

http://yro.slashdot.org/story/11/05/31/1238226/In-Censorship-Move-Iran-Plans-Its-Own-Internet

The Slashdot commentator adds that "The article also mentions unconfirmed local press reports suggesting that Iran is building its own national operating system."

One that will be more resistant to son-of-Stuxnet (http://en.wikipedia.org/wiki/Stuxnet), I'd imagine.

You can't talk about issues in Iran, from Iran..........

That's why they're not considered a free country in the first place.

Random_Dude
June 1st, 2011, 10:23 AM
Emacs, of course ;).

Their hands are too small.

RoflHaxBbq
June 1st, 2011, 10:32 AM
Let them learn it themselves.

No, seriously, I am 14, and have taught myself everything I know about Linux, programming, and computes in general, and I have yet to meet somebody who knows more than I.

jhonan
June 1st, 2011, 10:40 AM
... and I have yet to meet somebody who knows more than I.
Your modesty is admirable.

RoflHaxBbq
June 1st, 2011, 10:58 AM
Yeah, well...

Random_Dude
June 1st, 2011, 11:40 AM
Your modesty is admirable.

I believe him.
If you never leave the house, you'll never meet anyone who knows more than you.

RoflHaxBbq
June 1st, 2011, 11:45 AM
I leave the house to go to school.

That counts, right? right?

jre6
June 1st, 2011, 12:08 PM
I leave the house to go to school.

That counts, right? right?
The average 14 year olds just know about Windows, and they will not care about some other OS called "Linux" with that odd "penguin" logo. They are not that much interested. And, even if they switch to Linux, they will expect that everything (including Windows programs) will run fine out-of-the-box. And they will return to Windows.

Probably you are more interested about computers, but then, even I can live between beggars and claim myself to be richer than the beggars.

Rise to a suitable platform, and then boast. Not among your level.

RoflHaxBbq
June 1st, 2011, 12:15 PM
I'm not talking about people my age. I know that they are a bunch of noobs. There is not anybody (adults included) that knows more about Linux/UNIX/Programing than I. I'm boasting, but I'm allowed to because it's true.

My point is that people shouldn't judge solely on age, as a small percentage (a VERY small percentage) of people aged 13-15 are much more knowledgeable than you would think.

Grenage
June 1st, 2011, 12:19 PM
I'm not talking about people my age. I know that they are a bunch of noobs. There is not anybody (adults included) that knows more about Linux/UNIX/Programing than I. I'm boasting, but I'm allowed to because it's true.

My point is that people shouldn't judge solely on age, as a small percentage (a VERY small percentage) of people aged 13-15 are much more knowledgeable than you would think.

With respect, there are doubtlessly more than a handful of people around who could whip you at all of the above. You're young, you'll learn.

Random_Dude
June 1st, 2011, 12:22 PM
I'm not talking about people my age. I know that they are a bunch of noobs. There is not anybody (adults included) that knows more about Linux/UNIX/Programing than I. I'm boasting, but I'm allowed to because it's true.

My point is that people shouldn't judge solely on age, as a small percentage (a VERY small percentage) of people aged 13-15 are much more knowledgeable than you would think.

Are you comparing yourself with your older relatives? Are any of them linked to computers, programming, etc.?
At the age of 6 I probably knew more about computers than my grandmother, but that does not make me a genius.

Cheers :cool:

RoflHaxBbq
June 1st, 2011, 12:27 PM
Typical patronization.

I am comparing myself to everyone. My relatives do in fact have very much experience with computers.

If I was to ask somebody here how much experience they have had with computers, they would say 10-20 years. I have had 11 experience with computers now.

This is exactly why I do not like discussions on age on forums like this.

Grenage
June 1st, 2011, 12:29 PM
Don't feel patronized, the same would apply to anyone who claimed that nobody knows more than they do.

RoflHaxBbq
June 1st, 2011, 12:32 PM
That is exactly what I said, but that was not what I meant.

I'm not saying that I am an expert, nor am I saying that I do not ever need help with a problem.
My overall point is that I know the same, if not more, than your average Linux nerd, and I have no need for any adult to sit down and lecture me about Linux.

Grenage
June 1st, 2011, 12:47 PM
I have no doubt that's true, but you're going to be an exception; most people have neither a clue nor the inclination to gain one. A cursory introduction could spark the interest of one - isn't that enough?

RoflHaxBbq
June 1st, 2011, 01:04 PM
And that's exactly why the whole idea of teaching teenagers about computers is very flawed.

Most don't care, and the few that are an exception and do care already know their stuff.

lucazade
June 1st, 2011, 01:47 PM
..and I have no need for any adult to sit down and lecture me about Linux.

Looking at the threads you opened I'd say you need it... maybe those guys want to learn how to code and use properly a linux box.

CandidMan
June 1st, 2011, 01:51 PM
And that's exactly why the whole idea of teaching teenagers about computers is very flawed.

Most don't care, and the few that are an exception and do care already know their stuff.
At that age I would have been interested to learn about Linux or even Windows a bit more.
In the UK, during my GCSEs IT lessons consisted of nothing more than learning the interface and how to use proprietary apps like Excel, Access etc.
That's all well and good but it's hardly what I would've called IT. A bit more of the underlying principles would have been interesting/necessary for an IT class.
The closest we got to programming was recording macros while running apps ](*,)

RoflHaxBbq
June 1st, 2011, 01:57 PM
Looking at the threads you opened I'd say you need it... maybe those guys want to learn how to code and use properly a linux box.

Do you realize that those threads were all opened months ago when I had just moved over from Windows and had no idea what to do?

ahmad598
June 1st, 2011, 01:58 PM
Ok guys, i think that we have wasted our time enough on an arrogant little boy (sorry, but someday somebody must tell you the truth). If a man already knows a science, it doesn't mean that we must cancel up the education system. If somebody has succeeded learning linux, it doesn't mean that for every other situation everybody else can do the same. The main problems here in iran are:

absolutlely, the main language of computer science is english, and we speak farsi in iran. so these little boys are somehow deprived of these resources. someone with more knowledge must help them to grow and guide them through the way until they learn english and learn to be curios. Or deside to go and dive in another part of science.
another one is the problem of internet. We dont have that speedy internet connections here (yes, we do, but it is really expensive compared to europe or america). So it is irony for us to say them "just go and play around the FOSS land and learn what you like". We must make the best things we can available to them.
these are our main problems in iran, but forget all of this; Take american teens into account: they dont have these problems but, how many percents of them know WHAT IS LINUX AT ALL?! Lol. They need someone to make them familiar with all of this.

After all, i have learnt linux by myself, with just a dial up connection. I started doing it when i was 16, and to be honest i still treat myself as a newbie, as i'm nearly 20 now.

OK, now forget about that and lets help and make a good course for them. Any new ideas, my great buddies?

RoflHaxBbq
June 1st, 2011, 02:07 PM
People like you annoy me, because you refuse to see my point.
I may come across as arrogant, but that is irrelevant, as is my knowledge or lack of knowledge.

Every post in this thread was not intended to brag, but rather to explain that the whole idea of teaching teenagers about computers is very flawed.

Most don't care, and the few that do already know their stuff.

Thewhistlingwind
June 1st, 2011, 02:18 PM
People like you annoy me, because you refuse to see my point.
I may come across as arrogant, but that is irrelevant, as is my knowledge or lack of knowledge.

Every post in this thread was not intended to brag, but rather to explain that the whole idea of teaching teenagers about computers is very flawed.

Most don't care, and the few that do already know their stuff.

I said when I was REALLY little "I want to make video games" everyones response was "You'll have to go become a computer scientist for that." Who knew that meant trolling bulletin boards until you can accurately claim you learned to read, write, and speak off them?

To be honest, if they don't care, they never will, unfortunately, because CS has infiltrated most other industries and obsoleted the tools of the trade. It doesn't surprise me that so many people have problems with them.

Of course, facebook/etc will alleviate this problem in the future.......in the west

ahmad598
June 1st, 2011, 02:19 PM
Most don't care, and the few that do already know their stuff.

Go and read my post again. As i have said, they dont know their stuff, and you can read the reason.

Please, lets get back to the main discussion.

Random_Dude
June 1st, 2011, 02:28 PM
I don't know if it has been said before, but you could teach them about security in Linux.
Especially that you are not 100% safe.

You could point out Rasa's case: http://ubuntuforums.org/showthread.php?t=1771265

And teach them to recognise dangerous bash commands.

Cheers :cool:

krapp
June 1st, 2011, 05:48 PM
Let them learn it themselves.

No, seriously, I am 14, and have taught myself everything I know about Linux, programming, and computes in general, and I have yet to meet somebody who knows more than I.

:D Print out this thread, store it somewhere, and come back to it when you're 18 and try not to be embarrassed at your skips in logic.

Thewhistlingwind
June 3rd, 2011, 06:55 AM
:D Print out this thread, store it somewhere, and come back to it when you're 18 and try not to be embarrassed at your skips in logic.

If he's like me, he won't want to. And doing so will give him shivers.

Because he knows he'll feel the say way about himself a year from now.