Friday, April 30, 2010

IEP: Reflection

This project has been extremely satisfying. I feel like I am finally finding a way to fully use the particular mix of strengths I bring to education. I have always enjoyed programming, and this is the clearest focus I've ever had for applying my programming knowledge.

I am still planning to release this program as open source software, once I have established that it works as expected. A motto in open source is "Release early and release often," and the guidelines at Sourceforge encourage developers to bring code public in the early phases of development. However, I prefer a model of establishing a minimum level of functionality before releasing code, because adding developers too early can just confuse things. I am also using this program as a way to learn Python, so I want to bring the program to a certain point before being open to collaboration anyways.

I have another long-term goal in mind as well. The software I would really like to see produced is a high-quality curriculum design tool. Engineers use AutoCad to design their work, so they can easily revise their plans as improvements arise. Teachers are still mired in the cut-and-paste, manual-revision world of word processors for most of their curriculum design work. We need a well-designed, database-focused curriculum planning tool that facilitates curriculum development and refinement. I would like to apply what I learn from the Transcript Illustrator project to this larger project.

IEP: Technical Improvement

I have continued to make progress on the Transcript Illustrator program. The program is not finished, but I have solved most of the major problems necessary to implement it fully, and I still aim to have it ready for our incoming students this fall. To demonstrate technical improvement, I will describe one of the problems I had to solve in order to make the program work.

Reading in a set of English courses is easy, because English classes are already grouped together on our text-based transcripts. The program simply looks for the header line "LANGUAGE ARTS", and then it knows the next courses are all English classes until a new header is reached. The English graduation requirement is simple; students need four credits of English classes, but they can be any English classes. So the program simply displays English classes in the English bar, and puts any English classes over four credits in the Electives bar. These extra credits are color coded, so we can see how English classes are being used to meet Elective requirements.


Science classes are much harder to process. Students need three credits of science classes, but these classes must consist of at least one credit of Life Science and at least one credit of Physical Science. All science courses are grouped together on the transcript, but they are not identified as Physical Science or Life Science courses in any way. This is the central reason that text-based transcripts are difficult for staff to process accurately. We need to read each course title, decide if it is Life Science or Physical Science, and then keep track of how many credits of each a student has earned. The program, however, has no way of deciding if a course is Physical Science, Life Science, or some other kind of science. To solve this, we need some user input.

Good design decisions around user input result in user-friendly programs, while poor design decisions make software that is difficult, confusing, or tedious to use. When the Transcript Illustrator program comes across a science course a dialog appears that lists the course name and asks whether the course is a Life Science class, a Physical Science class, or a General Science class. It does this for each science course that it comes across. However, it also builds its own database of science courses and their categories, so it only prompts once for each course name. If another student has taken the same course, the program already knows what kind of science credit that course belongs in. As usual in programming, my first implementation did not exactly work right, but I figured out how to make the dialogs appear properly.



This part of the program now works. It was very satisfying to run the program once, answer all the prompts, and then run it subsequent times and see all courses categorized properly without having to answer any prompts. I still need to implement this functionality for all content areas with sub-discipline requirements such as Social Studies and Physical Education. I will then need to make an override available for individual students, and the program will have to display sub-discipline courses properly as well.

This is the essence of programming - break a complex process down into a long series of if-then scenarios. I look forward to summer programming at my own pace, and seeing this software used and appreciated by staff and students in the fall.

Thursday, April 29, 2010

Digital Story Reflection

Goal: Make a digital story composed of video clips, using a story map involving a problem, transformation, and resolution.

The digital story I made is about PHSgeek, a project in which our students learn to refurbish donated computers. This project has already, in its first year, returned our school to a minimum level of functioning technology. Because of this project, we should be able to begin making digital stories with our students in the fall, and several students may pilot a digital story project as part of their final work this school year. If it were not for the PHSgeek project, we would have a difficult time helping students write, save, and print a simple paper.

