Bebop. A BuddyPress plugin for curating personal collections of (teaching) resources

We finished our JISC-funded Bebop project today. One of the main outcomes is a BuddyPress plugin that allows a user to import content they’ve uploaded on other sites, such as Flickr, Vime, YouTube and any site with an RSS feed, into their BuddyPress activity stream. What’s especially nice, is that the user can select which content appears in their activity stream, so it effectively allows them to curate collections of shared resources as part of their profile. There’s a good reason for this, and you can read all about it over on the project blog.

BuddyPress, Bebop and building the staff directory

The Bebop plugin and documentation

p.s. this was a nice outcome of the project, too: The benefits of code review

My revised ALT-C proposal

I’ve just re-submitted this proposal for a demonstration at ALT-C 2009. It’s called WordPress Multi-User: BuddyPress and Beyond. It won’t be confirmed until June, but for the record, here it is…

‘BuddyPress’ is a new social networking layer for WordPress Multi-User blogs. It provides familiar, easy to use social networking features in addition to a high-quality and popular blogging platform. The University of Lincoln have been trialing WordPress MU since May 2008 and have been using BuddyPress since February 2009 to promote an institutional social networking community built around personalised and collaborative web publishing.

This session will demonstrate the versatility of the WordPress MU platform. We’ll look at an installation that is enhanced with BuddyPress, LDAP authentication, mobile phone support and advanced privacy controls. You’ll see how simple it is to set up site-wide RSS syndication and aggregation, enhance your blog with semantic web tools, publish mathematical formulae with LaTeX, send realtime notifications to Facebook, Twitter and IM, publish podcasts to iTunes, and embed GPX and KML mapping files. We’ll also look at how to embed WordPress content in your VLE and other institutional websites. The use of a temporary ‘ALT-C 2009 BuddyPress’ installation will be encouraged.

There will be opportunities throughout for questions and answers and participants will leave with a good understanding of the advantages and disadvantages of WordPress and the resources and skills required to provide a social networking and blogging platform in your institution.

OAuth, OpenID, XMPP with WordPress

Automattic, the company behind WordPress, released an update to Prologue, their theme for group discussion, today. I read about this, minutes after reading about the new OAuth features in WordPress 2.8 and an hour or so after reading about a new Facebook Connect plugin for BuddyPress, the social networking layer for WordPress. All this stimulation proved a bit too much for me, so this post is an attempt to plot what’s happening here and what might be possible in just a few months from now…

So, I have the BuddyPress Facebook Connect plugin working on a my test installation…

BuddyPress Facebook Connect

Nothing fancy going on there. Basically, new users to the site can register using their Facebook credentials. The plugin doesn’t do anything for existing users on the site. They just login with their local account as usual. For a first release, the plugin is a good proof of concept and with a bit more integration work will make it easy for Facebook users to join BuddyPress sites.

The new Prologue theme, P2, is impressive, too…

P2 on wordpress.com

It takes advantage of the new threaded comments feature in WordPress 2.7+ , has ‘realtime’ notifications (unless I’ve missed something, the use of the term ‘realtime’ is a stretch – see below) and has some nice keyboard shortcuts…

Keyboard shortcuts

One thing that’s lacking is a Twitter-like realtime notification that a new post has been made and you should refresh your bowser. Twitter doesn’t use it for the user home page, but they do on their search page and I like it.

Twitter notifications

Moving on, OAuth functionality for WordPress is still in development but the latest code from the SVN trunks of both the DiSo plugin and WordPress does appear to work…

OAuth options

Be warned that it does not run on a server where PHP runs as a CGI. I tried to run it first on Dreamhost, but it gave an error showing that getallheaders() is an undefined function.

I need to spend more time with the OAuth plugin to see how it will actually work in practice. One of the first use-cases for it is to allow client applications like the iPhone app, to be able to post remotely without sending a password using XML-RPC. If anyone has any ideas and wants to test it with me, please leave a comment. As I understand from the announcement, it’s working but it’s still early days… For more information, see Will Norris’ presentation from last August.

Finally, there’s mnw, a new plugin for WordPress that provides support for the OpenMicroBlogging specification. With this, users from other sites using the specification, such as identi.ca and other Laconica-based services, can subscribe to your blog/omb site and receive updates whenever you publish a new post or page. So this…

WP OMB…ends up here…

WP posts on identica

mnw is still a bit rough around the edges but it was only released as V0.1 a month ago, so that’s to be expected. Note that mnw only seems to work on single WP installations (WPMU produces a familiar error message which I think is wp_nonce related) and does not work on WP 2.8 trunk. Also, identi.ca complained of my avatar image being the wrong size. In the example above, I’d removed my avatar from the mnw settings, but I’ve since found that a .png of 96px seems to work OK.

What does it mean for me and you?

