View Full Version : Middle School Ubuntu Computer Lab Class --Lesson Plan Ideas?
Prospero2006
September 1st, 2008, 02:23 PM
Hello Everyone,
I am a teacher in San Antonio, Texas. I teach with a magnet technology program call iMAK (interactive Media Applications at Krueger.) http://www.neisd.net/imak
Briefly:
-Two years ago I re-imaged my computer lab so that it runs Ubuntu.
-Last year, I taught a general seventh grade multi-media class curriculum
using Ubuntu only.
-This year, I petitioned the school board to allow me to teach an 'Advanced Linux/Programming' class for 7th-8th grade students. (They said yes!)
So, school has started and I've found that the best way to handle a new class like this is to plan 2 weeks at a time. (It's hard to gauge what the pace of the students will be until you actually get in there and start working with the concepts.)
The curriculum for my first two weeks can be found here:
http://www.neisd.net/imak/lessonplans/beck/linux/aug25.html
Here is where I ask for advice from the community:
-Although I have a lot of ideas as to where I want to take this group of kids, it's always good to ask for advice on these forums.
-This class is wide open. I can teach any application or concept.
-It is an advanced group of students. --High achievers/High Potential kids.
Concepts I plan on covering this year:
-Live CD Creation, Setup, and Operation.
(We're behind a school district proxy. So, teaching the kids about how that works should prove interesting...)
-USB Pen Drive Live Installation (Every Kid Gets a Pen Drive.)
-Introduction to Python
-Very Basic introduction to 'C'
Anyway, any ideas about applications I can teach or concepts I can cover will be welcome.
Once again, my lesson plans for this class can be found here:
http://www.neisd.net/imak/lessonplans/beck/linux/aug25.html
Thanks!
nolimit974
September 7th, 2008, 11:11 PM
i just wanted to say i wish i had this class when i was in school.
kjohansen
September 7th, 2008, 11:49 PM
A couple of things I thought of:
-The process of dual booting and configuring bootloaders (windows and/or other *nixs).
-The difference between an operating system and a windowing system.
-Many different ways to accomplish the programming you teach. Too often I see people taught in one editor or one way. For example if you use gcc to compile your C code, show them something else so they know gcc is not C, it is just a way at C. Show emacs and company but also show an advanced IDE etc...
-Find common problems on linux (reading through the absolute beginner section here is a good place to find some) and have your kids try to find solutions through reading linux documentation or web searching.
Prospero2006
September 10th, 2008, 01:58 PM
I love the solution about finding common problems and having them troubleshoot. That's good.
Right now, I'm making sure the interest level is high by having them learn how an old school MUD (Multi-User Dungeon) Works. It's fun.
After we've spent enough time there, I'm going to teach live cd creation and have them configure it for use from the ground up without actually installing anything on the hard drive. That way, I can give the students sudo privileges without risking the integrity of the system I have set up.
This week's plans are here:
http://www.neisd.net/imak/lessonplans/beck/linux/sep8.html
Thanks again,
appier
September 20th, 2008, 12:34 AM
I just looked at your lesson plans. It looks like a really neat class! Do keep us posted on how it's going.
Regarding the lesson plans, if you're able to successfully plan two weeks out, you're one week further than me. I see teachers in other subject areas that have quarters and the whole year already planned to the day. I don't know how they do it. As for me, in the science areas, I feel satisfied if I can keep relatively on track for a week. Sometimes what I think is hard, they breeze right through, waiting for the next challenge. Then we come to something that every class before them thinks is a piece of cake, and we have to take a couple of extra days reteaching and reviewing it before they get it.
Prospero2006
October 6th, 2008, 01:57 PM
Here's an update on what my seventh grade students are doing with Linux:
http://www.neisd.net/imak/lessonplans/beck/linux/Oct6.html (http://www.neisd.net/imak/lessonplans/beck/linux/Oct6.html)
-Essentially, I've issued each kid a pen drive.
-We'll start by installing a non-persistent Ubuntu image.
-The kids will all learn how to configure firefox and synaptic
by grabbing sources.list and doing appropriate proxy configurations.
(We're behind a school district web proxy.)
-Once the kids can configure firefox and synaptic from the ground up
in under 10 minutes, we'll reformat the drives so that the
Operating System image on them is persistent.
(The Directions are here! (http://www.pendrivelinux.com/2008/05/08/usb-ubuntu-804-persistent-install-via-the-live-cd/) )
The kids love the class. Keep the good ideas coming!
croxis
October 8th, 2008, 03:34 PM
When I get my own class I hope to offer something similar :)
I suggest looking into having student lead projects (inquiry) that will play to their strengths and intrists and demonstrate what they learned.
You might also want to consider the importance of giving back to the developers by filing bug reports. You (or they) can set up bugzilla for their projects so when they collaberate and test each other's work they can submit reports.
Prospero2006
October 10th, 2008, 09:41 AM
I created a podcast this morning with two of my advanced kids.
It's about three minutes:
Direct Link
http://www.neisd.net/imak/Beck/podcasts/Beck/101008final.mp3
RSS
http://www.neisd.net/imak/Beck/podcasts/Beck/rss.xml
In this episode we talk about:
-USB Pen Drive Installation
-Synaptic
-A Game Called Glest
Thanks!
Prospero2006
October 10th, 2008, 06:50 PM
Here's a video of my kids using synergy:
It's a lesson we did in class.
http://www.youtube.com/watch?v=gtsBGrrR8ks
Prospero2006
January 26th, 2009, 10:55 AM
For anyone who has in interest in how Linux is being used in the public schools, the page linked HERE! (http://www.neisd.net/imak/lessonplans/beck/linux/Jan19.html)
Covers what I'm doing with my advanced 7th/8th grade class during the first part of the second semester.
We are going to start using:
Apache
Mysql
PHP
If anyone out there has any ideas after reading the lesson plan linked above, please let me know!
Thanks,
skullmunky
February 3rd, 2009, 02:00 AM
@Prospero2006: awesome.
I went to a Math/Science/Technology Magnet middle school. It was famous for including Shuttle Flight Simulator training in science class. Turns out it was a big cardboard box with a Nintendo in it :)
Things have come a long way. Keep it up!
Other ideas - if you want to try something with programming and multimedia, you could do Processing (www.processing.org).
Or, my other fave, Panda3D (www.panda3d.org), which is a python library for quickly making 3D games.
meborc
February 4th, 2009, 08:44 AM
it would be great if you finished the year by making a little, but still working and needed linux program/game
this would teach the children programming, teamwork, leadership, time planning and a lot more...
and not to mention the satisfaction they will get from the finished work
each kid could work on something they are best at (coding, graphics, sounds, QA etc)
this would also teach them about open source and how everyone can contribute, even if they are not so good at programming languages :)
CrazyDesi
February 4th, 2009, 04:07 PM
Smart Kids!
hubie
February 6th, 2009, 12:31 PM
This suggestion would have probably been more applicable to the work last semester, but you might have them work on Windows recovery skills such as password resetting, drive scanning, and file recovery. The kind of things that you can do with the Trinity Rescue Kit (http://trinityhome.org/Home/index.php?wpid=1&front_id=12) and other bootable CDs. I am the lone linux guy where I work and these skills come up from time to time as my co-worker Windows boxes have issues, and they inevitably try to turn to Norton, or download a half dozen shareware programs (that I cynically guess to be most likely just repackaged GPL code). These are very useful skills to have when family or friends are told that their PC is "dead" by some big box store tech guy who suggest reformatting and reinstalling, and you come in and fix their corrupted hard drive or recover important files that would otherwise have been wiped. Since you already have them creating and booting off of a USB drive, these kind of tools naturally would naturally fit (unless, of course, you are already doing those things and I didn't pick up on that).
A whole other area to target is network security. The slew of things like nmap, Snort, Wireshark, Tripwire, etc. are very useful to know and can easily fill weeks of time. You inevitably get into topics such as the TCP stack, authentication, SSL certs, etc.
nightalon
May 7th, 2009, 11:22 PM
Hubie and Prospero, you guys seem to want to teach these kids to be sys admins! I'm not sure that's an ideal career path these days especially with outsourcing....
I will admit that these are all valuable skills at the moment, and having a distro that everyone can take home with them on a pen drive is pretty cool. Setting up LTSP and demonstrating its functionality would be cool too, but that would be pretty tough, and likely also destructive of the current setup.
Admin/Technical Setup Question:
How are you locking these systems down? How do you have login/users set up? I set up a lab in Ghana a year ago with 12 used Dells running Ubuntu. I tried LTSP "fat" clients, but the NIC on the "server" XPS laptop (faster than the rest) had died so the network was running over a USB adapter, so LTSP wasn't really feasible. Also, internet was too expensive, which really sucked.
Proposed Coursework:
As for coursework, honestly, I'd recommend teaching students how to lay out a "broadside" or "newspaper" in Scribus, get comfortable with GIMP, (layers, masks, etc.) do a little programming in Java using Eclipse, move on to Haskell, (starting on functional programming [concepts of recursion, abstraction] when they're young is probably easier than teaching it later), work on designing and laying out web pages with Screem, do some vector graphic design with Inkscape, (design a logo) (in my middle school we had a LEGO Dacta/Mindstorms setup and we had to model our projects from scratch in Illustrator)
Advanced functionality of spreadsheet software was another invaluable skill I learned in middle and high school: histograms, error bars, sorting, filters, charts, (pivot-tables, macros, regressions if these kids are really MIT-bound...)
You could even install SketchUp under WINE. There's a whole architecture track you could do using open-source CAD software, and then rendering in Blender. Product design is an alternative to architecture.
Then you could call it a day with a little video editing in Kino, some star-gazing in Celestia or Stellarium, a trip to Ancient Rome in Google Earth, and maybe a little digital music or remixing (cutting, splicing, and jamming DJ-style) with Ardour.
Robotics:
You could also buy a couple Arduinos or one of those other programmable boards and a $100 "cooker" module to do some basic robotics. The Dacta setup we had was amazingly cool when I see university engineering setups (Yale) but I'm sure it was and still is fairly expensive. {I actually had my own set at home, so I know it was expensive...shhh...don't tell anyone...}
Don't get me wrong, teaching these kids how to setup LAMP and a wiki is a great exercise. It could even earn them some money if they did it for others. I just think the IT-related stuff will become obsolete very quickly. It might be good for a summer job, but not for a career path/higher education.
Also, it's easy to get bogged down in the configuration/technical/IT aspect of Linux. I should know. I triple-boot on my production desktop, convertible tablet, and netbook. ;-D (if you want to teach more configuration stuff, teaching students how to build Chromium or OLPC Sugar from scratch would be a good idea)
A side note:
I love OLPC's Sugar setup and find it fascinating. You probably don't have enough computers or external HDs, but it would be cool to have a demo section of your lab where you demonstrate an OLPC Sugar install, an LTSP setup, the differences between Ubuntu MID/UMPC version and UNR edition, KDE, OS X on a PC, what Windows 7 looks like, Mythbuntu, Ubuntu Studio, etc. A Linux/OS "playground" if you will. You could have a new treat set up for the students each week.
Getting on Skype/Pidgin/Ekiga and videochatting/text chatting with Ubuntu developers from all around the world would be loads of fun! Maybe you can even write Mark Shuttleworth and he'll do a videochat with you!
ashmew2
May 8th, 2009, 04:22 AM
boohoo :cry: I wish i had a chance to go to a school like that :cry: boohoo :cry:
meborc
May 8th, 2009, 10:48 AM
boohoo :cry: I wish i had a chance to go to a school like that :cry: boohoo :cry:
maybe in next life, eh? :)
ashmew2
May 10th, 2009, 01:59 AM
maybe in next life, eh? :)
Hehe :)
Lol , teaching computers to kids in a better way , i mean better than how i have been taught at school over the years , makes me all excited :P
meborc
May 10th, 2009, 07:48 AM
Hehe :)
Lol , teaching computers to kids in a better way , i mean better than how i have been taught at school over the years , makes me all excited :P
yeah... even in my university, the IT classes (compulsory) that we had only consisted of word, excel and visual basic...
we made a picture to fly around with using excel macros... nice, yes... but practical? NO
total waste of time
ashmew2
May 11th, 2009, 01:18 PM
yeah... even in my university, the IT classes (compulsory) that we had only consisted of word, excel and visual basic...
we made a picture to fly around with using excel macros... nice, yes... but practical? NO
total waste of time
My IT teacher still uses Win98 OMG!@?# And we are like W T F ?!@?#
And they taught us GW-BASIC , which in my views is better than learning excel if you wanna be a programmer :P
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.