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

Scientific Software and the Open Collaborative Web

Arfon Smith
November 17, 2013

Scientific Software and the Open Collaborative Web

Practices vary between scientific domains but all too often the sharing of research software is done on an ad hoc basis between individuals and with little thought about the wider community. With code and computation routinely forming the backbone of many academic endeavours we need to focus on publishing *all* of the products of our research – papers, software, data and provenance. In this talk I will highlight some promising examples from across academia and discuss how software development in the sciences could benefit from the collaboration norms of a modern open source project.

Arfon Smith

November 17, 2013
Tweet

More Decks by Arfon Smith

Other Decks in Science

Transcript

  1. Scientific Software
    and the
    Open Collaborative Web
    Arfon Smith
    @arfon

    View full-size slide

  2. http://www.flickr.com/photos/blachswan

    View full-size slide

  3. http://www.flickr.com/photos/esoastronomy/

    View full-size slide

  4. http://www.flickr.com/photos/esoastronomy/
    http://www.flickr.com/photos/jamiegilbert

    View full-size slide

  5. http://amandabauer.blogspot.com/

    View full-size slide

  6. Diffraction grating
    Telescope
    Detector

    View full-size slide

  7. 130 130 1 2048
    189 189 258 258
    480 562 378 378
    493 521 390 397
    851 851 247 274
    319 319 304 580
    493 511 610 636
    188 188 228 228
    > cat bad_pix_mask.txt

    View full-size slide

  8. Wasteful
    2 days work
    !

    View full-size slide

  9. Wasteful
    2 days work
    3 observing runs/week
    !

    View full-size slide

  10. Wasteful
    2 days work
    3 observing runs/week
    52 weeks in year

    View full-size slide

  11. Wasteful
    2 days work
    3 observing runs/week
    52 weeks in year
    15 year detector lifetime

    View full-size slide

  12. Wasteful
    2 days work
    3 observing runs/week
    52 weeks in year
    15 year detector lifetime
    !
    2*3*52*15 = 4680 days (13 years)

    View full-size slide

  13. Wasteful… but the norm
    2 days work
    3 observing runs/week
    52 weeks in year
    15 year detector lifetime
    !
    2*3*52*15 = 4680 days (13 years)

    View full-size slide

  14. We don’t know any different

    View full-size slide

  15. We’re taught to focus on
    research not tools

    View full-size slide

  16. We don’t act any different

    View full-size slide

  17. Products of research, not
    software valued

    View full-size slide

  18. Not treating software as first
    class research objects

    View full-size slide

  19. “publishing a paper about
    code is basically just
    advertising”
    David Donoho
    http://www.stanford.edu/~vcs/Video.html

    View full-size slide

  20. How is the Open Source
    community doing it?

    View full-size slide

  21. Culture of reuse

    View full-size slide

  22. Low friction collaboration

    View full-size slide

  23. The pull request

    View full-size slide

  24. Code first, permission later

    View full-size slide

  25. “open source is…
    reproducible by necessity”
    Fernando Perez
    http://blog.fperez.org/2013/11/an-ambitious-experiment-in-data-science.html

    View full-size slide

  26. Better at collaborating
    because they have to be

    View full-size slide

  27. The social web


    likes props
    favs

    View full-size slide

  28. The social web
    The collaborative web

    View full-size slide

  29. GitHub is about helping people
    build software together

    View full-size slide

  30. What’s happening today?

    View full-size slide

  31. Collaboration around code

    View full-size slide

  32. Unidata: geosciences

    View full-size slide

  33. Astropy: astronomy

    View full-size slide

  34. Collaborative authoring

    View full-size slide

  35. Collaborative teaching

    View full-size slide

  36. Collaborative data collection

    View full-size slide

  37. Towards Collaborative
    Versioned Science

    View full-size slide

  38. How do we make this
    behaviour the norm?

    View full-size slide

  39. Incentive model

    View full-size slide

  40. http://dx.doi.org/10.6084/m9.figshare.828487

    View full-size slide

  41. http://dx.doi.org/10.6084/m9.figshare.828487

    View full-size slide

  42. “publishing a paper about
    code is basically just
    advertising”
    David Donoho
    http://www.stanford.edu/~vcs/Video.html

    View full-size slide

  43. Derive meaningful metrics
    from open contributions

    View full-size slide

  44. “Academic environments of
    today do not reward tool
    builders”
    Ed Lazowska, OSTP event
    http://lazowska.cs.washington.edu/MS/MS.OSTP.pdf

    View full-size slide

  45. A VISION AND STRATEGY
    FOR SOFTWARE FOR
    SCIENCE, ENGINEERING,
    AND EDUCATION

    View full-size slide

  46. Establish a virtuous cycle#
    •  6%working%groups,%each%with%#
    •  3:6%faculty%from%each%ins;tu;on#
    14#
    http://lazowska.cs.washington.edu/MS/MS.OSTP.pdf

    View full-size slide

  47. http://lazowska.cs.washington.edu/MS/MS.OSTP.pdf
    Software Tools, Environments, and Support#
    •  SoSware%environments%and%tools%are%crucial%
    •  Organic,#sustainable,#reusable,#extensible#
    •  Easy#to#translate#across#problem#domains#
    •  The#creaHon#and#usage#of#today’s#tools#and#sojware#
    environments#are#distracHng#from#the#science#
    •  Today's%academic%environments%do%not%reward%tool%builders#
    •  How#can#the#development,#hardening,#sustaining,#sharing,#
    and#integraHon#of#techniques#into#a#reusable#sojware#
    infrastructure#be#recognized#and#incenHvized?#
    17#
    Example%approach:%Teams%of%soSware%architects,%engineers,%
    and%researchers%who%will%produce%data%science%tools%and%will%be%
    evaluated%on%the%impact%of%these%tools%

    View full-size slide

  48. What can we do today?

    View full-size slide

  49. Share more often

    View full-size slide

  50. If you’re going to share it then
    you better put a licence on it

    View full-size slide

  51. Share more often
    (no matter how small)

    View full-size slide

  52. 130 130 1 2048
    189 189 258 258
    480 562 378 378
    493 521 390 397
    851 851 247 274
    319 319 304 580
    493 511 610 636
    188 188 228 228
    > cat bad_pix_mask.txt
    > git clone [email protected]:arfon/aat/pixel_masks

    View full-size slide