So, what does all this mean? In terms of wordpress.com, we might speculate that before too long, they will add the BuddyPress layer to their 4.5m blogs to create a sizeable social network. The P2 theme shows posts in realtime, they’re already offering an XMPP firehose of blog posts and there are plugins that offer XMPP functionality for WordPress, so remote real-time updates aren’t far away and realtime remote publishing already exist using XML-RPC. With the P2 theme, anyone can create a Twitter-like site that any number of registered users can post to and anyone can comment on. Add OpenID authentication and OAuth authorisation and you’ve got a large, mature and open social (micro)blogging service.

For self-hosted WordPress users, it’s even closer to being a reality. I’ve had a site running today that accepts new user registrations via the DiSo OpenID plugin and those users can then post updates to the Prologue themed site and join a threaded group discussion. If I enabled XML-RPC posting, users could post in ‘realtime’ to the group site from their iPhone or other other client app. With OAuth support, this would be possible from desktop and mobile applications as well as other sites such as Flickr, without exchanging protected user data such as a password. Those updates could also be broadcast via XMPP in realtime, which I’ve done on another blog I was testing.

WordPress Flickr account setup

Things are a bit different for WordPressMU/BuddyPress installations. As you’ve seen above, I’ve got a BuddyPress site running that accepts users joining via Facebook connect.  Functionality is limited to social networking and it still has some issues that need working on before it’s ready for every-day use (I’ve noted them on the BP forum). WPMU blogs (by which I mean blogs not the overall site) don’t allow new-user registrations so the blog adminstrator needs to sign up new users. Users registered via Facebook don’t have an email address associated with their account, so blog admins can’t add these types of users as the process requires a username and email address of a new or existing user.

However, by activating the right plugins, registered WPMU users (I’m thinking university staff and students) could participate in a group microblog using the P2 theme, LDAP and/or OpenID for login and XML-RPC and XMPP for remote publishing and receiving posts. It won’t be too long before you can send and receive WordPress posts via your GMail or Jabber account (on your iPhone/iPod) in realtime (hopefully with support for tagging), and all of that data is simply WordPress data and has RSS feeds hanging off every tag and wrapped around every post.

Just a thought.

BuddyPress: A university’s social network

To cut to the chase, this post is about using WordPress MU and BuddyPress with enterprise authentication (LDAP) to create an internal/private social network while leaving the blogs, by default, public.

Since May 2008, I’ve been running WordPress MU on the Learning Lab, a Linux server I maintain at the University of Lincoln, for experimenting, trialling and evaluating software that may enhance and support research, teaching and learning. It’s a great job ;-)

Of all the software we’ve looked at over the last few months, ‘WordPress Multi-User’, has clearly shown the most potential for use by staff and students at the university. It’s a mature, well maintained, very popular open source blogging platform. In fact, it’s more than that. It’s a web content management system that runs 5 million blogs on wordpress.com and 280,000 blogs on edublogs.org. While evaluating WPMU on the Learning Lab, 65 blogs were registered by 123 users. I didn’t advertise the service at all during this period, preferring to work with individuals on specific projects and get their (informal) feedback. The feedback has been positive. People initially need support but once they’re set up and running, they only tended to contact me when they wanted to push WordPress to do more for them through plugins and custom themes.

During this period, I’ve been watching and doing my best to help with the progress made on BuddyPress, a set of plugins for WordPress MU, developed by Automattic, the company behind WordPress. It’s been interesting trying to get everything to work together at times but over the last few weeks it’s all come together.

BuddyPress Profile

Automattic also develop open source forum software which integrates with Buddypress, too. Jim Groom at the University of Mary Washington pioneered the integration of all three products and I’ve had it working here at the University of Lincoln quite nicely. However, bbPress is still beta software and I’d like to be able to offer privacy options on forums, too, which is currently unsupported (there are some plugins, but they’re not mature enough for our use yet). So currently, we’re running WordPressMU, BuddyPress, an LDAP plugin for WPMU and a privacy plugin that’s commonly used on WPMU installations. It works really well.

I’ve documented some of the set up on our wiki. It’s not been difficult. For the time-being, while BuddyPress matures, I’ve chosen to stick with the default home and members themes, changing just the logo. Forums are, as mentioned above, turned off for now. I wonder if we’ll ever turn them on as the ‘Wire’ (similar to the Facebook Wall) is available and people are used to using services like Twitter and the Facebook Wall to communicate these days. We’ll see what demand there is for forums.

The final set up is really quite sweet. A member of the university goes to https://blogs.lincoln.ac.uk for the first time and logs in with their usual credentials. The first time they login, they are signed up. That’s it. No sign up page needed. It’s as if they were already a member of the social network, which, being members of the university, they are of course. From there, they see the BuddyPress home pages, can join groups, change their profiles and, when they’re ready, create or join a blog.

