Well, I've been plugging away at my elgg add-in project, but have hit a sticky design point. What do you do when you can either refine a (basically) working version, or redo 1/3 of your code to potentially achieve something better?
As I've been thinking about portfolios, one of the larger issues that has struck me is the need to embed the action of creating & maintaining a portfolio into students' every-day activities. That's one thing my field has learned from researching knowledge management -- efforts to capture knowledge work best if they're embedded into people's work. Adoption happens because a tool is usable now -- not because it's usable in the future.
With that in mind, I was thinking about how an e-portfolio could operate. My thoughts on this now is that it would be really neat to have your portfolio built for you as you blog, upload files, and create pages. Using the existing folder structure & tagging system, why not have everyone's actions result in a fairly complete e-portfolio? That way, users don't have to spend time uploading things when it comes time for their portfolio to be evaluated. Instead, they can spend their time sorting, organizing, reflecting, etc...
Using a fairly simple folder-like structure, we could have people's files, posts, & pages organized by tags. If a post a new blog entry with the tags 'add-in, eportfolio, pages', then the folder navigation has 3 new root-level folders added, each of which contains a link to that blog post. If I then go in & edit the blog post, the system automatically converts it into a page & also updates the navigation links to point to the new kind of object. I then upload a design document with the tags 'e-portfolio, pages', which is automatically added to those tags. Now, when I go to look at the "My Folios" page, it contains 5 folder-like things, which already have my objects. I think that e-portfolio and eportfolio are actually the same thing, so I go click on the prominently displayed "Edit" button, and am taken to a page showing the folder hierarchy & three prominently-displayed buttons. The first removes a tag (since I don't really want 'add-in' as a folder). The next combines folders (so that whenever I tag something as e-portfolio or eportfolio, it will go in the same place). The last moves a tag, allowing me to place pages under eportfolio. Then, with only a couple of minutes of work, I've actually put together a reasonably complete portfolio which will be automatically updated as I blog & upload files.
This sort of design also implies a couple of other features. My Flickr photos imported into Elgg via RSS should also be automatically added to my portfolio tree. I should be able to set various levels of permissions to the different tags. I should be able to edit the text of the tags (they can be edited just like pages -- the difference between tags & wikipedia entries is minimal). I should be able to publish certain tags to my profile screen, allowing a number of different entry points into my portfolio.
Here's a quick screenshot of my current development version. If you look at the bottom-right, you'll see the AJAX navigation tree utilizing the Yahoo toolkit. Sorry about the width, but it really doesn't rescale well.
