.. This document is © Martin F. Krafft It is available under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike Licence 2.5 ========================================================================== Method diffusion in large open-source projects ========================================================================== I'm an alien, I'm a computer scientist in the world of sociology -------------------------------------------------------------------------- .. |event| replace:: DebConf 7, Edinburgh, Scotland .. |talkdate| replace:: 21 Jun 2007 .. |author| replace:: Martin F. Krafft .. |authoremail| replace:: phd@martin-krafft.net .. |footer| replace:: More info: http://martin-krafft.net/phd/ .. container:: author |author| <|authoremail|> * `Ph.D. student`_, `Lero`_, `CSIS`_, `University of Limerick`_, Ireland * Developer with the `Debian`_, `Zope`_, and `Plone`_ projects * Author of the book `The Debian System — Concepts and Techniques`_ .. _Debian: http://debian.org/ .. _Zope: http://zope.org/ .. _Plone: http:/plone.org/ .. _Ph.D. student: http://martin-krafft.net/phd/ .. _Lero: http://lero.ie/ .. _CSIS: http://www.csis.ul.ie/ .. _University of Limerick: http://ul.ie/ .. _The Debian System — Concepts and Techniques: http://debiansystem.info/ .. container:: event |event| |talkdate| Today's menu ============ - Research overview - Adoptions in Debian - Future directions Definitions =========== Method diffusion in large open-source projects method technique, tool, procedure diffusion introducing with the goal to cause adoption large project possessing a high inertia and complex self-dynamics Research basis ============== * Debian's methods evolved over time * high interdependence of methods * stagnating efficiency in day-to-day activity * improved methods exist, but volunteers cannot be told to use them * **under what circumstances would volunteers adopt new methods?** Hypothesis ========== There exist characteristics of innovations and strategic considerations of their diffusions which **directly affect the rate of adoption** in volunteer projects Knowledge of these characteristics enables **engineered diffusions to improve efficiency of cooperation** Research approach ================= two-phased approach: - identification of attributes of successful diffusions, formalisation of guidelines (*case studies, diffusion research*) - application & verification of guidelines (*participatory action research*) Phase 1: guideline definition ============================= - **case studies** - analyse previous diffusions - interviews (experience & conceptual) - usage statistics (from repositories, mailing lists, installation reports) - (survey data) Phase 1 ======= .. container:: center .. image:: phase1.png The "guidelines" highlight those traits of a diffusion, which have the highest impact on adoption rate. Phase 2: implementation ======================= - **participatory action research** - explain successful/failing diffusions - predict success of ongoing/planned diffusions - engineer diffusions for success Phase 2 ======= .. container:: center .. image:: phase2.png Conceptual framework ==================== - skeletal structuring of attributes to facilitate comparisons of diffusions - existing frameworks from sociology and management science: - voluntary, independent adoption decisions by individuals - authoritarian, concerted diffusions - OSS more complex: strong network externalities, ideology, voluntary/cabal Framework example: Rogers' diffusions of innovations ==================================================== innovation relative advantage, compatibility, complexity, verifiability, visibility communication hard vs. soft information, mass vs. interpersonal medium, homophily social system structure, communication arrangement, social norms, opinion leaders, types of decisions consequences desirability, direct vs. indirect, anticipated vs. unexpected Problems with classical diffusion frameworks ============================================ - prior information not required - low degree of network externalities thus have to design my own framework, cherry picking from others very time-consuming Ideas for OSS-specific factors ============================== - method of development, language chosen - length of release cycles - flexibility, accessible for reinnovators - documentation - forum activity - age of bugs and responsiveness of author - manifesto - opinion leaders - multiple interfaces The adoption process ==================== According to Rogers: - knowledge - persuasion - decision - implementation - confirmation S-shaped curve of adoption speed, success defined by steepness of gradient Adoptions in Debian =================== http://wiki.debian.org/madduck/adoptions Guidelines ========== - not entirely sure what they will be yet - ideal would be a list of factors, sorted by degree of impact - requires large amounts of data - non-qualitative and not really feasible - think of them as a HOWTO Engineering for success ======================= - not searching a method to engineer diffusions of just any tool - method has to solve problems - assuming a tool maps a sensible workflow, the guidelines will help optimise its diffusion (which would happen by itself) Implications on management ========================== - treat employees as volunteers - motivation from (perceived) autonomy Thank you ========= Thank you for your attention! .. container:: author |author| <|authoremail|> * http://martin-krafft.net/phd/ * http://people.debian.org/~madduck/ .. include:: licence.en.rst .. include:: common.inc .. footer:: |footer|