Skip To Content

 
Print Help
Guest
 
Skip Navigation Links
  • //
  • //
  • //
  • //
Please Sign In

Workspace
Tag This Folder
Tags:
Personal Tags
--none--
Add
Community Tags
--none--
Personal Preferences

Ever wonder why some collaboration projects take off and become successful but you can't get your company's users to use a simple wiki?  Do your discussion forums in Sharepoint go unused?  You did everything right... didn't you?  Well, the honest truth is that there is no silver bullet to making something popular, but there are a few strategies you can use to deal with the biggest obstacle you face in collaboration which is User Discomfort.  That's right, it's not your processes or your technology, it's not even your management.  The biggest impediment to getting your collaboration project off the ground and making it popular is User Discomfort.  Here's why ...

  • Change is uncomfortable
  • Learning new technologies can be hard, time consuming, and frustrating
  • Voicing an opinion in a participatory community is hard for many and terrifying for some
  • Benefits of trying something new .... Unknown
  • and I saved the worst for last, Fear of Criticism


Most people live in their nice, neat worlds and don't dare try anything too new or too different for fear it will upset the balance.  This is basic human nature.  When we all dragged our clubs around and lived in caves there was safety in numbers.  When someone walked outside the light of the campfire they were ... gulp ... eaten.  As humans, we are trained to stay where it is safe and avoid discomfort at all costs.  That's why collaboration projects (and many others for that matter) fail.  So what do you do?  You make it hard to get eaten, that's what.

Here's what I've learned about how to combat User Discomfort and get your projects started off on the right track.  It's a simple 5 step plan that will provide amazing results if done correctly.

1.  Solve a real problem
2.  Get user input early
3.  Create density
4.  Provide recognition
5.  Fail fast

Let's take a closer look at each of these to fill in some of the necessary detail ...

Solving a real problem may seem obvious but it's not.  Lots of projects get started without having any clear goals for solving real user problems.  Solving real problems will also help build momentum with users as you evangelize your plan.  A couple of things to look out for are (a) processes that have been around for a long time and  require lots of user intervention during their lifecycle and (b) processes that require lots of communication between team members that are still done via email or file sharing.  Don't try to become the next amazing success story that transforms your company from Good to Great (heh heh).  It can be done, but the circumstances necessary to bring the stars into alignment are rare and hard to identify early on.  It's like asking to get struck by lightening ... twice.

After you've identified some real pain points, communicate what you hope to accomplish to your users before you start the project, and get their feedback.  The more involved the initial users are in defining how new tools can be used to solve the problem, the more likely they are to actually use those tools (hmmmm, go figure).  One of the worst things you can do is mandate collaboration tools to your users.  Listen to me ... this will end badly.  If you think a wiki is the way to go but they are suggesting something else you'd better listen.  Remember you're trying to solve their problem so make sure your users are involved so that their opinions can be heard, evaluated, and implemented during the roll-out.

Which leads to the next fundamental success factor: density.  Have you ever wondered how Facebook became so popular so quickly?  One of the key reasons was user density.  They started at Harvard University as a replacement for a student directory (a real book that was distributed to freshmen).  They didn't launch a national campaign to recruit lots of users until much later in the adoption cycle.  In fact, early on you had to have a .edu address to join and even then you could only register if they had launched at your college.  They would wait until they had a certain number of requests from a particular university before they would start accepting registrations from that institution.  The point I'm trying to make is that by not allowing registration at schools until they had a certain number of requests created a density of users at a particular college.  This meant that when new users from a college started joining, some of their friends were already there.  User density is sort of like our caveman example earlier - there is safety in numbers.   And having other users they know involved in the project helps reduce User Discomfort.  So my recommendation is to start small and focused and make sure the user pool you select will have a high density of actual users.

Another success factor is recognition and reward.   Pure and simple, people like to be recognized for things, even in small ways.  Think about it this way.  If you Twitter or blog and someone retweets you or comments on your blog, somewhere deep inside it makes you feel good, admit it.  It's "cool" to have someone retweet you or make a positive comment.  This holds true for everyone else too.  Find a way to offer recognition for the work they are doing.  It could be as simple as a point system for posts, ratings for contributions, an email every so often to their managers, whatever.  This not only makes them feel better about what they are doing but also reduces their User Discomfort level.  Remember fear of criticism is the biggie.  The more you build users up, the easier it is for them to open up.

