Archive for the ‘Web 2.0 and Beyond’ Category

My Firefox Add-ons
Saturday, January 3rd, 2009

I thought I’d post a list of the Firefox add-ons I’m currently using and some reasoning why. If you have any suggestions of similar alternatives that you prefer, please share them!

The list:

  • del.icio.us – Provides basic integration with del.icio.us so I can update my tags easily from within the browser (no need to navigate to del.icio.us to manage these).
  • DOM Inspector – Inspect the DOM of HTML, XUL, and XML pages, including the mail chrome. I use this primarily for tweaking/developing javascript.
  • Dummy Lipsum – Use to generate dummy text. This is great when you need to test/view pages as they would appear with realistic content.
  • Foxmarks Bookmark Synchronizer – Foxmarks is a free add-on for your Firefox browser that syncs and backs up your bookmarks and passwords across multiple computers and more. Since I have a few computers that I work with, this service makes it easy to keep my bookmarks synchronized.
  • LiveHTTPHeaders – Great for viewing HTTP request/response headers. This is a handy utility when doing web development.
  • NoScript – Preemptively blocks script execution until you approve, creating a whitelist of trusted web sites from which script execution is allowed. This makes for a safer browsing experience by blocking unknown third party and cross site scripting.
  • OPML Support – Adds OPML support for importing/exporting links in the OPML format using the Firefox bookmark manager. I used this a couple times when importing my live bookmarks into Wordpress.
  • Sage Too – I think this is a great feed reader for viewing my live bookmarks.
  • Semantic Radar – Exposes Semantic Web metadata published on web pages, providing a convenient means for viewing and sharing discovery of the data with the community. I’m using this to get a better understanding how Semantic Web metadata is being published and used.
  • TwitterFox – This extension adds a tiny icon on the status bar which notifies you when your friends update their tweets. Also it has a small text input field to update your tweets. Similar to the del.icio.us integration described above, this allows me to keep up with twitter from within my browser without having to navigate directly there.
  • User Agent Switcher – The User Agent Switcher extension adds a menu and a toolbar button to switch the user agent of the browser. This is useful to testing (and in some cases circumventing) browser-specific functionality on various sites.
  • Web Developer – The Web Developer extension adds a menu and a toolbar to the browser with various web developer tools. I find I use these tools extensively when I have to do UI tweaks…definitely a must have.

Thanks to all of the developers of these add-ons for their generous contributions! They’ve helped to increase my productivity.

The Future of the LMS
Wednesday, February 27th, 2008

I’ve given some thought to the limitations of current enterprise learning systems (LMS, CLE, ePortfolio, etc), and thought it’d be a good time to elaborate on them after reading Mary Grush’s interview of Gary Brown in the recent Campus Technology publication [1], entitled “The Future of Web 2.0″ (perhaps more appropriately entitled “The Future of the LMS”).

Some personal observations regarding these systems:

  • Despite best intentions, tools within the systems are not the best of their kind, and, unless mandated, are not the ones chosen by students and faculty. Many of the tools are re-implementations of existing standalone content-based tools (file storage, discussion, wiki, blog, messaging, presentation). A lot of resources are wasted (IMHO, fruitlessly) trying to compete with the alternatives.
  • Content created in external systems typically needs to be recreated in or imported into the LMS.
  • A significant amount of development effort goes into the framework services provided to support the tools. This is not necessarily a bad thing if these services support the pedagogical tools I mention later.
  • The level of integration possible is much greater then the level of integration realized. Is the need realistic and does it outweigh the limitations posed by standalone components?
  • The solutions are heavy-weight; they’re generally prepackaged with several default preselected components. It requires a lot of effort to strip down and/or reconfigure to meet specific needs.

Since the LMS can’t compete with content generating alternatives, the concentration should be on tools to manage and facilitate pedagogy itself. Strip the LMS down to just those necessary parts and focus on making them extremely easy to use. I’m stepping out of my realm here, but it seems the gaps we should be filling are on management of assignments, learning outcomes, curriculum, workflow, rubrics, assessment, etc. Leave the content creation, discussion and presentation to those systems that manage it best. Rather, allow for users to submit links to their external content for assessment purposes. This is quite similar (perhaps exactly) the system that Gary Brown refers to during the interview:

