Archive for December 3, 2008

Wikify Our Web Site?

What if we applied wiki concepts to our public-facing web site? Could we harness power of the commons to build a better present ourselves to our core audiences? Considering that most of these audiences are people already in our school community, this idea could have potential.

There exist many intermediate steps between controlling all of the content ourselves and opening it up completely to the entire world.

  • Encourage faculty and staff members to manage site content (as we currently do).
  • Include parent and student contributions (as we currently do on our internal web site).

  • Allow any community member to edit a site page, but review the submission before publishing it.
  • Allow any community member to edit a site page and immediately publish it.
  • Allow any member of the public to edit site content.

Could we take a step or two toward a community-generated school web site?

Update 1/9/2008: Dearborn Public Schools (Michigan) has done it.

Learn How To Program

(If you already know how to program, then learn how to program better.)

drupal icon

We often joke that independent schools aspire to be like small colleges. Witness the naming of University High School, College Preparatory School, and University Prep. Here’s a good way to emulate our tertiary friends — develop in-house programming expertise. As colleges and public school systems have learned, in-house programming expertise helps an educational institution develop best fit solutions at reasonable cost. We work in the field of technology. We should learn the tools of the trade and become producers, not just managers.

We are attempting to build the site development capacity to produce our next public-facing web site. Last year, we met with three local Drupal development companies in order to gain some perspective on the size and complexity of our challenge. We learned two critical lessons from these meetings. Local development companies preferred to take on the entire project rather than assist us with doing it ourselves, and we needed more in-house development expertise if we expected to pull off this project ourselves.

We have succeeded in improving our development expertise this year. I have accepted the challenge to master Drupal, especially version 6 and custom module development. I have learned through experimentation, books, forums, and specialized distributions. That’s the beauty of open source. The process is social and constructive. It’s easy to build up momentum. I build test sites and share my experiences through forums, Twitter, and on-campus conversations.

We have also increased our development capacity through hiring. In filling our open database specialist position, we did not count on gaining a programmer, but we were able to do so. Programming is a particularly useful skill in database management, since schools have seen so much growth in database-enabled web site services, such as grades, attendance, directories, reporting, and so on. Add our computer science teacher, and we may now have the capacity to build and support our own Drupal-based site. A particularly compelling web site project might even entice our computer science students to contribute.

The economic crisis has increased the importance of self-sufficiency. A first-class web site is integral to meeting our communication goals, but we should not pay FinalSite or Whipple Hill $50,000 for it. Developing a sophisticated site in Drupal or Plone will provide us with the capabilities and future flexibility that the school needs at a more reasonable cost. The effort we now spend building this expertise will be worth many thousands of dollars in the future.

Can you do it? Anyone can improve from their current skill level and add value to their work. Not so long ago, I moved from full-time teacher to half-teacher, half-academic technology specialist. My colleague in the IT department wrote the school’s first Perl script to collect student course requests. I was fascinated and studied the syntax in the script to write my own first, simple web applications. Two years and one school later, I installed and then learned to modify YaBB, a Perl-based discussion forum system. I then wrote a series of increasingly more important web applications for our school: student announcements system, single sign-on code snippet, community service hours tracker, alumni notes interface, and admission inquiry system. I am still a relatively amateur programmer, but I continue to learn from my peers and improve the quality of my work.

My next challenge is to move from custom, standalone development to configuring and adding functionality to a popular content management system. I now have an expert programmer as an office colleague with whom I can partner and from whom I can learn. If my dream comes true, I will gain collaborators at other schools who wish to share Drupal configuration tricks and develop new functionality for their public-facing web sites. Stay tuned to find out what degree of success we attain.

A Whole New Mind

I recently read A Whole New Mind (Pink), which explains the importance of right-brained thinking to success in the new economy. Two of the principles Pink explores rang particularly true for me: Design and Creativity.

Design

Pink helped me understand the rising importance of good design in the marketplace. In a world of plenty, consumers are increasingly choosing products with better design, and mainstream stores offer well-designed products at affordable prices.

This change in the marketplace may help explain some changes at our school. Over the past few years, our students have expressed a clear preference for Apple laptops over Lenovo. We used to purchase twice as many ThinkPads s iBooks. Now, the ratio is 5:1 in favor of Apple. Could a preference for good design in part explain this shift?