The last one is ... Fail early and often.  This is really general advice for anyone starting anything.  If your first attempt at anything important goes right, you should thank your Lucky Stars.  Most efforts won't go so well.  Recognize when things aren't going so well and take corrective action early.  This means constantly talking with your users to determine what is and is not working.  If your user's are complaining about too many options, remove them.  If the website is too slow, fix it.  At this point you should be working with somewhat passionate users who will likely want to see your small project become a big success (remember they helped plan it:), take advantage of the fact that the user population is small to constantly probe for feedback, and above all else, listen to it!

State: publish, Twitter
Brent McConnell | Aug 18, 2009 5:34 PM | Comments: 0

I just read a few interesting posts by Tim Bray and Alex Payne about what to read and how to stay up to date (see below).  Much of what they say I agree with.  The simple problem is that there is just too much stuff out there that is interesting or important on some level.  Combine that with an ever expanding workload, a short attention span, and a fading memory and you have a combination that just can't work long term.  What's interesting is that I've asked several knowledge workers of one sort or another what their biggest problems are and most respond with something like ...

  • "too many interruptions"
  • "wasting time on nonproductive tasks like email"
  • "no ability to focus on key tasks"
  • "excessive multitasking"
This is clearly a major problem and is probably getting worse given the increasing amount of information that keeps pouring in.  The key to solving this would appear to be to focus our attention on only the most important things.   But how is this even possible?

Attention is the most valuable commodity you control (at least from my perspective) and since I'm not one of those crazy-smart teenagers that can do 10 things simultaneously with full attention to each (my daughter apparently is though:), I need to manage my attention carefully.  The way I see it is what deserves my attention can be defined by a simple formula, something like Relevance To Me + My Trust In Source = My Attention (R+T=A).  The problem is that both Relevance and Trust are hard problems to solve.  

Relevance is how pertinent, connected, or applicable something is to a given subject matter, in this case "me".  There is so much available information today that relying on traditional methods of information discovery (search engines, RSS, etc) is just not enough anymore.  Many estimates put the number of knowledge workers in the US at between 28 and 45 percent and knowledge workers by definition require information to be effective.  Finding the right information to help knowledge workers excel is what Google's about, right?  Well not really.  Search engines are great for finding the most popular items related to a subject but nowhere in the R+T=A equation does it say anything about popularity, so that's not going to work.  Relevance is not a popularity contest it is very personal to you and should be handled dynamically based on many factors like whether you are at work, on a business trip, vacation, at home, working on an email, etc.  The people and places most relevant to you will be based on what you are currently doing.  Much like a spam filter learns over time what is good and bad so too should your relevancy filter learn what is important or not.  Is that Tweet relevant to the report you are working on or is it a link to a photo album of someone's vacation?  If you're having dinner in a restaurant should your Blackberry notify you of an incoming email?  Technology today allows many of these situations to be probabilistically identified it's just a matter of breaking down some barriers and then SMOP (small matter of programming).

So that leaves us with Trust.  What makes a source trustworthy?  I think trustworthiness implies an existing relationship of some sort with explicit relationships having the most profound effect.  This won't always work but may help initially filter the lion's share of incoming data.  It's interesting to think that a person's social graph could be applied as a trust mechanism.  How well you trust a source depends to some extent on how far away from your node they are.  Hmmmm.  It would also be interesting to have contextual information associated with your social graph.  Given the dynamic nature of relevance, if social graph information also contained contextual information about the commonality shared by two nodes this could be very useful.  For instance if my social graph contained information about "how" I was linked to someone via work, local community, interest groups, etc, this could perhaps be used to help filter results given my current situation (ie. on vacation).  The relevance of certain connections could be elevated given my situation thus, changing the importance of the information.  

In the link below Alex argues that his social network is incapable of helping him find the most interesting links.  I agree with that to some extent.   I certainly don't think that what my social network reads is all I should read.  What would be the fun of that :-)?  However I do think that my social network can be a part of the filtering mechanism and help with trending topics or group related research.  Again, I think it goes back to the dynamics of relevance.  If the topic is relevant to what I'm doing and my social network is finding useful information about that topic then maybe its worth checking out.  

Trust without an explicit relationship is much harder.  Once a node in the social graph is not specifically connected to another node you would be relying on someone else's trust in a node which is tenuous at best.  However, again I would say that even a degree of trust is better than none.  If the person I have an explicit relationship with trusts this person then maybe I should too (a little)?  Obviously this doesn't work as you get further away or you'd trust everyone, but maybe there is some measure of trust in these extended relationships that can help us discover relevant material.

I'm not sure where this will all lead over time but I do know that the current state of information overload is unsustainable and will eventually be fixed by someone, maybe you:-)