While this video leaves a lot to be polished, I believe I have met the goals for this assignment. I have made several videos that combined still images with audio, but I have never edited a video from video clips. I used my rubric to evaluate this video, and I believe it lands right in the middle of the rubric. The topic is quite interesting to educators, who have often wondered if students could play a stronger role in maintaining school technology. However, there is more telling and describing than I'd like. It would be much stronger to show students doing the things that are described in the video. The technical aspects seem competent, with relatively smooth transitions and audio that matches the video segments. Most important, this work puts me in a position to begin leading our students and staff through their first digital stories next year, in a way that will produce final products much more polished than this one.



I have a clear plan for producing stronger videos with students and staff next year. The biggest obstacle this semester was having good raw footage. I would have had to re-stage significant scenes to have good footage, and I was not interested in staging fake scenes. One routine we will implement next year is to identify the situations we want to take raw footage of at the beginning of each class, and take that footage as those events happen. For example, when we advertise for new donations in the fall, we will film students talking on the phone with potential donors, and film people dropping off their computers. We will place a camera on a tripod and leave it running while several students begin their first installations, to capture short clips showing the genuine facial expressions of confusion and triumph that arise as students gain significant new understanding. The rubric for our videos next year will expect more as well, with a category such as "Uses Effective Footage". The strong category will say something like "uses meaningful footage taken during the life of the project being documented." I believe steps such as these will allow us to produce compelling videos that begin to tell the story of our school.

Overall, the use of digital stories can play a significant role in the development of our school culture. Our staff has a history of telling visitors the good things our students have done, without being able to show how students did these things. Effective digital stories will let our students' work speak for itself. As a final example, another interesting class we have is Rescue Physics. In this class students learn technical mountain rescue skills as a way of learning physical science concepts. The culminating project is a day on a cliff where students simulate a person getting stuck on the side of the cliff, and then rescue that person. Their performance is supervised and evaluated by local mountain rescue professionals, and they are evaluated by the same standards used to accredit mountain rescue teams internationally. This is perfect material for a compelling digital story, and next year digital stories will be an embedded part of the class.

Tuesday, April 13, 2010

Social Web: ubuntuforums.org

The most important online community I belong to for educational purposes is ubuntuforums.org, a forum dedicated to helping people use the Ubuntu Linux operating system. I joined the forum in June of 2008 when I decided to try Linux on a computer that had become so slow and bloated that I needed to replace it. I had many specific questions as I began to use Linux, and I found most of the answers I needed in the forum archives. With about 50,000 active members and over a million total members, most questions I had were answered in simple searches; I did not have to participate much to learn from the forums. As my involvement with Linux has deepened, I have begun to participate more fully.

The clearest value to me in having access to this online community is the knowledge that I am not alone in solving technical problems. I teach students to install Linux on donated computers, and we have revived our school's technology infrastructure using these donated computers. This project has only been possible because of the quick access to an incredible depth of technical expertise available on the forums. Without easy access to a large body of technical expertise I would never have taken on such a technically challenging project. Teaching students how to use the forums has meant that some students have gone beyond what they learn in my classes to use Linux on their own, and have improved their overall ability to solve technology-related problems.

A simple example of a problem I needed help solving involved making networked folders visible on the desktop. Our students save their work in their own "student storage" folder, which is stored on the school district's server. By reading the forum archives, I figured out how to connect to the district's server from the Linux computers, but I could not figure out how to make the folders stay visible as icons on each desktop. The thread I started about this particular problem is a perfect example of how quickly many problems can be solved when you have access to thousands of experts. In a very short time, much less than a day, I had the simple answer: access the networked folder by typing the path into an address bar as I had done, and then bookmark the resulting folder.

My contributions to the forum right now are limited. I know how to do many simple things, but I don't know how to do many things in depth. My contributions are limited to sharing my experiences in threads that have no conclusive answers, and in asking clarifying questions of people who post vague questions, in hopes it helps someone more knowledgeable be able to answer the original question. I plan to post more about school-based refurbishing projects and the use of Linux in schools, areas in which I am beginning to have some expertise.