Students are rapidly adopting smart phones, starting with the iPhone but also including Blackberry, Sidekick and other popular devices. In part, the falling cost of the devices combined with the need of kids to stay in touch with each other may explain the trend. However, good design is critical to the students’ mobile experience, since they use the devices so intensively. The ability to merge entertainment and communication into one device is also a strong draw. We see almost no Windows Mobile-based phones, especially when compared with a corporate environment.

Students and teachers have expressed pretty high standards for the immediate usability of our IT services. “Intuitive” is a popular expectation. If a tool we roll out is not very usable, such as Outlook Web Access or our parent email lists, people tend to seek an alternative, such as GMail or Yahoo! Groups. Our IT staff has to devote more time to planning and design of the community’s tech resources. When we have the time, higher expectations compel us to produce better services. When our plates are already full, it causes workload anxiety.

Creativity

Pink builds a case that creativity will be essential to success in the modern economy. Catlin Gabel prides itself on teaching creativity and has launched initiatives to improve our work in this area. The school launched a capital campaign to raise funds for three initiatives, including the construction of a new creative arts center.

We have seen rapid change in the arts curriculum in recent years. Digital photography, film, and animation classes take full advantage of the ability of students to rapidly create, review, and experiment with their work in digital form. Film students self-publish on YouTube, and independent study kids are preparing submit Flickr slideshows of portfolio work as part of their college applications. Even extremely physical classes such as ceramics and woodshop capture digital images of work for recordkeeping and communication.

We recently held an event to celebrate the school’s rich history of excellent science instruction. Three guests delivered speeches via prerecorded online video. All underscored the importance of asking good questions and creative thinking to their professional successes.

Penetration

To what extent have these concepts of design and creativity penetrated the minds of the teachers and parents in our community, critical stakeholders whose support is essential to effect change? I feel lucky to work at an institution with a critical mass of tech-aware professionals, yet every institution I know is partway along the process of transformation.

I repeatedly face the same challenge: how to act as an effective change agent so that teachers and parents in particular will come to understand new media: its importance, how it works, and what it means to schools. I make progress but also seek better ways to communicate the message, structure learning experiences for others, and increase reach.

Web Site Design Portfolio

This portfolio shows major sites I have designed and built for organizations.

Catlin Gabel School (2009-present)
The school’s main, public-facing website provides a complete content management system, multimedia publishing tools, user accounts for students, staff, parents, and alumni, and ties into the school’s student information system. A layer of the site is login-protected, so that community members may publish articles, photos, and videos to the school community.

Catlin Gabel website

Tools: Drupal and Blackbaud, including custom PHP development.

www.catlin.edu

insideCatlin (2006-present)
This intranet web portal provides operational tools for the members of Catlin Gabel School. Teachers provide students with course materials and interactive discussion areas, departments publish commonly-used forms, and individuals schoolwide exchange information such as community service hours and textbook orders. The portal is organized by commonly-desired content and transactions, rather than by tool.

insideCatlin

Tools used: Moodle, Drupal, Blackbaud database access, and custom Perl and PHP scripts.

inside.catlin.edu

Shasta Mountain Guides (2005 – present)
The guiding company uses this site to publish trip information, collect reservations, solicit customer questions, and sell merchandise. Customers may browse through trip descriptions, photos, and testimonials and then book a reservation online, including payment. The co-owners maintain the Backcountry Blog and photo galleries on the site. A live weather feed and equipment lists help hikers plan their trips.

Shasta Mountain Guides

Tools: Drupal, osCommerce, custom Perl scripts, custom graphic design

www.shastaguides.com

San Diego Hat Co (2001 – present)
This web site allows the company to quickly publish an online catalog of hundreds of items to wholesale customers twice each year. Within the login-protected site, customers browse or search for hat styles, zoom in to view close-up detail, and see available colors for each style. The site also includes static pages for company information and an online store for retail customers.

San Diego Hat Co

Tools: Web Site Baker, osCommerce, custom Perl scripts.

www.sandiegohat.com

Maru-a-Pula School (2006 – present)
The school upgraded its web presence with a content management system and custom graphic design (Elavacion, Inc.). I moved the hosting service to the U.S., to improve upon the reliability of Botswana-based hosting services.

Tools used: Drupal

www.maruapula.org