Better Feed Reading
You Have to Choose Who To Read
Fever and Future of Feed Readers
State: Publish, publish, Private
Brent McConnell | Jul 17, 2009 7:12 AM | Comments: 1

I have to admit that I'm a bit of a collaboration and community junkie and as such follow some obscure topics.  One topic I've had on my radar for quite some time is Flock Theory.  Flock theory tries to describe the self-organizing and emergent aspects of human behavior.  Succinctly put, behavior in some cases is not a property of any individual person (or bird), but rather emerges as a property of a group or social network (flock).  This concept can be used to describe aspects of both collaborative teams and open source communities.  I'm don't want to analyze the merits of the theory but I do want to introduce its concepts which I think have implications for team/community productivity and possibility even individual information relevance.

The fundamental aspects of Flock Theory can be distilled into the following axioms and tenets ...

Distance Optimization

  1. Avoid crowding group members
  2. Move towards the central tendencies of the group

Motion Replication

  1. Direction Matching
  2. Velocity Matching

Leadership Maintenance

  1. Group leaders must shift efficiently
  2. Eliminate extreme dissenters

Distance optimization speaks to the fact that teams need to find a balance between working autonomously and relying too heavily on team decision making.  Teams and communities that rely heavily on group cohesion (or decision-making) can find themselves with a case of "groupthink".  However, having accountability is such an environment is equally important Allowing group members the autonomy to work requires having goals that each member can be accountable for.


Motion replication fundamentally looks at two key principals, direction matching and velocity matching.  Direction matching speaks to the pursuit of a shared or common goal among team members while velocity matching addresses the idea that optimal teams need members that can perform at a consistent rate.  Other members of a team cannot consistently wait on suboptimal team members or risks to the groups goals will ensue.

 

And finally, Leadership Maintenance is perhaps the most interesting part of the theory (for me) as it postulates that there is a need for constant leadership change so that management of the flock remains fresh and focused and is always headed towards the correct goal.  Any extreme deviation from goal-oriented behavior by a team member can risk the mission and must be dealt with harshly.

 

I find Leadership Maintenance especially intriguing given my association with open source projects.  Based on Flock Theory one could argue that open source project management should continuously turnover so that other community members can help shape the direction of the project.  In reality many successful open source projects have very strong central leadership that never really change significantly.  A few that jump to mind ... Linux, Perl, Python, Scala, Ruby, etc.  All of these projects have a vibrant community of active participants but are led by a strong leader.  There are also examples of successful projects that follow Flock Theory more closely.  Apache jumps to mind.  Is Apache a better project than Linux, Python, or Ruby?   Certainly not.  But perhaps it is a better example of what an "emergent" software project looks like?

State: publish
Brent McConnell | Mar 19, 2009 2:04 PM | Comments: 0

Teaming 2.0.0 Beta 1 has been released and includes some cool and some surprising changes:

The big surprise is that we no longer bundle Liferay with Teaming. Our default configuration is now to run as a standalone web application. We had many requests to make this happen and we did.  For users who really can't live without Liferay we will soon release a Liferay "lite" version that integrates with existing Liferay.

The significant new features of 2.0.0 are ...

  • Open source Teaming now includes advanced workflow capabilities that allow an object in the system to have an attached workflow.  Users can process blogs, files, wikis, or even custom web forms with workflows now.
  • New guest account so that users can assign privileges website visitors without requiring authentication
  • New extension specification and deployment functionality that allows additional functionality to be included in a Teaming instance just by dropping an archive in the right place.  Now developers can easily extend Teaming with new applications and workflows. See the wiki article that explains it.
  • Many UI improvements