I’ve finally finished setting it up for general use today. The few people that know about it and have already joined, instantly see the benefits of having the social networking layer on top of the blogs. I’m excited to see how this works out over time. It’s not something we’re going to launch in a big way just yet (it’s only me supporting it at the moment), but I’m guessing that it will spread quite quickly through word-of-mouth.

The university web team are supportive and are sending staff and whole departments my way when they want a web site. The IT support team have been trained to use WordPress, should they get enquiries their way. We’ve got a few projects that have been waiting patiently for the new home of the blogs and a number of the Learning Lab blog users are migrating across already. The potential for supporting personalised and group online learning is now better than it’s ever been and the social networking element only helps bring peers together for collaboration and discussion.

Many thanks to Jim Groom and D’Arcy Norman who have been working on WordPressMU at their universities in ways which I hope we can emulate and contribute to here at the University of Lincoln.

Storytlr: Make your social networking tell a story

Storytlr is a relatively new ‘lifestreaming’ service that allows you to aggregate your activity on a growing number of social networking sites  (and other sites that provide RSS feeds) into one single stream that can then be manipulated to create visual narratives within a given time period.  There are other lifestreaming and aggregation services. FriendFeed is one. I use the WordPress Lifestream plugin on another blog, too.

There are several things I especially like about Storytlr that are worth highlighting here:

  • Manipulate the stream: You can edit the title, text content, date and time of each item in the stream, make items private or the entire stream private.
  • Visual Narratives: Create ‘stories’ from isolated feeds within a certain time frame. For example, I might go to a conference and use this blog to report back to my colleagues. However, using Storytlr, I might include Twitter, Flickr and YouTube posts to create a narrative over two or three days. However, I’m probably also using Twitter to keep in touch with other conference participants; things like what time to meet up for a beer or to ask where a presentation is when I have forgotten the room number. Stuff that I wouldn’t necessarily want to include in my report of the conference. Storytlr will allow me to create this conference report selecting specific items from the Twitter, Flickr, YouTube and blog feeds. You can see how this could also be used by students (or staff) who want to tell the story of a project they are working on, or a field trip they’re away on. Several people could share and post to the same account.
  • Some feeds are pulled in realtime: Storytlr uses GNIP to import updates from Twitter, Digg, Delicious and Seesmic in realtime. Increasingly, there’s an expectation that our online activity will show in realtime. RSS/Pull is being replaced by XMPP/Push architectures such as GNIP. No more waiting for RSS feeds to refresh! Watch for news sites like the BBC to start offering realtime news updates using GNIP or similar.
  • Backup to plain text: You can backup/download each of your feeds in their entirety at any time as CSV files.
  • Custom CSS and domain names: It’s your story so why not host it under your domain name in a theme that you have designed?
  • You can share stories on external sites: Once you’ve created a story or aggregated your lifestream, you can then embed it on other sites using Storytlr widgets.
  • Edit, archive, search and republish your lifestream: I use Delicious and Google Reader’s Shared Items to bookmark web pages that I want to share or, more often, bookmark to read at a later date. Storytlr provides a way to aggregate these items, archive them by month and search through them. Nice.
  • Support for Laconica microblogging sites: They support my personal installation of Laconica. It’s the first time I’ve seen this. Support for Identica is growing but it’s nice to see support for other Laconica installations. It’s a distributed microblogging application after all!
  • Forthcoming: It’s early days. They have plans for lots of other features, which users can vote for. Their blog is worth reading, too.

A few issues

  • Login is not secure: There’s no https or lock icon in my browser when I log in and there’s only two of us voting for this feature to be implemented!
  • Home-made: It’s self-financed and being developed by two blokes in their spare time from the living room.
  • Speed: It’s a bit slow. A search through your feeds can take a while. However, the good news is that they’re moving to new servers at this end of January, which should resolve this.

Interested? Here are links to my lifestream and a test story of notes from my christmas break.

Facebook glue

A press release from the University of Leicester last week, summarises the findings so far of a research project which “focuses on how pre-registration engagement with the University of Leicester Facebook network influences students’ post-registration social networks and their understanding of the University.” They’ve found that “a high proportion of freshers use the internet to smooth the settling-in process.” No real surprise there, but these kind of studies are important, not only to better understand the student experience, but also better understand how the Internet and social networking in particular, is affecting social relations in general.

A survey of 221 first year students conducted between April and June this year found that more than half (55 per cent) had joined Facebook to make new friends prior to entering university, while a further 43 per cent joined immediately after starting university. Nearly three quarters said Facebook had played an important part in helping them to settle in at university.