San Francisco University High School (2002 – 2006)
This site provided for all of the public-facing web site needs of this school community: a description of the school program, faculty and staff contact directory, admission inquiry toolkit, alumni profile and notes tools, and Arts department mini-site.

San Francisco University High School

Tools: Dreamweaver, custom Perl scripts.

insideUHS (2002-2006)
This intranet school portal provided the community with communication and information tools: course web sites, athletics schedules, community service project database, independent study project database, community announcements, schoolwide events calendar, student photo directories, online file access, and student discussion forums.

Tools: Moodle, YaBB, phpBB, FileMan, Blackbaud database access, custom Perl scripts.

insideUHS

site snapshot at The Internet Archive (original site no longer available)

Gateway High School (1999-2002)
The graphic design of this site communicates the school’s unique position as a public charter school in San Francisco. Learning Center and People receive high visibility, and student work is featured on the home page.

Gateway High School

Tools: Dreamweaver

www.gwhs.org at the Internet Archive

Learning from snow days

snow

Portland isn’t accustomed to snow. This week, light snowfall and freezing roadways led to five consecutive snow days at Catlin Gabel and Beaverton public schools. It’s been different. What have we learned?

Upper school English classes proceeded with business as usual. They already run most of their class activities through Moodle. Only the in-class presentations had to wait. Other classes shifted to independent work or went completely on hold. Seniors applying to colleges continued to manage their materials using Naviance.

When (if?) we return in January, we will likely consider whether to create an online learning plan for extended school closures. Some schools in Seattle and mountain regions have these plans in place. I will want to find out more about their planning process. Most teachers use their course web sites to host some materials — only a few operate their entire classroom process through it. Most teachers would have to learn how to manage an online learning environment and what activities could transition well to the online space.

The IT department successfully stayed home all five days but continued necessary work through our various network services: email, web sites, and SSL-VPN.

The web-based VPN was most critical. Our $500 Sonicwall SSL-VPN appliance requires no client-side configuration, a major step forward in usability and administration from our previous VPN technology. It supports up to seven concurrent users, which has been more than enough for our small user base, since we typically work on campus. Yesterday, our communications team used VPN to send out a large email blast to the community. The alumni office used it to prepare an upcoming communication. I used it to reset two passwords for stranded users.

With everyday business conveniently out of the way, I spent a lot of time on Drupal site configuration. As we consider the platform for our next public-facing web site, I have learned the most from building a prototype. I enjoyed starting anew with a fresh install of Drupal 6. I also installed Plone but haven’t had the chance to open the requisite firewall port to really play with it. At what point does an open-source test become part of the development of the production site? I am at least migrating a lot of content as I go.

Working from home for several days makes me appreciate the in-person contact more than usual. This is why we work at a school — for contact with students, teachers, and staff attempting to create the best educational environment possible. These three weeks should comprise a true break.

Happy holidays to you.

Placefulness in Drupal

Google the terms “placefulness” and “Drupal” together, and the top results all point to … Plone! As we move more deeply into our web site design, we are gaining a better understand of our site needs.

Placefulness: the Plone community makes frequent use of this term to describe how the system automatically retains the “location” of each new document one creates in the site. In end-user terms, the user clearly knows where he/she is within the site at all times. This makes Plone well-suited for sites with a clean content hierarchy. Contrast this with Drupal, in which new nodes have no location by default. The system only automatically assigns them a node ID number. Drupal developers use content types, menus, tags, views, and modules to create the illusion of place and hierarchical structure.

Many of our users, responsible for a particular school program, need to manage the hierarchy of article in their content area. If this process is difficult to use, it will challenge a lot of people and become an obstacle to content creation. We must also consider permissions and menus. Plone cascades editing privileges in a way that Drupal does not — if you can edit the parent, then you can also edit its children by default. Users may expect menu items to appear automatically in a hierarchical content structure.

Recognizing the need, the Drupal community has generated a number of modules that help automatically link new nodes to their location within a hierarchical content structure. Most obvious is the book module, distributed with core. Users may create child pages, and the Book Navigation feature automatically generates a book menu on the fly.

I learned that it is best to automatically display Book Navigation on whenever one is in a book. If one restricts the block’s visibility based on the URL path, then one has to specify custom URLs for all of the pages in the book or use PathAuto to automatically generate them. This quickly becomes a hassle again.

