Thursday, October 18, 2007

twitter, sharing, hackystat ideas

comments on our twittering for hackystat
aaron: philip is only twittering his hackystat hacking.
aaron: boo
austen: im not sure what we are supposed to twitter
aaron: haha. everything.
aaron: i think thats more interesting. thoughts.
aaron: not tasks.
aaron: like what was the PMD error
austen: true
aaron: i think the task is interesting. too
aaron: but.. to me what is more useful is knowledge
austen: its hard to type out stuff so short tho and without noticing the context switch
aaron: ah.. there is the problem.
aaron: sharing knowledge is hard.
aaron: sharing tasks is easy
aaron: sharing knowledge is more useful.
aaron: this is going on my blog.

i just just read an article in IEEE software tittled, celebrating peopleware's 20th anniversary. one of the comments in that article is kind of related to our chat above.

[peopleware] tells stories-vignettes such as the tale of the furniture police. we need to do more of this in universities, and pass on the wisdom of the panelist and peopleware by telling more stories in our cs classes.

i like the idea of knowing what is going on (project proprioception ). that sort of thing can definitely improve how a teams functions. but, the vignettes of knowledge makes me a better hacker. in addition to project proprioception, i want to gather as many 10 second vignettes from of twitter, blogs, shared items, etc as i can. i want to know what was that PMD error and did philip learn anything useful from solving that problem. i think that could be the overall goal of our collaboration investigation.

sharing is awesome. blogging is sharing to some degree. i like the 10 second knowledge thing as much things as you can fit in your day. --aaron via twitter

so, i want to share how i share stuff. i think it would be cool if we all tried to do this.
  • blogging - i blog to share information and to retrospectively think about things. here is my blog.
  • shared blogs - i star and share things in my google reader. by doing this i let other people know what types of blogs i think are cool, interesting, and useful. here is my shared blogs.
  • shared items - slightly different from shared blogs, shared items are loose webpages and items found on the internet. i haven't started doing this regularly, but i want to try it more. here is my shared items.
  • twittering - micro-blogging is also pretty cool. random thoughts are as useful as more "thought out" ones presented in "full blogs".
  • emails - a slowly dying technology for sharing. i used to write a lot of emails about my thoughts. but that is such a closed audience. boo to a closed audience.
  • chats - chats are good for detailed communications. but if it leads to any thing interesting; i quickly convert to an email or blog. yay to open source knowledge.

    anyway, the point is that; (1) i would love to read more of the hackystat developers blogs. but, no one is blogging that much. (2) i would love to read what you find to be interesting. maybe i can learn something too; in the 10 second style that i like. (3) i would love to see cool webpages that you find (via google share). (4) the moral of the story, is that we can go way beyond twitter in our quest of collaboration and sharing.

    hackystat goals
    here is a cool idea; hackystat goals! for example, a state goal that coverage needs to be higher than 95% for project foo (its currently 55%). all the effort that i will do until the goal is met is to accomplish that goal (maybe mylyn can help with that task identification). or another example, could be get rid of all codeissues. these goals adds context.

    goals gives context to what you are doing. i see something in between jira issues, mylyn, twitter to accomplish that. austen has been thinking about this as well. comment sdt or even context sdt would be awesome. hackystat goals is a way to do provide context. and i want context to be able to learn, in addition to knowing what is going on.

    i'm liking this whole movement towards hackystat as a hacking collaboration tool. i have no idea what that means; but it seems useful and cool. the best thing about working on hackystat itself is the developer interaction and learning together. hackystat should make that easier (or funner) for us. put together twitter and active time. woah... thats cool.

    hackystat generated twitter messages
    i'm not sure this encompasses philip's project proprioception idea. its probably an extension. anyway. it would be cool if hackystat analyzed the sensor data (via stream analysis, data mining, rules, etc) and sent twitter messages. for example:
  • james just committed without doing the proper build process
  • james is doing TDD!
  • james is hacking on JCS.
  • james is blah blah blah

    at some point, james won't even know what he is doing. and hackystat can say, "woah, james. congratulations, you actually did TDD for a week."

    wow, so this also ties into developer expertise.

    closing thoughts
    the basic idea is that anyone can do metric reporting. see atlassian's clover page . metrics allow us to measure and manage. thats good and can even be great! but, what's more interesting to me as a hacker is getting better. and how do i get better? i get better by acquiring vignettes of knowledge. a system that makes that easier to do would be awesome.

    i think it would be awesome for people to provide insights into their thoughts as they hack. here is how we can start to learn how to do that:
  • create a hackystat wiki page that lists everyones twitter name, blog website, shared blog webpage, and shared item webpage.
  • share, share, share! blog, blog, blog! twitter, twitter, twitter! chat, chat, chat! LEARN, LEARN, LEARN!
  • document success stories. (austen told me about a useful twitter experience)
  • 1 comment:

    Philip Johnson said...

    OK, so first off, I don't think that PMD warning was anything interesting (at least it didn't seem so at the time).

    As Groucho Marx/Freud would say, "Sometimes a PMD warning is just a PMD warning".

    I do think you're starting to articulate something pretty profound about software development in a Web 3.0 world where the "semantics" associated with processes and products start to be accessible to the "environment".

    Ultimately, Hackystat could be viewed as a kind of "central nervous system" for software development; both a communication pathway and a way to make sense out of the signals.

    As developers, we have to learn how to make use of this CNS: what kinds of signals to feed into it? When to do it? How (using what media) do we do this communication? What kinds of communications should the CNS be aware of? What kinds of communication should it not be aware of? The Agile people recognized this problem, and essentially tried to address it by saying "Put everyone in the same room at the same time, so they can just talk amongst themselves." I believe that all of these mechanisms, IM, Twitter, Email, CVS, etc. could blend together somehow to enable a similar kind of agility in a distributed context, but we're definitely not there yet.

    I was asking myself what the essential difference between Twitter and IM was, and the answer seems to be that IM provides privacy: you can IM with Austen and know that you are communicating only with him.