social software

Drupal Memetracker Module -- My Google Summer of Code Application

Posted in | »

Executive Summary

I propose to write two modules for Drupal as part of Google Summer of Code. One called memetracker and the other called machinelearningapi. The memetracker module will use algorithms in the machinelearningapi to intelligently filter and group content from designated content sources both internal and external. The module's purpose is to find and display to a community in real time the most interesting conversations and memes within the community as they emerge.

Submitted by Kyle Mathews on Fri, 04/04/2008 - 23:03

Power Law Graphs from classroom community website

Posted in | »

Researchers have shown that the distribution of many natural and social phenomenons follow what's called the power law. Power laws are known by other names such as the 20-80 rule (80% of wealth is controlled by 20% of the population), the long tail, Winner-Take-All, etc.

Here is an example power law graph from Wikipedia:

Power Law
Many have written that almost all measures of web site usage follow the same pattern whether that be page views, in-bound links, etc.

This past semester I built an e-learning site for two sections of an upper-level university course at Brigham Young University. Now that the semester is finished, we've started to analyze the data we've collected on how students used the site.

And what did I notice when I started to graph the data? Why the power law of course.

So onto the graphs I made.

First is a graph of the number of comments each student made on the class website throughout the semester. This is a good measure of their engagement with the online community. You can see that some students left as many as 40-60 comments throughout the semester and others left as little as 1 or two:Number of comments made by each student
Another graph which follows the power law. This time a graph of the number of visits to the class website per student. Again we see a wide disparity between students. One student visited the site over 400 times! Which in a four month semester means they visited the site on average 3 times a day! And on the other end, a number of students only visited the site 5-10 times the entire semester.
Number of visits to the site made by each student

Why the Power Law?

So why does this happen? Why do some students participate on the class website so much more then other students? I'm not sure I know the answer to that. Why do some people write blogs, participate in Wikipedia, upload their photos to flickr, etc. and many others don't?

Do some students just not see the value of blogging? Are some students more comfortable interacting online for whatever reason? Or on another tact, does it matter if some students participate more then others? After all, in any community, there's always a core group which cares much more then others about the success of the community (read about the power law of participation). What type of participation in an online learning community meets the learning goals for a classroom?

There's a host of other ideas rumbling around in my head about power laws, the three types of networks (political, social, creative) and how all this relates to creating effective online learning/collaborative environments. But that will all have to wait for another day. In the meantime, here's some links.

Extra Credit Reading:

Read these two articles by Ross Mayfield, first this one, then this one.

Then two by Clay Shirky, "Power Laws, Weblogs, and Inequality" and "Social Software and the Politics of Groups."

And one more on building vibrant communities.

Submitted by Kyle Mathews on Fri, 02/15/2008 - 18:18

New elearning website

Posted in | »

I've been putting some final touches on a website I built for a class running at BYU this semester on web analytics. You can visit the site here. I did a write-up about the site for Drupal's education working group. I discuss the design principles that guided my construction of the site.
A bit from the write-up:

Submitted by Kyle Mathews on Sat, 02/02/2008 - 17:58

Enterprise 2.0 Case Studies

Posted in | »

Some links to Enterprise 2.0 case studies:

A collection of case studies from 2007 at Portals and KM

Case study on installation of wiki software at DrKW.

Submitted by Kyle Mathews on Wed, 01/16/2008 - 22:08

What I've been up to lately

Posted in | »

I've gotten involved in a number of new projects in the past 6-7 months so thought I'd update y'all in what I'm doing.

School:

After a lovely summer break with no school and my time spent vacationing and working at a number of jobs, I came back to BYU for my first semester in the Masters of Information Systems program. But, as my classes this past semester were pretty boring, I won't mention school anymore here.

E-commerce websites:

I've built two e-commerce sites over the past six months using Ubercart (a fantastic open source shopping cart -- if you're in the market for that sort of thing). Ubercart is a module (cf. plugin/extension) for Drupal, an open source content management system, another technology I've been working with extensively.

