Due to the fact that the College Board Computer Science AP test is given using Java, I highly recommend that in place of C/C++ as the language framework for teaching the concepts. Any language chauvinism aside, Java tends to be easier for beginners to grasp since it has far few "dark corners" to get into. Those dark corners are invaluable to programmers who need them, but for learning they tend to be counter productive. My son placed out of his first two programming courses due to AP, though that was a few years ago when the test was given in C++. Java is very much derived from C/C++ so you should have relatively little trouble adjusting yourself. You'll also find active online communities of other HS Computer Science teachers so you can find/share resources there, especially for things such as appropriate texts for the earlier courses (the AP courses should use the same texts as nearby colleges) and appropriate programming environments for whatever your computers are running.
Personally, I suggest that you start students in a simple web environment using a plain text editor, then once the programs become non-trivial, move into either Eclipse or Visual Studio, or at least get a good language aware programming editor. It will take about a week or two to get them used to the environment, but it pays off big time for debugging and general productivity.
OK, it was done by pro's and cost a bit more than $150, about $17 million more! But at 12.5 million LED's I think the Fremont Street Viva Vision is Las Vegas wins the "biggest" contest. http://www.vegasexperience.com/viva.cfm To provide some scale on the photos and minivid clip, the peak of the ceiling is at least 6 stories above you and the small segment you see is just a fraction of the 1,500+ feet long display.
Oh, and from the looks of those photoshop-ed pictures, I wouldn't be surprised if this was just yet another MIT "Prank"....
I appreciate the sentiment, but really, technology CAN make a difference in the classroom, I've seen it, and it doesn't have to cost all that much unless you want all the bells and whistles. The basic variety will do just fine.
Computers are interactive devices, and they are 1 on 1 with kids (in a lab setting anyway) which can have a transformative effect. Unless most of the adult population starts donating a day week or you can hold the parents accountable, there is no way to get that 1 on 1 effect. Computers are cold comfort, but they can serve a purpose, and are particularly valuable in boosting the basic reading and arithmetic skills of elementary students when used purposefully.
Further (though less certain) the constructivist use of computers helps to generate students who think, not just absorb (which they don't do anyway). Trying to reach these kids is one of the difficult tasks, and the one teacher in a class or 30-40 faces a tough challenge without the assistance of a computer lab.
The time donated by the people setting up a lab or two like this can actually transform a whole school. Something they couldn't do just by helping correct papers or whatever else "volunteers" typically get relagated to.
1) Try to work with the district IT people, but if they aren't responsive then continue to go it alone - WITH the support of the principal which hopefully he's already gotten. Having BEEN the red tape wielding corporate goon, don't necessarily expect a lot of help and possible some resistance. But you never know. In particular he needs to be aware of significant liability if the computers are connected to the Internet. He *MUST* provide filtering, or blocking of "unwholesome" sites otherwise it risks the school's federal funding. Typically he should be able to get Internet access either through the district or other routes including the filtering for close to free.
2) There are quite a few charitable groups that should be able to supply solid computers of better vintage, and possibly some support. At the very least check with the National Cristina foundation (www.cristina.org) Machines in the 300Mhz-800Mhz range are pretty readily available. 5 year old servers can also be gotten via charity and these days are monsters like dual 1Ghz XEON's with 2-4GB of RAM and frequently several hundred MB of SCSI RAID - more than enough for the server for this.
3) I'll second the recommendation for the k12 linux terminal server project. Also check out edubuntu (www.edubuntu.org) as it comes pre-packaged with a LOT of good stuff, but he'll need machines like those mentioned above. edubuntu site has some good getting started and how to do this type of guides.
4) Check with www.eduforge.org - there are a lot of experienced people there in the discussion sections to help out.
5) Forget about "teaching about computers". At the K-5 level it is more about using the computers as learning tool for other more practical subjects. Any learning about computers should be distinctly secondary as a result of the computers being used. Kids will pick up basic keyboarding, mouse and other skills as the use the software that helps them with other projects. No need to "teach about Linux" or any other technology as such. You want kids to be able to read, write, figure, and think, not turn out 9 year old Linux sysadmins. The national (and state and I'm sure local) standards for kids need to know about technology are a joke. If the kids are useing the computers a couple hours a week from 2nd though 5th grade, they'll meet the standards, or at least as much of them as make sense.
6) Target two specific types of activities for different purposes:
a) Drill and kill. I hate to say it, but this works for things like basic phonics, letter and word recognition, and arithmetic skills. Doing it on a computer isn't any more effective than work sheets in the classroom, in fact some studies indicate it is less effective for time spent. BUT, doing it on the computers gets the kids excited so they actually do the drills. These kinds of drills are particularly important for the children likely to be in these schools since they are starting off "behind" and typically don't get the necessary reinforcement at home. Not the most popular way to use computers, but you have to deal with reality.
b) Constructivist activities. Using a word processor to write a "paper" (typically 2 sentences qualifies in 2nd grade) and illustrating it with a basic drawing program (e.g. tuxpaint) is well within the capabilities of the machines and students. They will pick up those computer skills as they use these programs for class related activities.
7) Programs like tuxtype not only teach touch typing - something they don't really need until middle school, but help a lot with letter and word recognition. Therefore they can be used even in lower elementary grades effectively, just don't worry about typing speed.
8) Finally if for some reason you absolutely positively have to teach "computers"; Again, forget about teach "linux". Instead starting in the 4th or 5th grade look at one of the great Logo implementations (e.g. education.mit.edu/open
Check on the ACM curriculum recommendations. http://www.acm.org/education/curricula.html and http://acm.org/education/k12/k12final1022.pdf
Also the College Board. http://apcentral.collegeboard.com/apc/public/cours es/descriptions/index.html
Due to the fact that the College Board Computer Science AP test is given using Java, I highly recommend that in place of C/C++ as the language framework for teaching the concepts. Any language chauvinism aside, Java tends to be easier for beginners to grasp since it has far few "dark corners" to get into. Those dark corners are invaluable to programmers who need them, but for learning they tend to be counter productive. My son placed out of his first two programming courses due to AP, though that was a few years ago when the test was given in C++. Java is very much derived from C/C++ so you should have relatively little trouble adjusting yourself. You'll also find active online communities of other HS Computer Science teachers so you can find/share resources there, especially for things such as appropriate texts for the earlier courses (the AP courses should use the same texts as nearby colleges) and appropriate programming environments for whatever your computers are running.
Personally, I suggest that you start students in a simple web environment using a plain text editor, then once the programs become non-trivial, move into either Eclipse or Visual Studio, or at least get a good language aware programming editor. It will take about a week or two to get them used to the environment, but it pays off big time for debugging and general productivity.
OK, it was done by pro's and cost a bit more than $150, about $17 million more! But at 12.5 million LED's I think the Fremont Street Viva Vision is Las Vegas wins the "biggest" contest. http://www.vegasexperience.com/viva.cfm To provide some scale on the photos and minivid clip, the peak of the ceiling is at least 6 stories above you and the small segment you see is just a fraction of the 1,500+ feet long display. Oh, and from the looks of those photoshop-ed pictures, I wouldn't be surprised if this was just yet another MIT "Prank"....
Computers are interactive devices, and they are 1 on 1 with kids (in a lab setting anyway) which can have a transformative effect. Unless most of the adult population starts donating a day week or you can hold the parents accountable, there is no way to get that 1 on 1 effect. Computers are cold comfort, but they can serve a purpose, and are particularly valuable in boosting the basic reading and arithmetic skills of elementary students when used purposefully.
Further (though less certain) the constructivist use of computers helps to generate students who think, not just absorb (which they don't do anyway). Trying to reach these kids is one of the difficult tasks, and the one teacher in a class or 30-40 faces a tough challenge without the assistance of a computer lab.
The time donated by the people setting up a lab or two like this can actually transform a whole school. Something they couldn't do just by helping correct papers or whatever else "volunteers" typically get relagated to.
1) Try to work with the district IT people, but if they aren't responsive then continue to go it alone - WITH the support of the principal which hopefully he's already gotten. Having BEEN the red tape wielding corporate goon, don't necessarily expect a lot of help and possible some resistance. But you never know. In particular he needs to be aware of significant liability if the computers are connected to the Internet. He *MUST* provide filtering, or blocking of "unwholesome" sites otherwise it risks the school's federal funding. Typically he should be able to get Internet access either through the district or other routes including the filtering for close to free.
2) There are quite a few charitable groups that should be able to supply solid computers of better vintage, and possibly some support. At the very least check with the National Cristina foundation (www.cristina.org) Machines in the 300Mhz-800Mhz range are pretty readily available. 5 year old servers can also be gotten via charity and these days are monsters like dual 1Ghz XEON's with 2-4GB of RAM and frequently several hundred MB of SCSI RAID - more than enough for the server for this.
3) I'll second the recommendation for the k12 linux terminal server project. Also check out edubuntu (www.edubuntu.org) as it comes pre-packaged with a LOT of good stuff, but he'll need machines like those mentioned above. edubuntu site has some good getting started and how to do this type of guides.
4) Check with www.eduforge.org - there are a lot of experienced people there in the discussion sections to help out.
5) Forget about "teaching about computers". At the K-5 level it is more about using the computers as learning tool for other more practical subjects. Any learning about computers should be distinctly secondary as a result of the computers being used. Kids will pick up basic keyboarding, mouse and other skills as the use the software that helps them with other projects. No need to "teach about Linux" or any other technology as such. You want kids to be able to read, write, figure, and think, not turn out 9 year old Linux sysadmins. The national (and state and I'm sure local) standards for kids need to know about technology are a joke. If the kids are useing the computers a couple hours a week from 2nd though 5th grade, they'll meet the standards, or at least as much of them as make sense.
6) Target two specific types of activities for different purposes:
a) Drill and kill. I hate to say it, but this works for things like basic phonics, letter and word recognition, and arithmetic skills. Doing it on a computer isn't any more effective than work sheets in the classroom, in fact some studies indicate it is less effective for time spent. BUT, doing it on the computers gets the kids excited so they actually do the drills. These kinds of drills are particularly important for the children likely to be in these schools since they are starting off "behind" and typically don't get the necessary reinforcement at home. Not the most popular way to use computers, but you have to deal with reality.
b) Constructivist activities. Using a word processor to write a "paper" (typically 2 sentences qualifies in 2nd grade) and illustrating it with a basic drawing program (e.g. tuxpaint) is well within the capabilities of the machines and students. They will pick up those computer skills as they use these programs for class related activities.
7) Programs like tuxtype not only teach touch typing - something they don't really need until middle school, but help a lot with letter and word recognition. Therefore they can be used even in lower elementary grades effectively, just don't worry about typing speed.
8) Finally if for some reason you absolutely positively have to teach "computers"; Again, forget about teach "linux". Instead starting in the 4th or 5th grade look at one of the great Logo implementations (e.g. education.mit.edu/open