Right now at WSU, one of the things we’re developing in collaboration with Microsoft is a “harvesting” gradebook. So as an instructor in an environment like this, my gradebook for you as a student has links to all the different things that are required of you in order for me to credit you for completing the work in my class. But you may have worked up one of the assignments in Flickr, another in Google Groups, another in Picasa, and another in a wiki. Maybe you’ve also made some significant contributions to Wikipedia. So, I need a gradebook where I have the link you’ve provided me, rather than a copy of the work, and the gradebook should be capable of pulling in all of these various sources.

If there’s any difference, I’m almost certain it is in my idea of the implementation. Unfortunately, WSU has chosen to “collaborate” with Microsoft on a solution, so I assume we’ll never know for sure.

Going back to early 2004, when my group at The (very soon to be defunct) Living SchoolBook was working on developing our own portfolio system, we discussed using RDF to link artifacts stored internally or externally with system-defined learning outcomes (the idea, IIRC, was Matthew Metnetsky’s). To make a long story short, feature creep and resource limitations drove us to switch to development of Goal Management within Sakai. Somewhere during that move I, regretfully, lost track of the idea of using RDF, but I think it applies now more then ever. Instead of requiring content to reside in one solution or another, we should augment the solutions with RDF capabilities to allow creation of “meaningful” relationships between content. The LMS focus then, would be management of the pedagogical parts that are semantically linked to content and providing a facility to crawl and query the resulting graphs.

Update – Just to clarify, I don’t think RDF is a solution in and of itself. There are obviously serious concerns that need to be addressed regarding privacy, authentication and authorization. I’m also not trying to say that tools for minor edits within the LMS are unnecessary/useless, and that there is no need for local copies (snapshots) of external content. The point I’m trying to make is that we need to abandon approaches that require users to use built-in content creation/organization/presentation tools. The focus needs to be on an open architecture that supports streamlined interaction (enhanced usability) with external tools integrated with the pedagogical tools that the LMS does best. Recent trends/movements towards portable data formats and open standards-based architectures to facilitate integration may support this possibility.

[1] Mary Grush, “The Future of Web 2.0,” Campus Technology, 2/27/2008, http://www.campustechnology.com/article.aspx?aid=58872

Providers Missing the Point with OpenID?
Tuesday, February 26th, 2008

I’ve recently begun to look into OpenID and like what I’ve seen so far…the idea that I control my identity and can choose who I want to provide the service appeals to me. When I first began evaluating OpenID, I found out that I already had an OpenID courtesy of AOL. That’s cool, I thought, but I don’t want to be affiliated with AOL, even if it’s just a URL. Next I looked into myOpenID as a provider, and it occurred to me that switching to a new provider, in this case, meant changing my OpenID URL! So every time I switch providers I have to update all of my sites with a new identity URL? Fortunately, using delegation, this is not necessary. Using a personal URL as my OpenID URL (my blog URL, for example) I can switch providers whenever I want/need without having to update this URL on every site. Delegation adds an additional degree of persistence, since my blog URL will probably not change as frequently as my provider preference.

Ok, but what happens when I change my blog location, switch to a different domain or service provider, etc. (basically any change that will affect my personal URL)? Enter the i-name. As you participate in various activities on the internet, URLs that point to your activity change over time. The abstract notion of your identity, however, is not something that ever changes. An i-name/i-number is a handle for your identity that should rarely (never) change. You can read more about the concept at Xdi.org, but the idea is that you register an i-name for yourself (mine is =jmpease) that never changes and use that as your OpenID. Further extending this idea, you can have “permanent” handles (tags) using i-name forwarding that redirect to your blog (=jmpease/(+blog)), email/contact (=jmpease/(+contact)) , homepage (=jmpease/(+home)), etc., regardless of the locations for each.

Good stuff! Right? Unfortunately, the lack of OpenID consumers isn’t making the technology very useful at this time, but it’s early and it seems that some of the major players are backing it (to some extent). The issue with the support thus far, however, is that everyone wants to be an OpenID provider without providing any consumption. In other words, they’ll give out an identity you can use at any OpenID-enabled site, but their sites aren’t OpenID-enabled. This kinda defeats the purpose of OpenID, don’t you think?!

Aaron Toponce writes in his blog on this very issue:

Supposedly, news has hit the front that Microsoft will be supporting OpenID as a provider, and rumors have it that your GMail account can be used as an OpenID identity. But what about logging into these providers with an existing identity? Here’s the question posed: Can I login to AOL, or create and AOL account, with an already existing OpenID identity? What about LiveJournal? Wordpress? Yahoo!? Blogger? etc.

NOPE.

