Last year, I built a site to allow parents to register their children for Catlin Gabel’s summer camps. This helped our small staff more easily handle hundreds of registrations each spring and provides our parents with immediate feedback for their summer plans. This year, I incorporated this into our new website by rebuilding the features using the same technique. The site had to include courses from a print catalog, accept credit card transactions, enforce enrollment limits, record student information, and new this year, require a complete medical release form as part of registration
This technique relies on just four modules: Ubercart, CCK, Views, and Webform, three of which I was already using widely throughout the site. Although I was worried about the increased load of installing Ubercart on our site, I found through testing that RAM use and page load time did not differ significantly between a copy of site that included Ubercart and a copy that did not.
Summer Course is a custom Ubercart product type, which creates a new custom content type to which one may add fields. I added select lists for grade and session (week). I chose not to use taxonomy for this, because I would have more control over the display of CCK fields in the node editing form, and because these value lists only apply to this one content type.
One view presents users with the main list of summer course offerings, offering both a link directly to the detailed course description and a button to purchase immediately if you know already the courses you want to choose. Exposed filters allow one to limit the list to certain grades or weeks. I display the Ubercart-supplied shopping cart block on this page.
The cart and checkout processes are very standard. Users review their cart and then move to complete checkout. I bought a monthly subscription to PayPal Website Payments Pro, so that our website could send purchase information directly to PayPal and receive an immediately reply, without the user leaving our site. We use PayPal’s admin interface to transfer funds to the school’s bank account and issue refunds. As an added benefit, we do not store any credit card information on our servers. In order to make another feature possible (see below), I require the user to log in to access checkout.
I combined student information and medical release into one form. I could have built the form in a custom module, but I chose to use Webform in order to save time and make it easier for others to modify the form in the future. I route parents from the Ubercart screen to the webform and then route them back to checkout by setting the webform’s “thank you” page to /cart/checkout.
I wrote a custom Ubercart module to add a “student information and medical release” panel to the checkout screen. This is done by invoking hook_checkout_pane in my module. To require the completion of this form, my custom pane creates a select list showing all of the medical release webforms that the user has created on the site. Since the medical form also contains the student information, the user has to complete one for each student she wishes to register. Completing the form makes student names appear in the required select field.
The custom module saves the submitted webform id in a custom database table, linking each course registration to a specified student. A couple more custom functions hook into the checkout review and invoice panes, displaying the student’s information through the rest of the checkout and confirmation process.
A second custom module allows our staff to export orders from the system for reconciliation with any paper orders received and the billing process. I prefer not to have the website handle too many of the back-office functions of the program, since it would take so much additional effort to include accounting reconciliation and other administrative features that only a few school staff members will use. The website is primarily for the many end-users who will sign up for courses.
The Ubercart “stock” feature allows us to limit online enrollment for popular classes, so that the website does not unwittingly facilitate over-subscription.
A little CSS and theme work lines up the Grades field values in a row and arranges some webform sections side-by-side.
Ubercart offers just about everything we need out of the box, provides a framework for adding some features, and keeps this important tool within our main website.
Tags: drupal, parent, registration, summer-camp, ubercart
Last week, I noted some interesting developments involving Drupal and secondary schools.
New Schoolyard
NewSchoolyard launched at NAIS, promising inexpensive school Drupal sites built on a template. This fills a hole in the school website market between buying an expensive product, hiring an expensive developer, and doing it completely yourself. In addition, New Schoolyard offers products and services at different price points, allowing schools to decide how much of the work they want to take on themselves or hand over to this company.
If successful, New Schoolyard may open the door even wider for more schools to adopt open-source websites and learn how to modify them. I greatly anticipate the first sites they will create and the code that they promise to contribute to the Drupal community. I have found in my own work with Drupal that it is a challenge to create a customized site that others can then truly make their own. I wonder what strategies New Schoolyard will employ to make full ownership possible for their clients.
DrupalSchools
Around for a while but flying under the radar, DrupalSchools.net is readying for a relaunch. Go check out their list of Drupal sites, tips and tricks, and thoughts on the potential role of Drupal in changing how schools work. This site promises to serve the secondary school community and put the thoughtful use of technology before techie talk. Also check out my list of school “front door” Drupal sites that I started in 2007 and have added to a bit over time.
More interest in our work
The frequency of inquiries into our work at Catlin Gabel continues to increase. Some of these schools are tinkering with demo Drupal sites, others are launching a community intranet, and others are moving toward a new, public-facing website. More schools are discovering the benefits of working with a piece of open-source software before committing to it and sharing their knowledge and perspectives gained.
Tags: drupal, webdesign, webdevelopment
Publication of student work on the website extends the learning community beyond the classroom to the entire school community. Key to this effort is a school website that includes a community publishing platform. Students and teachers choose whether to make the work viewable to the school community only (students, staff, parents, alumni) or the public, depending on the pedagogical goal of the work. Learning becomes a community endeavor rather than only a classroom pursuit, increasing authenticity and mutual understanding of the work that happens at school.
Click on each title to view the content at Catlin Gabel.
Students tackle topics of sustainable development in Portland, “The City That Works.” During the school year, we offer a semester elective. The summer brings an intensive program with students from different schools.
Students report on their independent research plans, progress, and results. The teacher provides feedback in the form of comments. Only one of the students has made her blog public, so you won’t see the work of the others on this page.
The science department invites all Catlin Gabel community members to contribute items of interest to this blog.
Blogging about global trips increases the sense of community experience. The 15 lucky students who go on the trip become ambassadors for the rest of the school, no longer the sole beneficiaries of the experience.
Students get out into the community to research the hispanic presence in Oregon. Through the blog, they report their findings back to the community and help educate us all. This project includes a lot of primary audio and video footage from Portland.
Honors Arts Projects portfolios
Students attach photo galleries to their blog posts to create a portfolio, in this case to support their college applications.
Fifth grade Fractured Fairytales
Students create “alternate” versions of classic fairytales, then we publish them so that parents and others students may read them as well.
Sixth grade Language Arts Poetry Box
Students write poetry, but then the teacher publishes both the text and an audio version for parents and the rest of the community to enjoy.
We have now collected two years’ worth of blog posts from seniors reporting and reflecting on their spring projects. Up until now, all of the posts have been for the Catlin Gabel community only. This year, students will make the public/community-only decision for each post. Watch this page in May 2010 to follow their progress.
Tags: blogging, community, constructivist, curriculum, education, learning, progressive
Like many schools, we cut the school’s IT operating budget by 25% this year. To minimize adverse effects on technology use at school, we employed the following strategies.
Adopt open source
We have benefited tremendously from building expert, internal capacity for open source website development and web server software management. In past years, we launched and then grew a sophisticated intranet website at no cash cost to the school. This year, we built our new, public-facing website on Drupal, with existing personnel, for a total cash cost of $6,000.
I believe that every school should work toward mastery in one type of open source software that meets a current need. Our users and constituents demand increasingly sophisticated applications of technology, yet our budget will not keep pace with these expectations. We have taken care not to rush, building up internal capacity to master these tools over time. Were we to rely on external contractors to implement open source solutions, then it could have become at least as expensive as commercial products.
Other schools specialize in different money-saving applications of open source: desktop software, learning management systems, operating system software, office suites, and more.
Cut back on expensive, specialized solutions
Each Smart Board we purchase improves just one classroom. Each laptop computer we purchase is available to everyone. They cost about the same amount of money.
Also about the same price, an entire class may use a set of 10 Flip video cameras to collect footage for a great variety of different productive learning objectives.
Introduce some limits, while extending a helping hand
The cost of network file backup and tape storage has increased for us each year. We are now implementing 10GB primary file server quota while still storing and backing up all of the important school data we can identify. When a teacher or staff member hits the limit on the primary file server, we work with them to identify any duplicate, personal, or unnecessary files and separate changing, newer files from older, unchanging files. We move the older files to a second, archive file server that we copy to tape less frequently. In this manner, we consume far fewer backup tapes than before while still protecting the school from data loss and saving important files for the long-term.
Preserve or expand core network services
This is no time to cut back on servers, server software, and network infrastructure. We have cut end-user technologies before compromising on the core. Server and network functions affect every user every minute that they are connected to the network. Maintaining quality sustains everyone’s experience. We have kept servers on their regular replacement cycle and are just now considering virtualization for lightly used network services. Our next generation of wireless network and network access system will do more than the previous systems, with less management required, at a lower cost than before.
Strategically manage computer lifespan
This one has been tricky. We pinpointed very specific batches of computers to operate for a year longer than planned. We noticed that some users were pretty light on their machines and provided them with used computers instead of new. We stretched our lower school computer lab for an additional year, because they had had their motherboards replaced under warranty just three years ago. Otherwise, we have stuck to our normal replacement cycle, out of respect for the fragility of laptop computers in their fourth and fifth years.
Consider some new technologies
This is no time to broadly adopt new kinds of devices, but some new devices may replace the old, at a lower cost that before. We will consider wall-mounted projectors in locations where we would normally mount from the ceiling. We will pilot netbooks to replace one of our middle school mobile laptop carts, taking great care that we select a model that performs reasonably well compared to our current MacBooks. Otherwise, we find netbooks to be cramped and difficult to use, not a straight replacement for traditional laptop computers.
Break some old habits
Once-essential resources and services may have lost their value over time. We reduced the size of our upper school PC lab in half, redistributed responsibilities for our annual laptop technology fair, and removed Drupal from our intranet website. We continue to streamline purchase options for the upper school laptop program, now recommending the two laptop computer models that match the program, as opposed to offering every model available from each manufacturer.
Continue to plan well
Each year that we devote more attention to winter planning, spring and summer projects go more smoothly. This year, we started earlier than before and formalized biweekly planning meetings, and already we are purchasing and implementing network devices that will allow workstation deployment to start earlier. We have also lined up our best cadre of summer workers yet. This group of current students and recent graduates is key to our ability to touch all machines and improve our deployment strategies each summer.
Build one’s personal learning network
This year, I have formed new collaborative relationships with tech staff at other schools, without ever leaving campus. This has allowed me to gain feedback on my ideas and profit from the good work of others. As it is a slow year for conferences in Portland, I have so far avoided traveling afar for an expensive conference experience.
What, no Google Apps?
I appreciate that Google Apps has helped many schools provide the latest communication and collaboration tools at low cost. We decided to stick with Exchange Server because we had concerns about losing control of the school’s data, the inability to do anything during periods of downtime, and the hidden costs of migration, archiving mail, and supporting users.
Your turn
What are you doing to maintain quality and capacity during lean times? Please comment below.
Tags: budget, drupal, google, linux, moodle, naisac10, open source, recession, Strategic Planning, windows
French 2 students share recipe videos for crepes, banana bread, and other delicious treats. The assignment assessed students’ vocabulary, pronunciation, and ability to work in small groups. Some students used just the built-in camera in their laptop computer to record the video!
We recently made a Kindle device available to families to borrow and try, in case they were curious about the device. Our cross-departmental technology committee evaluated the device and did not find a compelling reason to consider widespread adoption of the Kindle or other electronic reader devices. We will certainly continue to watch this product niche in the future.
Some Kindle features
The Kindle and other e-readers use a new kind of screen called “digital ink.” As opposed to conventional display screens, digital ink screens do not use a backlight. The screen is easier on the eyes than a laptop screen and remains visible in bright daylight. Because the Kindle is not backlit you can’t use it in the dark without an additional light source.
The Kindle does a good job increasing text size, changing screen direction, and altering the number of words displayed per line.
The Kindle can store up to 1,500 books at one time. It can display documents in the Amazon, Word document, HTML, text, and PDF formats. It can also play MP3 and Audible files. Some file formats require conversion through Amazon’s email system.
The Kindle can read the text on the screen aloud but it does so poorly and really isn’t useful as a text-to-speech tool.
The Kindle includes some bookmarking and annotation features.
Note taking was difficult. It was uncomfortable to use the small keyboard to add text.
The battery lasts a long time—up to two weeks if you don’t make extensive use of the wireless browsing capabilities.
The Kindle includes a web browser and wireless connectivity that uses the same 3G network used by cell phones. There is no charge for the wireless connectivity at this time. The Kindle must be registered in order to use the wireless capabilties.
Books sold by Amazon for the Kindle are sold in a proprietary format that can only be read using Amazon software. Currently, that software is available for the Kindle, Apple’s iPhone, and Microsoft Windows. Amazon is working on software to read Kindle format books on Mac OSX and Blackberries.
Once you register your Kindle device with Amazon, you may purchase additional texts with one click. This could be a liability if you lend your device to someone else.
Some colleges, including Reed, have experimented with using these devices in their instructional program. We do not yet know whether these colleges are planning large-scale adoption. Read about Reed’s experiment.
Other e-readers include the Barnes & Noble Nook and the Sony eReader. Reviewers suggest that they each have their pros and cons.
The Kindle may prove useful to students who seek the convenience of an e-reader or benefit from the additional features such as changing text size. These devices are an example of an emerging technology, and we will watch their capabilities as the technology matures.
I like sticking with the underdog. In 2005, I compared several blogging platforms and settled on Nucleus CMS. For five years, I have happily blogged with that software, enjoying its fast speed and sufficient range of plugins. Many thanks to the Nucleus development team for producing a superb, low-overhead blogging platform.
Over that time, the Wordpress plugin library continued to grow. Finally, the gap between it and Nucleus became too much. I had to work around Nucleus’ image embed codes and email notification systems. I repeatedly cleaned up rogue HTML inserted into template. It was awkward to post from my phone. I wanted social media plugins. I finally capitulated and migrated to Wordpress.
Migration went really smoothly. Thank goodness for structured content, self-hosting, and the open source community! I installed James Sasitorn’s import utility and added some code to copy images to the new installation. Because I hosted my own blog, the script was easily able to migrate content from one set of database tables to the other.
Wordpress was really easy to set up. I had the blog running and old posts imported within about an hour. I spent another hour researching, installing, and configuring a half-dozen plugins. I even migrated the old Nucleus item ids into the Wordpress database and wrote a tiny script to permanently redirect requests to old Nucleus URLs to the new Wordpress ones! This should keep links from Google and other websites from breaking.
I plan to keep this blog simple. Let me know how it works for you. Please let me know if anything breaks from the old site.
Tags: blogging, nucleuscms, wordpress




Richard Kassissieh is Director of Information Technology at