State: publish
I took the following notes during a call with Zack Grossbart, author of the upcoming book 1-Minute Commute due out in June (I believe).  Zack has spent a considerable about of time studying the way open source development teams work and has uncovered some very useful information that I hope we can begin adopting in Kablink.  This is just the tip of the iceberg.  Look for the 1-Minute Commute at your favorite book store to get all the juicy data Zack uncovered during his research.
  1. Second Class Citizen Problem

    1. Virtual teams members must overcome the "Second Class Citizen Problem" when working in teams. Virtual members can have less influence than local team members.

    2. This is primarily due to lack of Trust

    3. Teams must work very hard to develop processes and tools that lead to trust and full collaboration between remote and local workers

    4. Example: SVN development team decided that no decisions would be final unless discussed on mailing list. Way to gain consensus and force discussion across everyone in the team.

  1. Team Communication Tools

    1. IRC is critical for most virtual teams studied

    2. IM is to disruptive and costs productivity

    3. Teams like IRC better than IM because IRC is about the group, IM is about an individual.

    4. There is an expectation that the receiver should drop everything and answer a question with IM. In IRC questions are asked of a group instead of a person

    5. However, IRC can get too big then it is just noise. Channels should be limited to 15-25 max and should be very focused.

    6. IRC needs protection to stay small and focused. Things that can be asked on the mailing list should be moved to the mailing list.

  2. Video

    1. Video chat is rarely used

    2. Screen sharing is used alot

  3. Community

    1. The way to move up in an open source project is to ask for help and take the feedback. Tools need to be transparent so that everyone sees this.

    2. In open source there is a lot of mentoring to move people forward. Not do it yourself but push people to do it themselves.

  4. Team Tool Design

    1. Put features in people's way so they don't have to find them. Like SVN comments on checkin. From Aza Raskin.

    2. Information overload is everywhere. Need filtering by topic or context.

    3. Sometimes it can be too easy to add information creating too much fragmented data artifacts. Teams need the ability to pick and choose what they want and define rules for adding information that is relevant.

    4. Tools should move people to think about what the topic and objective is rather than where the information lives or who sent it. Topic-centric view.

    5. One of the most overlooked team software features is the ability to associate decisions with the process that was taken to reach consensus.

  5. References

    1. Garr Reynolds - presentation guru

    2. Subversion talk (Poisonous People talk on YouTube)

    3. Paul Eckman – Behavioral Science

    4. Aza Raskin – UI Design

State: publish
Brent McConnell | Feb 12, 2009 1:33 PM | Comments: 0
FOSDEM was great fun.  It was particularly interesting to see all the excitement around XMPP.  The Jabber sessions were standing room only.  Hopefully we can ride that wave with Conferencing which is based in large part on XMPP.  My presentation "Architecture of Collaboration" is available with this entry.  Let me know if you have any comments on its contents.  There is also a more detailed article about the Knowledge cycle in this month's Novell Connections Magazine.  
State: publish
Brent McConnell | Nov 19, 2008 2:15 PM | Comments: 0
There is always lots of chatter about Teaming integration and usage.  How to customize?  How to use workflow? etc.  What I wanted to briefly touch on today is what I've been working on recently which is Conferencing.  Conferencing, if you recall from by blog post many moons ago, has a very interesting architecture built around XMPP.  Conferencing has it's own protocol based on XML-RPC that is delivered by XMPP and each component that comprises our solution registers with the Jabber server and receives XMPP messages telling the component what to do.  What I've been working on lately is the use of the underlying XML-RPC mechanism to schedule and activate meetings remotely from other services.  I am currently looking at an integration with SugarCRM that will create Conferencing meetings from within SugarCRM using PHP.  Each time a user creates a meeting in SugarCRM they will have a checkbox on the "Create New Meeting" page that will also allow a Conferencing meeting to be created.  Once I'm a little further along on this endeavor I will post a tutorial, so stay tuned.
State: publish
Brent McConnell | Nov 10, 2008 9:27 PM | Comments: 0
We are currently looking into a project that would put Kablink into a RPM repository for Linux, and eventually into the openSUSE BuildService.  It is a big job and I've put together some thoughts on how we would do it in the Kablink Development forum.  Anyone interested in Kablink on Linux should check it out and give me your feedback.  We're also looking for experienced RPM developers who would like to help out and get paid :-)
State: publish
Brent McConnell | Nov 4, 2008 9:26 PM | Comments: 0
I am in the process of developing a plugin / extension specification for Teaming and want input from anyone interested on what this might look and feel like :-)  I just posted a first pass of a high level document that I'd love some feedback on.  The document is in the Ideas forum, here.  Feel free to rip and burn.
State: publish
Brent McConnell | Oct 21, 2008 6:44 PM | Comments: 0

Ever wonder how you could integrate your kablink or Novell Teaming instance with a remote system and pass data back and forth?  What if you wanted to send your SAP or SalesForce.com systems some of your kablink data.  You can using custom actions and conditions that can be integrated into the workflow engine processing.  A new tutorial in the Wiki walks you through creating a custom workflow callout that can handle some pretty heavy lifting when it comes to data integration.  This tutorial really gives you a glimpse of the power that was added to Kablink with the addition of workflow.  Check it out!

State: publish
Skip Paging Links
  Go
Go to the First Page   Previous      Page 1 of 4   Next      Go to the Last Page  
  Go
Skip Footer Toolbar