bolker esa2014
DESCRIPTION
slides on "social aspects of software", ESA 2014TRANSCRIPT
![Page 1: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/1.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Social aspects ofecological statistical software
Ben Bolker and Steve Walker, McMaster UniversityDepartments of Mathematics & Statistics and Biology
ESA
August 2014
![Page 2: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/2.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 3: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/3.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Acknowledgements
People Mollie Brooks, Mike McCoy, Toshinori Okuyama
Support NSERC Discovery grant
![Page 4: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/4.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 5: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/5.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Community science and community software
Science as a communityactivity
Software as a communityactivity
How to make it work betterfor individuals (you!)for the community
Mowgli and the bandar-log
![Page 6: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/6.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
R
freeas in beer (gratis)as in speech (libre)
package infrastructureeasy installationdependency/version managementdocumentation (help pages & vignettes)testing
drawbacks:language design wartsperformancecommunity problems(hostility, closed development)
![Page 7: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/7.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
R
freeas in beer (gratis)as in speech (libre)
package infrastructureeasy installationdependency/version managementdocumentation (help pages & vignettes)testing
drawbacks:language design wartsperformancecommunity problems(hostility, closed development)
![Page 8: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/8.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
R
freeas in beer (gratis)as in speech (libre)
package infrastructureeasy installationdependency/version managementdocumentation (help pages & vignettes)testing
drawbacks:language design wartsperformancecommunity problems(hostility, closed development)
![Page 9: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/9.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 10: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/10.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
The world of R packages
●
●
●●●●●●
●
●
●
●
● ●
●●●●●
●
●●●●
●
●
●
●
●
●
●●
●
●
●
●●●●●●●
●
●●
●
●
●
●
●●●●●
●
●
●
●
●
●
●●●
●
●
●●●
●
●●●
●
●
●
●
●
●
●
●
●●
●
●●
●●
●●●
●●
●
●●
●●●
●●●
●
●
●●
●
●●●●●
●
●●
●
●●
●●●
●
●●
●●●
●
●
●●
●
●●
●
●
●●●
●
●
●
●●●
●
●
●●
●
●●
●●
●●●●
●
●
●●●●● ●●
●
●
●
●●
●●
●●●●
●
●
●
●
●
●
● ●●
●●
●
● ●
●
●● ●●●
●●
●
●●
●●●●
●
●
●●
●
● ●●●
●
●●
● ●●
●
●●
●
●●
●●●
●●
●
●
●
●
● ●●
●
●
●
● ●
●●
●
●
●
●●
●●
●
●●
●●●●●●●
●●●●
●
●
●
●
●
●
●●
● ●●●●
●●
● ●●●●
●●
●
●
●
●
●●
●
●
●●
●
●●●●
●●
●
●
●●
●
●●●
●
●●
●●
●
●
●
●●
●
●●
●
●●●●
●●●
●●●
●●●●●●● ●●
●
●
●
●
●
●
● ●
●●●
●
●
●●
●
●
●
●
●
●●
●
●●●
●
●●
●
●
●●
●
●
●
●
●
●
●●
●●
●●●●●
●●
●
●●●
●●
●●
●
●●
●●
●●
●
●●●●
●
●
●
●
●
●●●
●●●●
●
●
●
●
●●
● ●●
●
●●●●
●
●
●●
●●●●
●●
●
●
●
●
●
●●● ●
●
●
●
●●
●
●
●●●
●●
●●
●●
●
●
●
●●●
●●●●
●
●
●●●●●
●●●●●
●
●●●
●●●
●
●
●
●
●
●●●
●
●
●
●
●
●●
●●●●●
●
●●●●
●●
●●
●
●●
●
●
●
●●
●●●●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●● ●
●
●
●
●●
●●
●
●
●●
●
●●●●
●
●
●
●
●
●
●
●●●
●
●●
●
●●●
●
●
●
●●
●●
●●●
●● ●
●●●●●
●
●
●
●
●
●●
●●
●●
●
●
●●
●●
●
●
●
●
●
●●
●●●
●
●
● ●● ●
●
●
●
●
●●●●
●●
●●
●
●●
●
●●●●
●●
●
●
●
●
●●●
●
●●
●
●
●●
●
●
●●●
●
●
●
●
●
●
●●●
●
●
●
●●
●●
●
●
●●
●
●●
●
●●●
●●
●
●
●●
●
●●
●
●●●●
●● ●
●
●
●●
●●●●
●
●
●●
●
●●
●
●
●
●
●●●
●●●
●
●
●
●
●
●
●
●●●●
●●●
●
●
●
●
●
●
●●
●●●●●
●
●
●
●●
●●
●●
●●●
●●●
●●
●●
●
●●●● ●
●
●●●●
●●
●
●
●
●
●
●
●●●●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●
●
●●●
●
●
●
●●●●●
●● ●
●
●
●●●●
●●
●●●●
●
●
●●●●
●
●
●
●
●
●●●
●●
●● ●●
●
●●●● ●
●
●● ●
●
●
●●
●
●
●
●
●
●●●
●
●
●
●
●●
●●●
●
●●
●●●
●
●
●
●●●●●●
●●●●●
●●
●
●●●
●●●●●
●
●●
●
●●●
●
●● ●●
●
●●
●
● ●
●
●
●●
●
●●
●●
●
●
●●●●
●
●●
●
●
●●
●●
●●
●
●
●
● ●●●
●
●
●
●
●●
●●
●
●
●●
●
●
●●●
●
●
●●
●
●●
●
●●
● ●●●●
● ●
●
●
●●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●● ●
●●
●
● ●●
● ●●
●
●
●●
●●
●●
●● ●●●
●
●
●●
●●●●●● ●
●
●
●
●●
●
●
●
●●
●●●
●●
●● ●
●
● ●●
●
●●
●
●●
●
● ●
●
●●
●
●●
●●● ●
●
●
●●●
●● ●●●
●●●●
●
●● ●●
●
●
●
●● ●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
● ●●●
●●●
●
●
●
●
●
●
●
●
●
●●●●●●
●●
●
●
●●●●
●●●●●●
●●
●
●
●
● ●●●●
●●●
●
● ●●●
●●
●●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●
●
●●●●●
●
●
●
● ●
●●
●
●●
●
●
●●
●● ●●
●●
●
●
●●●
●
●●
●●● ●
●
●●●●●
●
●●
●
●
●
●
●●●●●
●
●
●
● ●●
●
●
●●
●●
●●●●
●●
●
●
●
●●
●●●
●
●
●
●
●
●
●●
●●
●
●
●●
● ●
●
●
●
●
●
●
●
●
●
●●
●
●
●
● ●
●●●●●● ●
●
●
●
●
●●●
●
●
●●
●
●●
●
●●
●
●●●
●● ●
●
●
●
●
●
●
●
●
●●●●
●
●
●●●
●●
●●
●
●●
●
●●●
●
●
●
●
●●●
●●●
●
●
●
● ●●●
●
●
●●●
●
●
●●
●●●
●
●●
●
●
●
●●●●●
●
●●●●●
●
●
●
●
●
●●●●
●●●
●●
●
●
●
●
●
●
●●
● ●●
●
●
●●
●●●●
●
●
●
●
●
●
●
●
●●●● ●●●
●
●
●●●●
●●
●
●●
●
●●
●
●●●
● ●●
●
●
●●
●
●
●
●●
●
●
●
●● ●
●
●●
●
●●●
●
●
●
●
●●
●●● ●●●
●
●
●
●●
●●●
●●●
●
●
●●
●●
●
●
●
●
● ●●
●
●●
●● ●
●
● ●●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●
●
●
●
●
●
● ●
●
●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●●●●
●
●
●
●●
●●
●
●
●●
●
●
●
● ●
●●●●
●
●
●●
●
●●●●
●●
●
●
●
●
●●
●●
●●
●●●●
●●●●●●●
● ●●
● ●●
●
●
●●●
●
●
●
●●
●
●● ●
●
●●
●
●
●
●
●● ●
●●
●● ●
●
●
●
●●
●●
●
●
●
●●
●
●●
●
●●
●
●
●
●
●●● ●
●
●
●
●
●
●●●
●
● ●●●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●●●●
●●●
●
●
●
●
●
●
●● ●●●
●
●
●
●
●●
●
●●
●
●●
●●
●
●
●●●●
●
●
●●
●
●
●●
●
●
●●●
●
●
●
● ●●
●●●
●
●
●
●
●
●
●
●●●
●
●
● ●●
●●
●
●
●●●
●
●
●
●
●
●●
●●●
●●
●●●
●●
●
●●
●●●●●
●
● ●
● ●●
●
●●●
●
●
●●●●●
●
●●
●
●
●
●
● ●●
●
●●
●
●
●
●●● ●●
●
●
●
●●
●
●
●●●●●●● ●
●
●●●
●
●
●
●
●●
●
●
●
●
●
●●
●
●●
●●
●●●
●●
●
●●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●●●●●●●
●●
●
●●
●
●
●●●
●
●●
●
●
●
●
●●
●
●●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●●●●
●
●
●●
●●●
●●●●
●
●●●
●
●
●●●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●● ●●●●●
●●
●
●●●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●●●●
●
●●●
●
● ●
●
●
●
● ●
●
●●●●●●
●
●
●
●●
●●
● ●●
●
●
●●●
●
●
●
● ●●●
●
●
●
●
●
●●
●●
●●●●
●●●
●●
● ●●●
●
●●●
●
●●●●
●●●
●
●●
●
●
●●
●
●●
●●
●
●●●
●
●
●●●●
●●
●
●
●●●
●●
●
●●
●
●
●
●
●
●
●●
●
●
●
●●
●●●●●
●
● ●●
●
●●
●
●
●●●●
●●●●
●●●
●
●
●●●
●
●●●
●
●●
●●
●
●
●
●
●●●
●
●
●●●
●●●●●●
●
●
●
●
●●
● ●●●●
●
●
●●●
●
●●●●
●●
●
●
●●●
● ●
●
●
●●
●
●
●●
●
●
●
●●
●
●
●
●
●●●●
●●●●
●
●●
●
●
●
●
●●
●
●●
●●●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●●●●
● ●
●
●
●●
●
●
●
●
●●●●
●
●●
●
●
●●
●●● ●
●●
●
●
●
●
●
●●●
●●
●
● ●
●●
● ●●
●
●●●●
●
● ●●
●
●●
●
●
●
●●
●
●
●●●
●
● ●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●●
●●
●
●●●
●
●●
●
● ●
●●●
●
●
●●●●●
●
●
●●●●
●●
●
●
●
●●●●
●●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●●
●
●
●●
●
●●
●
●●
●●
●●
●
●
●
●●
●●
●
●● ●
●
●
●●
●
●●●●
●●●
●
●
●●
●●●
●
●
●
●●
● ●●●●
●
●
●
●●●
●
●●● ●●
●
●
● ●●
● ●●●
●●●
●
●
●
●
●●●●●
●
●
●●
●●●
●
●
●
●
●
●●
●
●
●
●
●●●
●●
●
●
●
●
●
●●
●●
●●●●●●●●●
●
●
●
●
●
●
●
●
●
●
● ●●●
●●
●
●●
●
●●
●
●●●
●
●
●
●
●●
●●
●
●
●●●
●
●
●
●
●●
●
●●●
●
●
●●
●
●
●
●
●
●
●●
●
●
●●
●●●●
●
●●● ●●
●●
● ●
●
●
●
●●
●
●●
●
●
●
●
●●●●●●●●
●
●●●●
●●●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●●●●
●
●
●●
●
●●
●●
●●●
●●●●●
●●
●
●●●
●●
●●●
●●
● ●
●
●
●
●● ●
●
● ●
●●
●
●
●
●
●
●●●●
●●●
●●
●●● ●●
●●
●
●
●
●● ●●
●
●●
●●
●
●●●
●●
●●
●
●
●
●●
●
●
●●
●●●●●
●
●●
●●● ●●
●
●
●●
●
●●●●
●
●●
●
●
●
●●
●
●●
●
●●●
●● ●
●
●●●●
●
●
●●●
●
●
●●
●●●
●
●
●●●●
● ●●●●
●
●
●
●
●●●●
●
●●
●
●
●●
●
●
●
●●
●●●
●●
●●
●
●
●●●
●
●
●
●
●
●
● ●
●
●
●●
●●
●
●●
●●
●●●
●
●●●
●
●
●
●
●
●
●
● ●● ●●●
●●●
●
●
●
● ●
●
●
●●
●
●
●
●●●●
●●
●
●
●●●
●
●
●
●
● ●●
●
●●●
●●●● ●●
●
● ●
●●●
●● ●
●●●
●●●●●
●
●
●
●●●●
●●●●● ●●●
●
●●
●●
●
●●
●●
●●
●
●
●●●
● ●
●●
●
●●
●
●
●
●●
●
●●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
● ●● ●
●
●
●●
●
●
●●
●
●●●●
●●
●●
●
●
●
●
●●
●
●
●
●●●●
●
●
●●
●
●● ●
●●
●
● ●
●
●
●
●● ●
●
●
● ●
●
●●●
●
●●
●
●●
●
●
●●
●
●
●
●
●
●
●●●●
●
●
●●
●●
●● ●●
●●●
●
●
●●●
●
●
●
●
●●
●
●
●●●●
●
●
●
●●
●
●●
●●
●
●
●
●●●
●
● ●● ●
●
●
●
●●●
●
●
●● ●●
●●
●●●●
●
●
●
●●
●
●●● ●●●
●●●●
●
●
●
●●●●●
●
●●●
●
●
●
●
●●
●
●●●●
●
●●
●
●●
●
●
●● ●●● ●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●●●
●●
●
●
●●
●●
●
●●
●
●●
●●
●●●● ●●● ●
●
●
●
●
●●●●
●
●
●
●
●
●
●
●
●●●
●
●●
●●●●●●
●● ●
●●●●●
●● ●●●●
●
●●●
●
●
●
●
●
●
●●●
●●
●
●
●●●
●
●
●
●●
●●●●●●
●
●●●●
●● ●
●●●
●● ●
●
●
●
●●
●●
●
●
●
●●
●
●●●
●
●●●●
●●
●●●
●●●
●●●●●●
●
●
●
●
●●●
●● ●
●●
●
●●●●●●
●
● ●
●●
●●
●
●●
●
● ●●●
●
●
●
●●
●●
●
●●●
●
●
●●
●
●
●●
●
●
●●
●
●
●
●●● ●
●●●●●●
●
●●●●
●●
●
●
●●● ●●●
●●
●
●
●
●●● ●●
●●
●
●●●
●●
●●●
●
● ●●
●
●
●
●●
●
●●
●
●
●
●●
●
●
●
●
● ●●
●
●●
●
●●
●
●
●
●● ●
●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●● ●●
●
●
● ●●●
●
●
●
●
●
●
●
●●
●
●●●●
●●
●●
● ●
●
●●●
●
●
●
● ●
●
●●
●
●
●●
●●●●
●●
●●
●●
●
●●
●
●
●●●
●
●●
●
●
●
● ●●
●●●
●
●●●
●●
●
● ●
●●● ●●●
●●
●
●
● ●●
●
●
●
●
●
● ●●●
●
●●
●●
●
●
●●
●●●
●●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●
●
●
●●●
●
●●
●
●
●●
●
●
●●●●
●
●
●●
●●● ●
●●●●
●●●
●
●
●
●●
●
● ●● ●
●
●
●
●
●
●
●●
●●●
●
●
●
●
●●
●●●●
●
●
●
●●
●
●
●
●
●●●●●●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●●
●
●●
●
●● ●●●●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●●●
●●●●●
●
●●
●
●
●
●
●●
●
●
●●●
●
● ●●
●●●●
●
●
●●●
●
●●
●
●
●
●
●●
●
●
●
●●●●
●
●●
●
●●
●
●
●
●●
●
●●
●● ●
●
●●
●●
●●
●●
●●●
●● ●●
●
●
●●●●
●
●
●●●●
●
●
●
●
●●●●
●●●●●●
●●
●●
●
●●●●●●●
●●●
●●
●
●
●
●
●
●
●●
●●●●
●
● ●
●
●●●●●●
●
●●
●
●●
●●●
●
●
●
●
●●●●●
●●● ●
●
●●●
●●
●●●
●
●●
●●●●
●
●●
●
●
●●
●●
●
●
●●
●●●
●●●
●
●●
●
●
●
●
●
●●●● ●
●
●●
●
●
●
●●●
●
●●●
●
●
●
●●●
●
● ●
●
●●●
●
●●●
●
●
●
●●
●
●●●●●●●
●
●
●
●● ●●●●
●●●
●●●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●●
●
●
●
●
●●
●
●●●
●●●
●
●●
●
●
●●
●●
●
●●
●
●●
●
●
●●●
●
●
●
●
●
●●
●●●
●
●
●
●●
●●
●●
●●●
●
●●
● ●
●●●
●
●●
●●
●
●●●
●
●
●●●
●
●
●
●
●●
●
●
● ●
●
●
●
●
●
●
●
●
●
● ●●●●●
●●
●
●
●●
●●●●
●
●
●
●
●
● ●
●●●●
●
●
●
●
●
●●●●
●
●●●
●●
●
●
●
●
●
●
●
●
●
● ●
●●●
●
●●●
●●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●●● ●● ●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●●
●●
●●
●
● ●
●
●
●
●
●●
●
●
●●●
●●●
●
●●
●
●●
●●
●●●●
●●●●●●
●
●●●
●
●
●
●
●
●●
●●
●
●●
●
●
●
●●●
●●
●
●
●●
●●
●●●●
●
● ●
●
●●
●
●
●
●
●
●
●●●
● ●
●
●●●
●●●●●
●●
●
●
●●
●●
●
●●●●●
●●
●
●●
●
●
●●
●
●●
●●●●
●
●
●
●●
●●
●
●
●
● ●●
●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●● ●●
●
●●●
●
●
●
●
●●●●
●
●
●●
●
●
● ●
●
●
●●●●
●
●●● ●
●●
●● ●
●●
●
●●●
●●
●
●
●
●
●●
●●
●
●●
●●●●●●
●
●
●
●
●●
●
●● ●
●
●
●●●●●●
●
●
●●●●
● ●●●
●●
●●
●
●●
●
●
●●
●
●
●●
●●●
●
●
●
●
●
●●
●
●●
●
●●●
●●
●●
●
●●●
●
●
●●
●●●
●●
●
●
●● ●
●●
●
●●
●
●●●
●●
● ●●●●
●
●
●
●
●●
●●
●
●●●●●
●
●
●●
●
●
●●
●
●
●
●●●●●●●
●
●●
●
●●●●●
●
●●●●
●●
●
●
●
●●
●●●
●
●
●● ●
●
●
●●
●●
●
●
●
●
●
●●
● ●
●
●●● ●●
●●●●
●
●
●
●●●●
●●
● ●
●
●
●
●
●●
●●
●
●
●
●●
●
●
●●●●●
●
●●●●●●
●●
●
●●●
●●●
●
●
●
●
●
●
●
●
●
●●
●● ●●●●
●
●●●●
●
●●
●
●●
●
●●
●
●●
●
●
●●
●●
●●
●●●
● ●●●
●
●●●●●●
●
●
●●
●
●●
●
●●
●
●
● ●●
●
●●
●●
●
●
●
●
●
●
●
●●●
●
●●●
● ●●
●●●
●
●●
●●
●●●
●
●●
●●●
●
●
●
●
●
●●●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●●
●
● ●●●
●
●●● ●
●●
●
●
●
●●
●● ●
● ●
●●
●
●●●●●
●●
●●
● ●●●
●●
●●
●
●
●
●
●
●●●●
●
●●●●
●●
●
●●
●
●
●
●
●●●
●●
●
●●
●
●
●
●
●
●●●●●
●
●
●
●
●
●
●●
● ●●
●
● ●●●
●●●
●●
●
●
●●
●
●
●
●
●●●●
●
● ●
●
●
●
●
●
●●●
●
●●●
●●
●
●
●●●
●●
●
●●●
●
●
●
●
●
●●
●
●●
●
●●
●●●
●
●
●
●● ●●●
●●
●●
●●
●
●
●
●●●
●●
●● ●
●
●●
●
●
●
●
●
●
●●
●
●
●
●●● ●●
●
●
●●
●
●
●
●
●●
●
●
●●●
●
●
●
●
●
●●
●●
●
●
●●
●●
●●
●●
●
●
●
●●●
●●●
● ●●
●●
●
●
●
●
●●●●
●
●●●●
●
●●●
●
●
●
●●
●
●●
●●●
●
●●
●
●●
●●
●●
●
●
●
●
●
●●●
●
●
●
●●
● ●●●●
●●
●●
●
●
●●
●●●
●●●
●●
●●
●
●●
●
●●
●●
●●●
●●
●
●●
●
●● ●
●●
●●
●
●
●
●●
●
●
●
●●
●●
●
●●
●
●●
●
●● ●●
●
●
●
●
●
●
●
●●
●●●
●●
●
●
●
●
●●●
●
●
● ●
●●●
●
●●
●
●
● ●●●
●●
●
●● ●●
●
●●
●
●
●
●●
●●●●●
●
●
●
●
●
●●●
●
●
●
●
●
●
●●●●●
●●
●
●●
● ●●●●
●
●●●
●●
● ●●
●
●
●
●
●
●
●
●
●
●●
●●
●●●
●
●●●
●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●●
●●
●
●
●●
●
●●●●●
●●●
●
●●
●
●
●●
●●
●
●
●
●●●
●
●
● ●
●
●
●
●●
●
●●
●●●●
●
●●● ●
●
●
●
●
●
●
●
● ●
●●●●
●●
●
●
●
●
●
●
●
●●●●● ●
●
●
●
●●
●●●●
●
●●●●●●●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●●
●
●●●●
●●●●●●●●
●
●●●●●●
●
●
●
●
●
●
●●
●●
●
●●
1e+02
1e+03
1e+05
1 2 5 10 100 1000Total reverse dependencies (+1)
Tota
l dow
nloa
ds
![Page 11: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/11.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Single-project
code for a single paper or project or course
verbal/mathematical description < pseudocode< code blobs < package < GUI
o�-CRAN: maybe R-forge/Github/custom repository
�community of one�
target audience: authors, reproducers
no (or few) citations, no reverse dependencies
unmarkedAutocorr (Brooks et al., 2013), bio3ss3
![Page 12: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/12.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Special-purpose
probably on CRAN, maybe R-forge/Github
maybe Journal of Statistical Software
target audience: specialists
some citations, probably no reverse dependencies
cpcbp (McCoy et al., 2006), mixstock (Bolker et al., 2003,2007), emdbook (Bolker, 2008)
![Page 13: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/13.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
General
CRAN if possible
lme4, R2admb, glmmADMB, bbmle, coefplot2
target audience: generalists
many citations, lots of reverse dependencies
lme4 (Bates et al., 2014), glmmADMB (Skaug et al.,2014-05-23), bbmle (Bolker and Team), coefplot2 (Bolkerand Su, 2011)
![Page 14: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/14.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Users
wide range of knowledge:from�I just want it to work�to�I just sent you a pullrequest on Github�
(wider than in other �elds?)
![Page 15: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/15.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Contributors
●
●
●
●
●
●
●●
●●
●
●●●
●●
●
●
●
●●
●
●
●●● ●● ●●●1
10
1000
1 2 5 10 20 50# of authors
# of
pac
kage
s
![Page 16: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/16.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 17: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/17.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Development dilemmas
�eating your own dog food�vs.developer blindness
Google-beta syndrome:when should you release?(lme4 version 0.99999...;cpcbp package)
backward compatibilityde�ng an API andsticking to itsemantic versioning
![Page 18: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/18.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Development dilemmas
�eating your own dog food�vs.developer blindness
Google-beta syndrome:when should you release?(lme4 version 0.99999...;cpcbp package)
backward compatibilityde�ng an API andsticking to itsemantic versioning
![Page 19: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/19.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Development dilemmas
�eating your own dog food�vs.developer blindness
Google-beta syndrome:when should you release?(lme4 version 0.99999...;cpcbp package)
backward compatibilityde�ng an API andsticking to itsemantic versioning
![Page 20: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/20.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
User friendliness/interfaces
how hard should you try to make your methods usable?(Dynamic Ecology blog post)
interface design:Reaction~1+Days + (1+Days|Subject)
Reaction~1+Days, random=~us(1+Days):Subject
model Reaction = Days;
random Int Days / type=un sub=Subject;
warning messages:sensitivity/speci�city, creeping nannyism
![Page 21: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/21.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
User friendliness/interfaces
how hard should you try to make your methods usable?(Dynamic Ecology blog post)
interface design:Reaction~1+Days + (1+Days|Subject)
Reaction~1+Days, random=~us(1+Days):Subject
model Reaction = Days;
random Int Days / type=un sub=Subject;
warning messages:sensitivity/speci�city, creeping nannyism
![Page 22: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/22.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
User friendliness/interfaces
how hard should you try to make your methods usable?(Dynamic Ecology blog post)
interface design:Reaction~1+Days + (1+Days|Subject)
Reaction~1+Days, random=~us(1+Days):Subject
model Reaction = Days;
random Int Days / type=un sub=Subject;
warning messages:sensitivity/speci�city, creeping nannyism
![Page 23: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/23.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 24: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/24.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Responsibilities
Do you have a responsibility toFix bugs?Provide features?Give advice?
Does the �no liability� clause of free software licenses(e.g. GPL §16) absolve us of moral responsibility?
![Page 25: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/25.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
A cautionary example
Mismatch between simpleGibbs sampler withequivalent WinBUGSimplementation
Bug (??) in relativelywidely used software;haven't found time todiagnose/�x it!
Contribution
Den
sity
05
1015
0.0 0.2 0.4 0.6 0.8 1.0
NWFLNWFL
0.0
0.5
1.0
1.5
SOFLNWFL
02
46
810
NWFLSOFL
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.5
1.0
1.5
SOFLSOFL
tmcmcwbugswbugsLwbugsLL
![Page 26: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/26.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
What's in it for you?
$¿¿¥ (NOT)software as commodity
citations?of package?of J. Stat. Software paper?of associated ecology paper?
visibility/reputation
good karma
![Page 27: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/27.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Outline
1 Introduction
2 PackagesPackage scopePackage communities
3 The soft side of software development
4 Ethics and incentives
5 Conclusions
![Page 28: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/28.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
Conclusions
soft/community aspects of statistical/ecological computationare important
openness is good, but hard
best practices arenot well articulated(e.g. Wilson et al. (2014), other items from the SoftwareCarpentry reading list)
![Page 29: Bolker esa2014](https://reader034.vdocument.in/reader034/viewer/2022051323/549d40c0ac7959ec2a8b48f4/html5/thumbnails/29.jpg)
Introduction Packages The soft side of software development Ethics and incentives Conclusions References
References
Bates, D., Maechler, M., et al., 2014. lme4:Linear mixed-e�ects models using Eigen andS4. ArXiv e-print; submitted to Journal ofStatistical Software.
Bolker, B. and Su, Y.S., 2011. coefplot2:Coe�cient plots. R package version 0.1.3.2.
Bolker, B. and Team, R.D.C. bbmle: Tools forgeneral maximum likelihood estimation. Rpackage version 1.0.17.
Bolker, B., Okuyama, T., et al., 2003. EcologicalApplications, 13(3):763�775.
�, 2007. Molecular Ecology, 16:685�695.doi:10.1111/j.1365-294X.2006.03161.x.
Bolker, B.M., 2008. Ecological Models and Datain R. Princeton University Press, Princeton,NJ.
Brooks, M.E., McCoy, M.W., and Bolker, B.M.,2013. PLoS ONE, 8(10):e76389.doi:10.1371/journal.pone.0076389.
McCoy, M.W., Bolker, B.M., et al., 2006.Oecologia, 148:547�554.doi:10.1007/s00442-006-0403-6.
Skaug, H., Fournier, D., et al., 2014-05-23.Generalized Linear Mixed Models using ADModel Builder. R package version 0.8.0.
Wilson, G., Aruliah, D.A., et al., 2014. PLoSBiology, 12(1):e1001745. ISSN 1545-7885.doi:10.1371/journal.pbio.1001745.