This past June, with two friends, I started a t-shirt company running out of our apartment. As the lone techie, I built our website at coolcamisa.com. By our expectations, the company has been a rousing success (i.e., we didn't lose money)! We paid back our start-up costs by September (2 1/2 months from launch) and have netted some two grand since then. Not bad for our little apartment-based bootstrapped business. I've learned tons about starting a business, legal stuff (we organized as an LLC), pricing, marketing, website development, etc.

My second e-commerce site I started just recently. A good friend of mine, Nicole Sheahan, released her first CD in December (She's an excellent singer btw, so go buy her cd). I've been helping her set up a website to sell / market her music. The site is still a work in progress but it's amazing to me how fast it has come together. I've been working with open source software for awhile but I'm still impressed that I can singlehandedly put together a fully functional ecommerce store in under 10 hours for no cost other then my labor. That's the power of a community.

Other (Drupal) web sites:

With a friend, I've been volunteering to build a website for the Utah Valley Ministerial Association. The website will have news and events from churches in Utah County and serve as an online directory of churches in Utah County and surrounding communities. The site is not yet fully operational but it's soon in coming. Drupal's "Views" module was the real workhorse here slicing and dicing the church listings for display in a number of different ways. As you can see on the website, the different "views" of the data enable a user to find churches by city, denomination, or language.

Family History Site

Because of my Mormon heritage, the genealogy of my ancestors is very well done. Most of my ancestoral lines are traced back to the 17-18th centuries. About two years ago, my siblings/parents and I decided that while it's great to have names, dates, and places from our ancestors, what is really interesting is to read the stories and letters they wrote and view pictures of them and where they lived. These stories/letters/pictures/etc. flesh out the skeletal data we see on the normal family history tree.

But while current genealogical software does very well at organizing, storing, and sharing genealogical data, it does a poor job at handling other types of information. Documents and pictures tend to get lost in attics of aunts/uncles/grandparents. If you don't have them, they're hard to get hold of and you have them, they're hard to share with relatives.

We decided the best solution to this problem would be to create a website. Our first answer was a wiki website. The wiki software made it easy for our widely distributed family to work together on gathering information. But after some time we grew dissatisfied with the limitations of our wiki software and decided to migrate our site to one based on Drupal. That migration is still in progress but we're excited as Drupal will give us much more control over how information is stored and displayed (albeit with a great deal more complexity).

A New Job

In June, I started working as an research assistant at BYU in the Kevin & Debra Rollin's Center for eBusiness.

I'm working with a professor and a pH.D student studying how web2.0 technologies can be used in the classroom to help students become more active learners.

So far I can say this is the best job I've ever had. What I'm doing and learning just fascinates me.

Our main research thrust this past semester was creating a community site for a class to use at BYU -- http://isyscore.byu.edu/drupal.

We have learned a lot from the experience -- and it's given us mountains of data to sift through -- more on that in the future hopefully. Building the site showed me again the power Drupal gives a website developer (even if they really don't know what they're doing) to create sophisticated sites.

My other big project for my research job is creating a new module for Drupal called writing_assignment. This module will make it easy for teachers to give students writing assignments on a Drupal website. It will also facilitate easy peer-review and peer-grading of those assignments. This is my first Drupal module plus my first extensive project in PHP so I have faced quite the learning curve. You can read more about my module here.

Submitted by Kyle Mathews on Wed, 01/02/2008 - 01:56

Two's Company, Three's a crowd: Why better social software is needed to support (small) group interactions

Posted in | »

For my research job at BYU, I'm reading quite a bit about social software, which is, as defined by Clay Shirky, software that supports group interactions. One article I read recently by Clay entitled, "Communities, Audiences, and Scale"is especially good and provided much of the inspiration for this post. The gist of the article is that audiences scale and communities don't. And understanding this principle I think is extra ordinarily important for designers of social software.

So what is the difference between audiences and communities? Audiences primarily consume content, communities primarily communicate with one another. TVs have audiences -- they have large numbers of people that watch their content. But there is very little communication between individual watchers of TV and between the watchers and the makers of TV content. On the other hand, a small group of men who gather to play cards on Friday nights is a community -- because they actively communicate with one another. Communities communicate with one another, audiences don't.

In addition, a group is a group and a community is a community because of the connections that form between its members. Two best friends have very strong connections. A high school basketball team has connections from running lines and sitting on the bus together for long road trips.

But connections get weaker and weaker as a group or community adds more members. Connections are created by communication. With two people, all communications happens between the two people. So the connections made are very strong. Add another person and the number of connections that need to be maintained increases from 1 to 3. Add another person making 4 in the group and the number of connections increases from 3 to 6. Add another member and the connections become 10 (read Clay for more of the math). Obviously as the group grows larger and larger, the bonds weaken between individual members of the group.

This idea is encapsulated in several common English expressions like "two's company, three's a crowd". Amongst young people, a person who tries to hang out with a couple feels like and is sometimes referred to as a "third wheel". It's possible to have 2-3 best friends but no more. The "gang" you hung out with in high school probably had 4-7 people but no more. Older people tend to have fewer friends then younger adults but with closer bonds. Clay Shirky references the research of primatologist Robin Dunbar who argues that, "humans are adapted for social group sizes of around 150 or less, a size that shows up in a number of traditional societies, as well as in present day groups such as the Hutterite religious communities."

This contradicts a fundamental assumption of most designers of social software that "more users is always a good thing." Different types of groups can maintain their identity to different sizes but at some scale all online communities start to lose the dense interconnections that make the community a community.

The line where an audience begins and a community ends can get rather murky with online social software. Consider for example the weblog. If three girlfriends use blogs to discuss their lives, this is obviously a community. On the other hand, a popular blogger such as Seth Goodin is not supporting a community on its blog but is operating a broadcast media platform much as CNN or Fox News.

I'm experiencing a good example of this murkiness. A Mailing list is an example of social software often used to support online communities. I am a student at BYU majoring in Information Systems. The ISys department at BYU provides a mailing list for the use of the 200+ students who are in the ISys major. The mailing list is quite popular -- I'd say it sees an average of 10-20 emails a day during the school year

But the funny thing I've observed in the year or so I've been on the list is that even though everyone has equal rights to email the list, I see the same 10-15 names over and over. The rest of the ISys students don't communicate via the mailing list but rather are audience members. So it seems the mailing list, as a community-building device, can't scale past a certain number of people.

So why does it matter if our social software isn't so social at times, or that not everyone can/will participate on a mass mailing list? We should care because we are social creatures. In our increasingly rushed and splintered world, technology can help fulfill our need for friends and community.

Joel Spolsky, in a post entitled "Building Communities with Software" speaks movingly of our need as humans for community and how social software can fulfill that need. He ends his post with this message, "Creating community, in any case, is a noble goal, because it's sorely missing for so many of us. Let's keep plugging away at it."

Social software done right can create a community for all its participants. I feel strongly about the need for excellent social software, in our schools, workplaces, and other organizations. Social software can help us learn, work, and live with greater effectiveness and joy.

In my next few posts I'll continue to explore the fundamental problems and opportunities with social software.

Submitted by Kyle Mathews on Thu, 08/09/2007 - 16:39