Thursday, September 13, 2007

Allen, I'm in your RSS reader writing LOLcat-isms

Interesting lunch discussion today that I thought I'd spend a minute fleshing out. Allen pointed out that cause we are not co-located (we being people that work together for this company for which be both work for (?!?)) we need to find a way to get the synergy back formerly realized from working co-located. After first delivering a roundhouse kick to the skull for using the word 'synergy' we talked about what some of the elements of a meta-chat (if you will) or meta-forum (if you still will) would be to improve communication in a distributed team.

A couple of definitions up front. A distributed team can mean just about anything, I've been in a chat were 90% of the group was physically sitting in the same room. Fundamentally this is about capturing the conversation that goes on when people are working together on something and actually being together. The right analogy for the conversation is probably something like a river, the river flows on and people (people are the boats? or are the ideas the boats? this is getting pretty thin either way) can join or leave as necessary. In the river or not, an observer can look from the outside at the river, the boats or especially the topless sunbathers on the shore. Lets abandon this paragraph now because I'm either going to use the word meta too many times or the metaphor is going to be extended to the point that the fish in the river will be the ideas and the boats have dudes fishing from the great river of of conversation for some scaly truth. As I said, moving on.

What I want is an IRQ style interface for my team. I want this to be an extension of the IM client we use now for no real reason other than we are using it now. The key though is that its basically just a kick-ass chat machine. I'm using the IRQ model because I don't like the fundamentally asynchronous mode that is a forum. Plus I just have this suspicion that weird people hang out on forums.

  • A history of the chat should be maintained so that someone not logged in for any particular session will still have the full history of the conversation . This could apply even to a new team member, as soon as they join the group they instantly have access to all 'tribal knowledge' (I hear this phrase often, I wonder if its offensive...and if so to whom?) of the group. I guess its incorrect to say 'all' the knowledge but certainly all that was present in chat.
  • The client needs to have a strong filter compoenent to both highlight and ignore posts as necessary. For example, I would want the word 'late' or 'delay' to be in giant red/bold letters. If my team is talking about being delayed or late, I want to know. Conversely if the thread heads off to the plot intricacies of CSI:Desperate Housewives I want to either actively ignore that or mark it in fuscia so I know its likely skippable. It is important to note however that the 'off topic' conversations are just as (possibly more) important than the direct work stuff. The piece that really is missing when a team is spread out is the bonds/relationships that grow intra-team. I have found that people who on projects for me are more likely to work late, take on tough assignments etc. if I have had some off topic time with them. We could call it the Beer to Work index, the more beers we have shared the more work I can expect.
  • We'll need a couple of levels of alerts included: if I am not paying attention to the stream and someone needs me to perk back up there should be a yahoo style . The Buzz can go to an individual or a selected group.

  • I would want a piece of the filter to hav ethe ability to select dates. If I am out Friday, I want to come in Monday and quickly review just the Friday conversation to see what I missed.

  • There needs to be a way to tie entries together. Often in a multiperson chat, multiple unrelated questions are asked and the answer I give could apply to any of them individually. Its important to maintain the overall flow of the chat (not a recursive kind of thread system) so I am imaging a very messy, ugly arrow system where I click on the question I'm answering.

  • A billboard should be in a sizeable window that keeps all the links refernced in the chat. So often the information/answer/shared experience is a link out to a website that drives conversation. The team lead should have the ability to make some 'sticky' as in keep them on top for . Otherwise they need to be indexable by date and frequency of use. Its possible that files could also be stored in somethign like that but I think that might be one of those add-ons that ends up sucking due to permissions/version control/packrat-edness.

  • I've mentioned filters but we also need the general search functions (think google desktop here?)

  • It is axiomatic that screen caps and animated gifs are a part of this tool.

  • Private conversations of course will go on and there needs to be a way for a section of private text to be added to the big conversation. You'd probably want to make both parties click ok to allow it or something.

  • Most people are on multiple teams and have various private chats going all the time. I personally like the tabbed interface we have in the current chat client which lines up along the left of the window all the chats I currently have open as opposed to managing multiple windows. Its a stylistic difference of course and we'll need it to accommodate either.

  • Not sure its needed but the tool should be sort of self aware and do things like automatically build glossaries and keep stats (top five pies, common phrases, blabbermouth award).

  • Polls and Voting
Again the goal on all of this is to do something to capture the sort of watercooler effect and not to add more work. I spend all my day chatting on IM with my team (some on conference calls as well) and I suspect that many people do too. Its not a hardship necessarily to type the same (ro cut/paste) information from one place to another but its possible there is some synergy to be realized from a long conversation.

By the way, if this plants a seed that grows into a piece of software that you make a botilion dollars on, remember the little people.

5 comments:

Anonymous said...

ummm, you signed my NDA... wth?

;)~

this is all good notes, but complex too. almost like building it all from the ground up. my approach is more about trying to use existing technology in a way we can bring each other together in a more real-time/synchronistic type why while still allowing asynchronous/laggers to catch up at a later date AND still allowing history searching/referencing.

linking forums to e-mail notifications seems realistically possible and understandable with all that we have today. a bit of work would have to be done to investigate email notification/filtering options though. and there would have to be some agreed to moderation effort also naturally so the forums history doesn't get out of control/unusable.

but i think all of this is doable today and with minimal effort which should result in noticeable efficiency gains.

who knows.

anyways, i knew you posted this withing 29mins. HAH! ;)~

Anonymous said...

oh another good note to clarify is that of your desire to be alerted above and beyond normal that your specific input is required/being waited on/expected for a given topic.

i'm not sure anything in place today fits that better than IM. wonder if it's not possible to script a simple IM add-on to a forum where you can put a list of people from your contact list in (1 or many) to be told they are expected to go and respond asap and a resultant IM appears on their desktop awaiting their response indefinitly until they recognize it. dunno. but i can't think of another mechanism inherent to either forums or e-mail that does this already. this really is IM's core expectation

which got me chatting with spence about the different forms of communication i deal with online and what each expectation is. really it's expectations that define the methodology of communicating we employ. but at their root they are all just information.

forums
subject threaded
"long term" asynchronous
non-critical

e-mail
subject threaded
"short term" asynchronous
critical (or at least assessed critically)

IM
free form
"immediate"
critical (or at least assessed critially)

IRC
free form
"immediate"
non-critical

i think blogs = forums?

anyways, more fuel for thought.

Dan said...

First of all, weird people hang out both in forums and IRC.

Second, the remote thing is tough. When you haven't met someone, bridging the work/personal gap is difficult. It seems like most remote people I work with are weird and I have no desire to participate in any activity like this with them. This might be more of a function of me.. not sure. I guess I am wondering if this is something to build towards. How many remote colleagues do you have that you would want to talk pie with?

BigChill said...

Dan makes a valid point about talking pie with co-workers. The thing is, it's very unlikely you would approach them about pie in the first place. Perhaps they are great to talk top 5 pies with. But, it can be hard to judge that from your limited chat interaction. For instance, I have often wondered what the Collier Hill persona is from a remote perspective. Kind of a burly looking bearded black guy from Tucson. At a base level, not sure that is someone you strike up a pie conversation with. Or for that matter, any conversation except how your Tivoli endpoints are not functioning properly. When we look at it from the outside in, how interesting are any of us?

BigChill said...

Oh, and nearly forgot to talk about my favorite things:
MY wife
MY kids
MY brother
MY folks
MY house
MY car
MY bike
and can't forget, MY TriVida