Log in

About | How do I....? | Subscribe


Posts Tagged ‘Drupal’

Death to MYddlebury

September 2nd, 2009 by Ian McBride

This post was originally an email to “the people who cared most about this issue”, which I immediately realized was the most conceited possible address for a message on this subject: the personalizable features for the new website. By its very nature, this concerns everyone who works, studies, and teaches at Middlebury, all of whom care on at least a small, perhaps unconscious level about whether they can create their personal web space or maintain a profile on our new website.

At least, it’s been my hope since the beginning of this project that people cared a little about this.

Still, sometimes it takes a conference room of 30+ people to convince me that I’m wrong about something. This afternoon we met to discuss a possible solution for implementing a personal portal experience on our new website. There was plenty of criticism for the proposed software and I didn’t take it very well. During the meeting and then later in the afternoon I advocated a compromised position: we should implement the parts of this software that dealt with creating personal web spaces and profiles and ignore the rest. After a few hours of reflection, and a few beers, and a brandy, and a glass of port, I’ve come to a different conclusion: we should scrap the whole idea, look back at the features people either requested or were prematurely promised and develop a method to get that stuff working on our new site.

Here’s what the application we looked at this afternoon offered:

  • A directed announcements page
  • A static list of constituent-oriented links
  • A RSS feed reader
  • Personal web space for all users
  • User profiles fed form a central database like Banner
  • Alumni gateway features like a career network

Here’s what we’ve actually been tasked with delivering:

  • Professional profile pages for Faculty and Staff
  • A page of personal bookmark links
  • Maybe some sort of iGoogle thing. That’d be really cool!

That’s it.

Let’s deal with each of these point-by-point.

Professional profile pages

We already offer several systems for building out your personal web space. Many users have web-accessible directories on our old UNIX server where they can upload HTML documents. I got one of these accounts when I was job shadowing one of the system administrators at the college in 8th grade and then used it again when I took an intro CS course at the college while in high school. The server’s been upgraded a couple of times since then and now runs some version of linux, but it’s basically the same set up. If people want a bit more, they can create their personal web space on Segue, our custom developed LMS, or here in Wordpress, or as a user page in one of our wikis, or as a profile posting on our current CMS, or in a couple other really specialized systems. We will very likely soon also offer Google Apps for Higher Education, which will allow people to build out their personal site using Google Sites.

But the idea with these professional pages was that people would want to present information about themselves in a highly structured format, integrated with our new website and content management system. Faculty might want to post their CV, academic history, and current courses on a page that as the same look-and-feel as the rest of their site, delegate permissions to allow the academic coordinator for their department to help them update the information, and provide some dynamic content from our campus directory or course catalog. Doing this requires more of a thought out, structured system than we’d be able to offer with basic HTML document web hosting or even Google Sites. The idea was, therefore, to create a basic web space for everyone within our new CMS and let them build out their site in this space.

This creates some rather obvious problems. If this is just basic web space, how to we integrate it efficiently with the course catalog or online directory? How do we automatically enable departmental colleagues, such as the academic coordinators, to assist in building out the content for these profiles, as they have done in the past? If we want to add a piece of functionality to every one of these professional profile sites, can we do it in an efficient manner? Can we aggregate this content easily, knowing that our central database system doesn’t tell us which people belong to which departments or workgroups? How do we reuse this content in other areas of our site?

If we were to just turn on really simple web site editing for all users, very few of these things would be possible.