Dare Obasanjo provides some good reasoning why this is so in his blog entry entitled “A Proposal for Social Network Interoperability via OpenID“:

If you look around, you’ll notice that the major online services such as Yahoo! via BBAuth, Microsoft via Passport Windows Live ID, and AOL via OpenID all provide ways for third party sites to accept user credentials from their sites. This increases the value of having an account on these services because it means now that I have a Microsoft Passport Windows Live ID I not only can log-in to various Microsoft properties across MSN and Windows Live but also non-Microsoft sites like Expedia. This increases the likelihood that I’ll get an account with the service which makes it more likely that I’ll be a regular user of the service which means $$$. On the other hand, accepting OpenIDs does the exact opposite. It actually reduces the incentive to create an account on the site which reduces the likelihood I’ll be a regular user of the site and less $$$. Why do you think there is no OpenID link on the AOL sign-in page even though the company is quick to brag about creating 63 million OpenIDs?

Why would Facebook implement a feature that reduced their user growth via network effects? Why would MySpace make it easy for sites to extract user profile information from their service? Because openness is great? Yeah…right.

Openness isn’t why Facebook is currently being valued at $6 billion nor is it why MySpace is currently expected to pull in about half a billion in revenue this year. These companies are doing just great being walled gardens and thanks to network effects, they will probably continue to do so unless something really disruptive happens.

Well, I hope that OpenID is the disruptive force, because, conceptually, it makes for a great end-user experience. Of course, the requirement is that the major players act as OpenID consumers as well as producers!

I’ve also done some thinking in terms of tying OpenID into our enterprise systems. It’d be great if I could use my OpenID locally, but there also needs to be a way to link it to my organizational identity controlled within our local identity management solution. So, even though I’m authenticating my identity using an external OpenID provider, my identity is tied to some local collection of access rights. I’m looking for a solution that doesn’t require me to use my local organization as an OpenID provider as do current solutions I’ve seen, such as CrowdID (Atlassian Crowd) and OpenID-LDAP. Requiring users to use a specific OpenID provider defeats the purpose of OpenID, does it not? I’m thinking along the lines of something like an initialization phase where I authenticate locally using an institutional username/password and provide details regarding my OpenID. From then on I can authenticate via OpenID to gain access to all systems that my linked institutional identity has access to. Regardless, it will be interesting to see how enterprise identity management and web identity management (particularly via OpenID) converge.

Social Networking is a Full Time Job
Tuesday, January 15th, 2008

I’ve recently switched gears from Java development to investigation of the various advances in web 2.0 and am ready to conclude that there is entirely too much stuff. Participation in even a small portion of the available networks requires a great deal of time that is much better spent elsewhere. How can I possibly keep tabs on what’s available, what works and what doesn’t, actively participate in the tools/networks that I like, create content to contribute, share the content, maintain a social life offline and remain employed?

The problem is not with the large number of choices, though, because choice is great. Rather, the issue is that each tool is just another silo of participation, information and content. For the most part, any given tool requires me to create a separate account and profile, which allows me to contribute content that is stored in a proprietary format, accessible only via proprietary apis. I think this video accurately sums up the issues: http://mashable.com/2008/01/14/not-sure-what-dataportability-is-see-the-video

Creating content takes time and effort. If I create content using one tool, can I reuse it in another, or am I doomed to reinvent the wheel?

I was thinking, the other day, about writing a Firefox extension to integrate Google Reader with my live bookmarks (where is the Google Reader API, btw?), but thought it would be great if I could, instead, select from a list of available feed service providers. This would certainly require me to write custom code to interact with each different api. What about a tool(s) that provide an aggregated view of recent activity in the selected social networking tools that I participate in? Maybe this idea is old, I haven’t checked around yet…but such a tool would be great, I think, and much easier to develop if each supported a standard api.

Is OpenSocial the answer? I don’t know, but it’s certainly a start in the right direction. Where does RDF fit into the grand scheme of things (including projects like FOAF and SIOC)? Worth watching is the efforts of the DataPortability group currently taking initiative to address these very concerns (referenced in the video above).

Bottom line, we need a way to ease the burden on the end user so they can do more with less effort. In my opinion, there is a bottleneck created by issues such as multiple account maintenance, content recreation and limited integration between services with disparate apis. Such a bottleneck must be limiting users’ ability to do the very socializing the services are trying to support. I think future trends of adoption will favor those services that are easiest to use and through which data can move effortlessly…those services that support the data interoperability and standard apis mentioned above.

Powered by Laughing Squid