So within the first few weeks of joining university, 98% of students (who responded) were using Facebook to some extent. The way the quote above is worded doesn’t make it entirely clear whether 55% of students joined Facebook to make new university friends or socialise with existing friends and meet new friends in general. Later in the press release they say that “59% of respondents considered that the way that they used Facebook had changed since they came to University.” So we know that at least 59% of individuals were using Facebook prior to entering university. They quote some respondent’s motivations for joining Facebook:

  • To meet people before coming to university and because most of my friends at home used it.
  • Because my friends all had it and one of them told me that it was a good way to meet people going to the same uni as me.
  • To hopefully get into contact with people who were living in my building or were on my course through facebook groups. I hoped that knowing these people before I got there would give me a head start at uni.
  • To keep in touch with friends and for a bit of fun. Also to see if I could find anyone going to Leicester Uni living in my halls.

I suspect that the 55% is a mix of some people consciously joining with university in mind and others who were using Facebook regardless of entering university. Still, university life clearly accounts for a lot of Facebook registrations and an even greater amount of Facebook activity.

Over a third of respondents also said they used Facebook to discuss academic work with other students on a weekly basis, and more than half responded positively to the idea of using Facebook for more formal teaching and learning – although only 7 per cent had actually done so. Many suggested ways in which Facebook could be used, such as providing social support for students in departments and informing students about changing lecture times.

This is good to read and follows JISC’s In Their Own Words report about the move to increased learner autonomy.

But the survey also found that 41 per cent of students were against being contacted directly by tutors via Facebook. A report on the preliminary findings warns that the university will need to tread carefully if it wants to use Facebook to communicate with students for administrative or teaching and learning purposes.

So “more than half” of students welcome using Facebook for teaching and learning and 41% were against it? Or is that “more than half” of “over third of respondents” welcome the use of Facebook for teaching and learning? Again, not entirely clear to me, but I imagine it’s the former and that attitudes are going to shift even further in that direction over time.

My own experience is that the longer and more extensively I’ve used services like Facebook (in fact, the Internet in general), the fewer walls I construct to protect the normal divisions in my life. Not only is it too difficult to maintain separate identities on Facebook, but the boundaries between work, leisure, education and our private lives are far less distinct than they would otherwise be. You only have to look at the number of family photos on Flickr, the number of work related Facebook networks and the amount of discussion occuring online where people use their same identity for both work-related discussion and non-work-related discussion to see that walls are falling rather than being constructed through the use of the Internet.

Web Trend Map

Following their predictions in January, the Web Trend Map 3 from Information Architects, offers an interesting overview of the 300 most influential websites, illustrated along the lines of the Tokyo train map.

To get the full picture you need to either view the PDF or buy the poster.  Cast your eye over the PDF and you’ll see that among the big names that stand out are Yahoo!, MSN, Google, Wikipedia, Amazon, YouTube, eBay, WordPress and Friendster. No real surprises there.

The layout is meaningful in that the train lines correspond to different web trends and Google sits in the centre because it is “slowly becoming a metaphor of the Internet itself”. Each of the 300 sites occupy different train stations in Tokyo, depending on the current status they’re deemed to have. The cool sites can be seen in cool parts of Tokyo and likewise the boring sites (i.e. Facebook) have been moved to the boring areas of the city. The creators are clearly having fun at times, too.  Yahoo News, for example, is located in Sugamo, where old ladies go shopping, because Yahoo News “recently hijacked the online advertisement revenue of around 250 local newspapers and locked them into a binding contract. Who reads local news? Old people.”

Despite the sarcasm, it is a genuinely useful and interesting illustration of who the players are on the web and what spaces they dominate. There are also two forecast and branding plates which, as the names suggest, illustrate where the weather is turning for some sites and how certain brands are resonating with users.

It’s good to see WordPress being in the centre of it all; an open source product (which the Learning Lab runs on), not far from the centre of everything, located between the Google Vatican and the News district, on the Technology and Social Networking lines.  The popularity of WordPress is no doubt due to it’s focus on usability and good presentation but also because as an open source product, it attracts a large developer community who write plugins to extend the basic functionality of the blogging platform, making it attractive to people who want their blog to integrate with sites like Facebook, Bebo, YouTube, Flickr and Twitter. WordPress leverage this voluntary manpower by enhancing their commercial product.  Integration between sites is key as each compete for our time so it’s not surprising that dataportability.org, despite being a recent initiative, sits in the Brains district among all the big players.

The DataPortability Project is a group created to promote the idea that individuals have control over their data by determing how they can use it and who can use it. This includes access to data that is under the control of another entity.

In practice, this means that we should expect to be able to login to WordPress, select images from our Flickr account and publish them in a blog to Facebook, painlessly and securely. Web applications, including those sold to the Education market, that inhibit the secure but effortless portability of data are digging themselves into a hole.

The Student as Producer

We were recently unsuccessful in an application to JISC for a Learning and Teaching Innovation Grant. Nevertheless, the project is one that we’re keen on pursuing in some shape or form, so I thought I post the details here and invite comment.

Continue reading