Instead, we should do what we have already begun to do for Monterey: use a specialized template in our new site for professional profiles that includes fields for all of the information we want to know about the person and might choose to use when segmenting or aggregating the information. We should then have these profiles pages created within the departmental or office sites relative to these people. We can then use the power of our new CMS, Drupal, and its Views module to create pages that allow the user to quickly and efficiently find the people they want to know about. An example of this already in action can be found on the development version of the MIIS site (here’s a link that will only work on-campus and will break soon: http://miis2.middlebury.edu/academics/faculty).

We have never been successful demanding that anyone use a particular system and will, naturally, still offer all of the options for creating your personal web space that I mentioned above, but for creating the types of profile pages that we know need to be present on the official departmental pages, we’ll offer this option with encouragement and development support for integrating the “official” profile with the database systems that already contain much of the information we’ll be presenting.

A page of personal bookmark links

This is the most important feature of our new website for our internal audience. During meetings last winter, faculty, staff, and students were both promised that this would be available and told us that this feature was required. Accordingly, we need to find a way to make this work. The resulting system cannot feasibly be one where the user can simply click a button on any page of our site to add it to their personal bookmark list; such functionality requires an integrated portal product that we are not able to run due to pressure from faculty to run systems such as Wordpress and MediaWiki for their specialized uses rather than a single portal application like SharePoint, Luminis, or the custom systems developed at Amherst and Gettysburg. However, that does not mean that we cannot offer customizable gateway pages with the following features:

  • A default list of links
  • A prominent form, encouraging users to log in and edit their list
  • Drag-and-drop reordering of links on the page
  • A quick webform where the user can paste a URL and enter a simple title for the link page
  • Integration with our single-sign-on system, so if the user is already signed in to one of our web applications they will be presented with their custom link list immediately upon selecting one of the constituent gateway options from the global site footer

Some type of iGoogle thing

We know that our advanced, cutting edge users want to personalize their web space with drag-and-drop widgets, design their own homepage experience and have deep, interactive ties with our core systems. We have also heard, from several of the design vendors who visited us during our RFP stage as well as intelligent folks on campus, that rebuilding a local version of a really cool application like iGoogle is a fool’s errand. As soon as we’re done with our version of it, Google will come out with a really cool new feature that ours doesn’t have and people will just keep using Google’s version of the application.

Much as I want to believe differently, I have it on good authority that Google has both more and better developers than Middlebury College. We’ll likely never be able to offer a better version of iGoogle than they have already created, so we might as well use the instance they’re giving us. We’ve heard that the iGoogle that comes with Google Apps for Higher Education is considered “deprecated” by Google. Still, I remember a phone conversation that Chris and I had with a Google representative in 2006 who assured us that Google would soon be charging institutions like ours over $10k a year to use the Google Maps API without advertising and that this change was only “months” away. By my count, it’s been at least 40 months away at this point. Of course, we can never tell when a 3rd party vendor will unilaterally kill support for an offering that they’ve told us they’re killing support for, but we’re talking about something that we already know will be used primarily by our power users.

They can deal with it if Google decides to move on.

Welp

To summarize: I think I was incorrect about the necessity of implementing a local profile portal to serve the features our requirements gathering effort found last winter. When this post was still an internal email, I was going to request that I be given the opportunity to publicly apologize for  my behavior this afternoon in attempting to push this through rather than listen to the honest feedback coming from our staff and students present at the meeting. This blog post should serve as that apology. I think I get it now and rather than implementing services that I think would be really cool, will advocate for things that accomplish the actual goals you set for us in this project.

I recently emailed my boss saying that my time working on our website after hours like this was at an end, but I find I can’t really operate that way. If I didn’t spend the time to type out this post, this would just be gnawing at me all night and that’d be a worse punishment that taking the hour or so required to get my thoughts down in writing. While I’ve said that I think I’m now more correct in my thinking about how this should all work, I have to acknowledge that I was incorrect previously which could very well mean that I’m still laboring under misconceptions. Please use the comments field here to let me and the rest of the development staff for Middlebury’s new website know if I’m still off my rocker on this issue.

Answers from Joe (paraphrased)

August 26th, 2009 by Ian McBride

1. Can we have a folder in middfiles for documents related to the LIS web redo?

Sure. Just create a new folder in the Web Redo Project Managers area for LIS.

2. When will the next round(s) of Drupal training be offered?

A second round of test training will be offered to the Project Managers group starting the week of 9/21. LIS Website Team members may request to attend as may the LIS Project Managers, though it would be a good idea to ensure that any who do attend are caught up on the current process, workbook, etc. Also, all involved should understand that they probably won’t be able to immediately go back and edit their site in Drupal after these sessions. There will be training work shops and sessions offered later in October for content editors at which point people should be doing content editing in the Drupal CMS.

3.  Can we schedule a meeting with White Whale during their visit?

Probably. Joe is, at the (not so) very least going to schedule a meeting with Tonya, who is responsible for the IA & Content Recommendations documents. I have a feeling that most of our questions will involve her. Joe will try to have the others from White Whale present for this meeting, if schedules allow. We should have a list of questions we want to ask going into the meeting. They will be on campus the week of 9/14.

Research: Support for Unicode, Diacritics and non-Latin-based character sets

July 20th, 2009 by Alex Chapin

For updates on this research topic, see:
لإثسفهىل

Which of our current web applications or apps we are considering support Unicode, diacritics and non-latin based characters sets.

I know Segue supports all of these.  I think Moodle does as well.  Not sure about MediaWiki, Google Apps, WordPress and Drupal….

Video on Drupal

July 1st, 2009 by Ian McBride

I’ve added the Video Filter module to all of our Drupal pre-production instances to help those of you who are testing Drupal or doing preliminary content development on those servers. You can use this module to include video from one of the 15 sources that it accepts out of the box, like YouTube, Google Video, and Vimeo.

This uses the format [video:URL width:X height:Y align:left/right autoplay:1/0]. For example:

[video:http://www.youtube.com/watch?v=G8pPiS7aUGY width:300 height:350]

I also extended this by creating the MiddMedia Video Filter module which uses the same syntax as the Video Filter module, but allows you to add videos from our local streaming media server, which supports flv and mp4 video as well as mp3 audio. All the optional parameters work for the videos, but you can’t set them for the audio player. For example:

[video:http://middmedia.middlebury.edu/media/imcbride/walkingTour.flv width:400 height:300]

[video:http://middmedia.middlebury.edu/media/imcbride/Google_Reader2008-12-04.mp4]

[video:http://middmedia.middlebury.edu/media/imcbride/WS_30019.mp3]

Internationalization and Translation for our new Web Site

June 11th, 2009 by Ian McBride

I’ve added language packs to a development version of the Drupal site for each language where Middlebury has a Language School. These language packs help to translate the user interface of Drupal. However, most of our users will be interacting with Drupal through Monster Menus, rather than the default interface. Fortunately, Drupal provides an interface to automatically detect strings in UI screens and adds them to a database of strings that can have translations. Both Middlebury and MIIS should consider who within their organization could provide interface translations for each of our supported languages.

Speaking of which, here are the language packs I installed:

Language
Arabic 0/5373 (0%)
Chinese, Simplified 2511/5373 (46.73%)
Chinese, Traditional 2514/5373 (46.79%)
English (built-in) n/a
French 4695/5373 (87.38%)
German 4500/5373 (83.75%)
Hebrew 1450/5373 (26.99%)
Italian 3488/5373 (64.92%)
Japanese 2883/5373 (53.66%)
Portuguese, Brazil 2650/5373 (49.32%)
Portuguese, Portugal 0/5373 (0%)
Russian 2363/5373 (43.98%)
Spanish 2539/5373 (47.25%)

The second column shows the number of strings and percentage of total strings the translation pack comes with. Note that there currently is no supported language pack for Drupal 6 for either Arabic or native Portuguese, though the maintainer of the Arabic language project just started up work on it again this week.

None of this needs to be decided today, of course, but do we want to support both versions of Chinese and Portuguese? Are there other languages we want to support? Middlebury and MIIS can have either the same, or different, sets of languages enabled in their site, so which would each site like?

And that’s just interface translation! We should also be considering content translation, as we’ve already seen that this will be a likely prominent feature of the MIIS site and I would be shocked if it weren’t featured at least on the language oriented parts of Middlebury’s site. When talking to areas of the college about content development, be sure to mention this.

Getting to Know Drupal

June 5th, 2009 by Bryan Carson

drupal-logo1You’ve probably heard Drupal mentioned in discussions about our new website, but you might not know what Drupal actually is. Drupal is a web-based Content Management System, similar to the software that our current website runs on, but also different in many ways. In this session, Ian McBride will discuss the things that makes Drupal unique, why we chose Drupal as a platform for our new site, and look at some examples of the ways we can extend Drupal to improve our website.  We’ll spend some time looking at an extension developed by Amherst College, the only other school running its entire web presence on Drupal, named Monster Menus which we’ll be using as part of the core functionality of our site.

This session requires no technical knowledge of our website, content management systems, or programming, but is a great opportunity for you to ask questions on those topics.

When:  Monday, June 15 from 3:30-5 pm
Where:  LIB 105

LISterine Workshop: Getting to Know Drupal

June 4th, 2009 by Ian McBride

A short programming note: I’ve been asked to lead a presentation on the Drupal platform for staff in LIS. This will be Monday June 15th from 3:30-5PM in LIB 105. Here is a synopsis of the presentation:

You’ve probably heard Drupal mentioned in discussions about our new website, but you might not know what Drupal actually is. Drupal is a web-based Content Management System, similar to the software that our current website runs on, but also different in many ways. In this session, Ian McBride will discuss the things that makes Drupal unique, why we chose Drupal as a platform for our new site, and look at some examples of the ways we can extend Drupal to improve our website. We’ll spend some time looking at an extension developed by Amherst College, the only other school running its entire web presence on Drupal, named Monster Menus which we’ll be using as part of the core functionality of our site.

This session requires no technical knowledge of our website, content management systems, or programming, but is a great opportunity for you to ask questions on those topics.

I’ve prepared an agenda of topics as well:

  1. The Drupal CMS (20 minutes)

    1. Anatomy of a Drupal Page
    2. Drupal Nodes vs. MCMS Postings
    3. Modules
    4. Why we chose Drupal
  2. Amherst’s Monster Menus (10 minutes)
    1. Creating a site hierarchy
    2. Delegating permissions and design
    3. Extending with RSS
  3. Free Form Questions and Answers
    Your opportunity to ask whatever you’d like about Drupal’s features, framework, and functionality or about our future website’s structure, extensions we’re planning, and our philosophy with regards to requests for new modules. To accommodate those with scheduling conflicts, feel free to come and go as you please during this.