At first glance, it does not appear straightforward to mix book and non-book menu items in these menus, which could be a problem. We could create separate menus for structured content navigation and links to interactive pages (a.k.a., transactions). While that would work better within Drupal, would it make the site more or less usable to our visitors?

menu 1

menu 2

To further complicate matters, we want the landing page of each top-level section to show the news items for that category instead of a book page. Now we need to make the book navigation appear before we are actually in the book. This code snippet makes book navigation appear on all pages — we would have to modify it to display a navigation block to match the book one is about to enter. Another possible direction is to insert PHP code into the book landing page to manually query the database for news items related to that book. That may be more straightforward.

Good news: I just tried two new tricks (for me). I inserted PHP code into a book page to mix dynamic with static content. Drupal provided me the SQL query in the Drupal 6 View interface.

$sql = "SELECT node.nid AS nid FROM node node LEFT JOIN term_node term_node ON node.vid = term_node.vid INNER JOIN term_data term_data ON term_node.tid = term_data.tid WHERE (node.type in ('news')) AND (term_data.name = 'admission')";

$result = db_query($sql);

while ($row = db_fetch_object($result)) {

$node = node_load($row->nid);
print node_view($node);

}

And also used a redirect to send the user from a static page to a separate, dynamic one.

header('Location:http://ww2.catlin.edu/scripts/admission.pl');

(I know, I’m showing my novice Drupal learning curve. It’s my blog.)

We could throw in the towel and manually manage the menus. We really want the ability to post a single article to multiple places in the hierarchy, which seems to run counter to any automatic menu generation feature. However, if a user responsible for a small portion of the site needs to scroll through the entire site menu hierarchy to place their item, they will be stopped in their tracks.

Node Hierarchy appears to address our concern directly, allowing a user to specify the child relationship of a new node to an existing one. It’s unclear whether development on this module is sufficiently active to use on our primary, public web site. The Drupal 6 version is currently in alpha. I also question whether it uses a popup menu to select the parent node, which would be very awkward on a large site. Node Hierarchy is incompatible with book, which would mean that we were placing our trust in a module with less community support than Book.

I have yet to investigate breadcrumb navigation, which would also help strengthen the sense of placefulness of each node. I hope it will play well with the other hoops I am jumping through to make this work.

For classroom pages, it may make more sense to use Organic Groups. That should allow teachers to post articles, manually maintain a simple menu, and create items for other content types as we support them (image galleries, calendar, blog posts, etc.). This will also allow individuals to maintain both public and private content, which should help us both maintain visibility of classroom programs and protect the privacy of our students, teachers, and parents.

Amherst College developed their own solution, Monster Menus, to provide this functionality to their site. However, development was so extensive that they were not able to publish a module for this, despite recognizing the high levels of interest and expressing their willingness to share.

If we need to choose between Drupal and Plone, we may need to determine the core nature of our site. Is this a traditional content repository with some interactive features, or is it an interactive site with some hierarchical content? Will the interactivity be mostly one-way (collecting information from school community members), or will we really reply and produce lots of original, dynamic content ourselves? In other words, will we really have the kind of community site that Drupal was invented to provide? We don’t want to constantly swim upstream against Drupal’s core tendencies.

The ace up our sleeve is that we can set up a test site to experiment with different potential solutions before we commit to a development platform.

I enjoy interviewing

When I told a colleague that I was enjoying interviewing for a database specialist, she thought I was being facetious. However, it’s absolutely true. I really enjoy listening carefully to statements into which our candidates have put so much thought and preparation, presentations that attempt to reflect their very best qualities.

Our colleagues are so responsive to invitations to join the selection committee. A group of peers from around the school, some technical and some not so much, prepare thoughtful questions and show considerable investment in the selection of a future colleague. I just listen to their questions and the candidate responses.

This week, I scheduled a lot of individual time with each candidate. We walked around campus chatting about issues technical and not. I just wanted to get a gut feel for what it might be like to work with this person. This is an overt attempt to get away from my usual practice of being very analytical and strategic. I need some “soft” input into my decision making as well.

I attempt to imagine each candidate’s potential. What exciting contributions may that person make to the school in the future? Build new systems? Bring people together toward a common purpose? What connections can I make between their experiences and apparent qualities and the challenges that we face?

It will only get more exciting when our choice agrees to join us, and we start to turn possibilities into reality. Stay tuned.