Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Striking Gold: Building software better, together

Striking Gold: Building software better, together

Mining Software Repositories Conference Keynote

Brian Doll

May 19, 2013
Tweet

More Decks by Brian Doll

Other Decks in Technology

Transcript

  1. Building Software Better, Together
    Brian Doll
    @briandoll
    Striking Gold!

    View Slide

  2. California Gold Rush

    View Slide

  3. Gold Ru
    Technology Gold Rush

    View Slide

  4. Every company is a
    software company

    View Slide

  5. FTP
    CVS
    Perforce
    Subversion
    Git
    GitHub
    ’95
    ’99
    ’01
    ’03
    ’08
    ’08
    My personal journey
    through software
    repositories...

    View Slide

  6. "organizations which design systems ...
    are constrained to produce designs
    which are copies of the communication
    structures of these organizations"
    Conway’s Law:

    View Slide

  7. The GitHub Way

    View Slide

  8. The GitHub Way
    run your company like
    an open source project

    View Slide

  9. collaboration
    without
    coordination
    The GitHub Way

    View Slide

  10. electronic
    The GitHub Way

    View Slide

  11. available via URL
    The GitHub Way

    View Slide

  12. asynchronous
    The GitHub Way

    View Slide

  13. lock free
    The GitHub Way

    View Slide

  14. The best software
    is made by
    happy people
    working together

    View Slide

  15. Process vs. Vision

    View Slide

  16. Process

    View Slide

  17. Vision

    View Slide

  18. Important to
    GitHub
    My
    Interests
    My
    Skills
    What I
    work on

    View Slide

  19. View Slide

  20. issues / features
    don’t get worked on?
    What happens when...

    View Slide

  21. a day in the life...

    View Slide

  22. everyone ships,
    all the time

    View Slide

  23. Chris (new employee):
    How much is the ideal githubber expected to
    ship when operating at full awesomeness?

    View Slide

  24. Chris (new employee):
    How much is the ideal githubber expected to
    ship when operating at full awesomeness?
    Lee:
    Whatever makes you feel good, man

    View Slide

  25. The best software
    is made by
    happy people
    working together

    View Slide

  26. GitHub API : developer.github.com
    GitHub Archive : githubarchive.org
    GitHub data on Google BigQuery
    Questions: [email protected]
    Mining GitHub Data

    View Slide

  27. Team / Discussions
    •CommitCommentEvent
    •PullRequestEvent
    •PullRequestReviewCommentEvent
    •MemberEvent
    Development activities
    • CreateEvent
    • DeleteEvent
    • DownloadEvent
    • ForkEvent
    • ForkApplyEvent
    • GistEvent
    • GollumEvent
    • PublicEvent
    • PushEvent
    Social activities
    •FollowEvent
    •IssueCommentEvent
    •IssuesEvent
    •TeamAddEvent
    •WatchEvent
    Events on GitHub

    View Slide

  28. Our internal social graph
    by Derek Greentree, GitHub

    View Slide

  29. Our internal social graph
    688 repositories
    169 people

    View Slide

  30. Interactions were counted between two users when:
    • One user @mentions another in a pull request, issue,
    or commit comment
    • A user comments on another's pull request or issue
    Our internal social graph

    View Slide

  31. View Slide

  32. • 25%: 6
    • 50%: 25.5
    • 75%: 59.25
    Quantiles
    Team size at GitHub

    View Slide

  33. GitHub Data Challenge

    View Slide

  34. Source of commits. The more commits
    come from pull requests, the more open
    the project process.
    Percentage of issue comments and
    commenters coming from the project
    community (i.e. users with no commit rights
    to the main repo)
    Dr. Georgios Gousios, GHTorrent

    View Slide

  35. Dr. Georgios Gousios, http://ghtorrent.org/netviz/

    View Slide

  36. Huang Liang, Programming Language Activity Trends

    View Slide

  37. JeongHoon Byun , http://sideeffect.kr/popularconvention

    View Slide

  38. bbaudry/GitWorks

    View Slide

  39. Eduarda Mendes Rodrigues, http://zoom.it/kCsU#full

    View Slide

  40. Matthew Willson, mjwillson/ProgLangVisualise

    View Slide

  41. View Slide

  42. Jean-Noël Avila, fork to pull request latency

    View Slide

  43. Geeksta, http://bit.ly/geeksta : Anger in commit messages

    View Slide

  44. Geeksta, http://bit.ly/geeksta : joy in commit messages

    View Slide

  45. View Slide

  46. Software is
    eating the world.
    Let’s eat it faster!

    View Slide