I attended a conference yesterday on the MyUOC university home page project (http://macedonia.uoc.es/wordpressmu/edtech/my-uoc/), developed at Universitat Oberta de Catalunya. Essentially, it’s a personalizable home page based on the design of iGoogle that allows users to access widgets developed locally by the UOC staff, import widgets that they already use from iGoogle, or write their own (if they know how in HTML). The presentation was very impressive and our discussion with the UOC staff afterwards was fruitful.
We were previously considering implementing the personal home page portion of our webredo project using ASP.NET Web Parts (http://msdn.microsoft.com/en-us/library/e0s9t4ck.aspx), which store personalized data about page controls in a custom SQL Server database. At the time, we believed this to be the best available solution to implement a custom home page, but our introduction to MyUOC has changed at least my opinion on this.
Here are the advantages of MyUOC over ASP.NET Web Parts
- Interface work for adding/removing/customizing widgets already done. Programming a usable interface would have been the most challenging aspect of this project.
- Interface works in all browsers, except widget drag-and-drop in IE 6, though there’s a menu to move widgets for browsers where drag-and-drop doesn’t work. ASP.NET web parts don’t support drag-and-drop for non-IE browsers.
- MyUOC allows users to import widgets from iGoogle that they’re already using. This is great for user buy in and defuses the argument of “I’d love to use Midd’s home page, but I really need the googly eyes that follow my cursor around the screen”. Additionally, all MyUOC widget use the iGoogle widget API, so we can integrate widgets from any other application that uses this API.
- Allows users to create their own widgets – if they know how. Not sure how useful this will be at Midd, and we’ll need to do some work to ensure application security, but good to know it’s there.
- Full control over the complete technology stack. MyUOC is (or will be shortly) open source, meaning that we can customize portions of it to best suit Middlebury’s environment. ASP.NET web parts offer a lot of customization, and you can re-write interface libraries for them, but some of the code is in a pre-packaged DLL.
- The communication stack for handling authentication on the service is lengthy and complex and will require us to implement portions of the OKI connectors that we had not previously. There is a performance concern when passing messages through so many layers, though the UOC staff claim that the site has approximately 6000 concurrent users (their student body size is 47000), which is far more than we’d expect for Middlebury.
- ASP.NET allows for user “impersonation”, letting the web server process pretend to be the currently logged in user. This is extremely handy for connecting to Exchange without requiring the user to re-enter credentials. This feature will not be available in MyUOC and we will have to hope that our efforts to integrate our single sign on service (CAS) with Exchange are fruitful and allow this to happen. Email is the killer app on a personal home page.
- MyUOC is implemented in Ruby on Rails, a language that none of our development team has experience using. On the one hand, it might be challenging to work with a language that we haven’t used before, but on the other this gives us an opportunity to learn new skills working on an important project. RoR is a highly used emerging language / framework and knowledge of it may very well be useful in the future.
- No ability to design a public version of your home page. This is something that you can do out-of-the-box with ASP.NET web parts. The ability to create a public version of the page is great for people who want to show off a portal to content they’ve created, like posts from their blogs, videos or audio they’ve stored in MiddMedia, links to sites they’ve created or maintain, lists of events they’re hosting or attending, etc. We would need to add functionality to do this.
- No ability to have a page for a department or group. Like public pages, this is a useful feature for groups that want to show off dynamic content from many different sources, especially those that might not have or need a full CMS presence, such as student organizations. We would need to add functionality to do this.
Provided that we can get this working with Exchange, I’m confident that using this software will be a huge boost to our project plan for implementing personal home pages. I think the interface in particular will be one that people are excited about using and look forward to customizing and seeing every day.