Developing a Community and an Ecosystem with NuGet

Paula Hunter
Paula HunterExecutive Director at NFC Forum
Developing a
Community and
Ecosystem with NuGet
Phil	
  Haack,	
  Jeff	
  Handley,	
  Howard	
  Dierking	
  
How did we get here?
Developing a Community and an Ecosystem with NuGet
Developing a Community and an Ecosystem with NuGet
Developing a Community and an Ecosystem with NuGet
Developing a Community and an Ecosystem with NuGet
NPack
NuPack
Nuget
Developing a Community and an Ecosystem with NuGet
Developing a Community and an Ecosystem with NuGet
The Core Team
•  Funded	
  by	
  Microso;	
  
•  13	
  People	
  	
  
•  6	
  developers	
  	
  
•  4	
  testers	
  
•  3	
  overhead	
  (Howard,	
  Jeff,	
  Ranjini)	
  
The Scope of NuGet
•  NuGet	
  client	
  
•  NuGet.Core	
  
•  Visual	
  Studio	
  add	
  in	
  –	
  runs	
  in	
  VS	
  2010,	
  VS	
  2012,	
  and	
  
beyond	
  
•  nuget.exe	
  
•  WebMatrix	
  client	
  
•  NuGet	
  Gallery	
  
•  Gallery	
  applicaRon	
  code	
  
•  hSp://nuget.org	
  operaRons	
  
•  NuGet	
  docs	
  (hSp://docs.nuget.org)	
  
•  NuGet	
  blog	
  (hSp://blog.nuget.org)	
  
Some Numbers
Usage
•  ConsumpRon	
  
•  4,648,997	
  Visual	
  Studio	
  client	
  downloads	
  (4.5/5	
  stars)	
  
•  270,877	
  downloads	
  of	
  NuGet	
  2.5	
  (released	
  13	
  days	
  ago)	
  	
  
•  68,093,144	
  package	
  downloads	
  
•  Package	
  authoring	
  
•  12,566	
  unique	
  packages	
  
•  94,070	
  total	
  packages	
  
hSp://nuget.org	
  	
  
NuGet Client (http://nuget.codeplex.com)
•  3,570	
  commits	
  
•  95	
  contributors	
  
•  61,086	
  LOC	
  
•  Stable	
  YOY	
  commit	
  rate	
  
•  48	
  contributors	
  in	
  the	
  last	
  12	
  months	
  (+26%	
  YOY)	
  
•  4	
  new	
  contributors	
  in	
  the	
  last	
  30	
  days	
  
hSp://www.ohloh.net/p/nuget	
  	
  
NuGet Gallery (https://github.com/nuget/nugetgallery)
•  1,314	
  commits	
  
•  27	
  contributors	
  
•  51,768	
  LOC	
  
•  Stable	
  YOY	
  commit	
  rate	
  
•  18	
  contributors	
  in	
  the	
  last	
  12	
  months	
  (+20%	
  YOY)	
  
hSp://www.ohloh.net/p/nugetgallery	
  	
  
NuGet Docs (https://github.com/nuget/nugetdocs)
•  524	
  commits	
  
•  62	
  contributors	
  
•  Decreasing	
  YOY	
  commit	
  rate	
  
•  3	
  new	
  contributors	
  in	
  the	
  last	
  30	
  days	
  	
  
•  32	
  contributors	
  in	
  the	
  last	
  12	
  months	
  (-­‐15%	
  YOY)	
  
hSp://www.ohloh.net/p/nugetdocs	
  	
  
NuGet Docs (https://github.com/nuget/nugetdocs)
•  524	
  commits	
  
•  62	
  contributors	
  
•  Decreasing	
  YOY	
  commit	
  rate	
  
•  3	
  new	
  contributors	
  in	
  the	
  last	
  30	
  days	
  	
  
•  32	
  contributors	
  in	
  the	
  last	
  12	
  months	
  (-­‐15%	
  YOY)	
  
hSp://www.ohloh.net/p/nugetdocs	
  	
  
This	
  _might_	
  be	
  
related	
  
Day to Day
We’ve Learned a few things
•  With	
  Visual	
  Studio	
  2012,	
  NuGet	
  
shipped	
  "in	
  the	
  box"	
  with	
  every	
  SKU	
  
of	
  Visual	
  Studio	
  
•  Shipping	
  in	
  Visual	
  Studio	
  added	
  some	
  
overhead	
  
•  This	
  shi;ed	
  focus	
  onto	
  the	
  NuGet	
  
client	
  at	
  the	
  expense	
  of	
  the	
  gallery	
  
•  This	
  reduced	
  community	
  
engagement	
  
•  Not	
  surprisingly,	
  contribuRons	
  
decreased	
  
“ask	
  mode”	
  
“tell	
  mode”	
  
“escrow”	
  
“tenets”	
  
“SDL”	
  
“PoliCheck”	
  
“ZBB”	
  
“ZRB”	
  
“APIScan”	
  
“RI”	
  
“FI”	
  
Lessons Learned
•  A	
  more	
  balanced	
  focus	
  
between	
  client	
  and	
  
server	
  
•  Make	
  it	
  easy	
  and	
  
worthwhile	
  to	
  engage	
  
•  Recognize	
  contributors	
  
•  Split	
  the	
  core	
  team	
  into	
  2	
  
crews:	
  client	
  and	
  gallery	
  
•  Updated	
  and	
  publicized	
  
our	
  triage	
  process	
  
•  Created	
  “up	
  for	
  grabs”	
  
•  Added	
  
acknowledgements.txt	
  to	
  
source	
  
•  Recognize	
  contributors	
  in	
  
release	
  notes	
  
Updated triage
These have produced positive results
NuGet	
  Client	
  
NuGet	
  Gallery	
  
Planning
We have more to learn here..
•  2	
  inputs	
  to	
  planning	
  
•  A	
  roadmap	
  that	
  originates	
  from	
  the	
  core	
  team	
  –	
  
generally	
  ~12mo	
  into	
  the	
  future	
  
•  Ideas	
  and	
  issues	
  that	
  are	
  submiSed	
  to	
  the	
  project	
  sites	
  
•  Sorted	
  based	
  on	
  votes	
  
Planning Challenges
•  Engaging	
  with	
  the	
  community	
  on	
  the	
  roadmap	
  
•  Balancing	
  the	
  smaller	
  enhancements	
  and	
  fixes	
  with	
  
the	
  larger	
  roadmap	
  items	
  
•  757	
  open	
  issues	
  for	
  NuGet	
  client	
  
•  164	
  open	
  issues	
  for	
  NuGet	
  gallery	
  
•  Guarding	
  against	
  “death	
  by	
  success”	
  
Improving our planning
•  Develop	
  specificaRons	
  in	
  the	
  open	
  	
  
•  Document	
  project	
  governance	
  model	
  
•  Create	
  a	
  community-­‐driven	
  governance	
  board	
  
•  Schedule	
  weekly	
  calls,	
  hangouts,	
  etc.	
  
“Are we there yet?”
TODO: a few examples
•  API	
  v3	
  
•  Social	
  IntegraRon	
  
•  Discovery/Search	
  
•  Trust	
  
•  Enterprise	
  –	
  companies,	
  not	
  just	
  their	
  developers,	
  'get'	
  
package	
  management	
  
•  Global	
  package	
  installaRon	
  (machine-­‐level:	
  e.g.	
  npm	
  -­‐g	
  Foo)	
  
•  Deeper	
  VS	
  integraRon	
  
•  Package	
  creaRon	
  -­‐	
  NuGet	
  packages	
  are	
  the	
  natural	
  product	
  
of	
  build	
  and	
  the	
  natural	
  unit	
  of	
  reference	
  
•  Community-­‐moderated	
  gallery	
  
1 of 30

Recommended

Foundation Comparison by
Foundation ComparisonFoundation Comparison
Foundation ComparisonJody Garnett
1.5K views68 slides
Everyone wants (someone else) to do it: writing documentation for open source... by
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Jody Garnett
925 views46 slides
Beyond GeoServer Basics by
Beyond GeoServer BasicsBeyond GeoServer Basics
Beyond GeoServer BasicsJody Garnett
903 views14 slides
Why #DevOps Transformation has to start with you by
Why #DevOps Transformation has to start with youWhy #DevOps Transformation has to start with you
Why #DevOps Transformation has to start with youDevOpsGroup
768 views39 slides
DevOpsGuys - Getting Started with DevOps - Github/Azure Webinar by
DevOpsGuys - Getting Started with DevOps - Github/Azure WebinarDevOpsGuys - Getting Started with DevOps - Github/Azure Webinar
DevOpsGuys - Getting Started with DevOps - Github/Azure WebinarDevOpsGroup
696 views39 slides
When JHipster meets Microsoft-JHipster and Microsoft products by
When JHipster meets Microsoft-JHipster and Microsoft productsWhen JHipster meets Microsoft-JHipster and Microsoft products
When JHipster meets Microsoft-JHipster and Microsoft productsAnthony Viard
310 views43 slides

More Related Content

Viewers also liked

A Framework for Open Source Software Success by
A Framework for Open Source Software SuccessA Framework for Open Source Software Success
A Framework for Open Source Software SuccessPaula Hunter
626 views24 slides
Outer conf 2013 welcome by
Outer conf 2013 welcomeOuter conf 2013 welcome
Outer conf 2013 welcomePaula Hunter
1.3K views10 slides
Jono Bacon - Crossing the Chasm Together by
Jono Bacon - Crossing the Chasm TogetherJono Bacon - Crossing the Chasm Together
Jono Bacon - Crossing the Chasm TogetherPaula Hunter
772 views52 slides
Scott Guthrie Presents at OuterConf2013 by
Scott Guthrie Presents at OuterConf2013Scott Guthrie Presents at OuterConf2013
Scott Guthrie Presents at OuterConf2013Paula Hunter
1.4K views6 slides
NuGet (Anti-)Patterns - Tales from the Trenches by
NuGet (Anti-)Patterns - Tales from the TrenchesNuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the TrenchesXavier Decoster
2K views17 slides
Building the Orchard Community by
Building the Orchard CommunityBuilding the Orchard Community
Building the Orchard CommunityPaula Hunter
1.2K views45 slides

Viewers also liked(8)

A Framework for Open Source Software Success by Paula Hunter
A Framework for Open Source Software SuccessA Framework for Open Source Software Success
A Framework for Open Source Software Success
Paula Hunter626 views
Outer conf 2013 welcome by Paula Hunter
Outer conf 2013 welcomeOuter conf 2013 welcome
Outer conf 2013 welcome
Paula Hunter1.3K views
Jono Bacon - Crossing the Chasm Together by Paula Hunter
Jono Bacon - Crossing the Chasm TogetherJono Bacon - Crossing the Chasm Together
Jono Bacon - Crossing the Chasm Together
Paula Hunter772 views
Scott Guthrie Presents at OuterConf2013 by Paula Hunter
Scott Guthrie Presents at OuterConf2013Scott Guthrie Presents at OuterConf2013
Scott Guthrie Presents at OuterConf2013
Paula Hunter1.4K views
NuGet (Anti-)Patterns - Tales from the Trenches by Xavier Decoster
NuGet (Anti-)Patterns - Tales from the TrenchesNuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the Trenches
Xavier Decoster2K views
Building the Orchard Community by Paula Hunter
Building the Orchard CommunityBuilding the Orchard Community
Building the Orchard Community
Paula Hunter1.2K views
Hosting your own NuGet private repository by Yu GUAN
Hosting your own NuGet private repositoryHosting your own NuGet private repository
Hosting your own NuGet private repository
Yu GUAN261 views
Hadoop Big Data A big picture by J S Jodha
Hadoop Big Data A big pictureHadoop Big Data A big picture
Hadoop Big Data A big picture
J S Jodha727 views

Similar to Developing a Community and an Ecosystem with NuGet

Evolution of NuGet by
Evolution of NuGetEvolution of NuGet
Evolution of NuGetJeff Handley
305 views34 slides
Using nu get the way you should svcc by
Using nu get the way you should   svccUsing nu get the way you should   svcc
Using nu get the way you should svccMaarten Balliauw
1.5K views41 slides
Using NuGet the way you should - TechDays NL 2014 by
Using NuGet the way you should - TechDays NL 2014Using NuGet the way you should - TechDays NL 2014
Using NuGet the way you should - TechDays NL 2014Maarten Balliauw
2.5K views43 slides
Jupyter: A Gateway for Scientific Collaboration and Education by
Jupyter: A Gateway for Scientific Collaboration and EducationJupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and EducationCarol Willing
486 views66 slides
Netflix OSS Meetup Season 4 Episode 4 by
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4aspyker
3.1K views62 slides
2018 03 15_agility_multi_team_projects by
2018 03 15_agility_multi_team_projects2018 03 15_agility_multi_team_projects
2018 03 15_agility_multi_team_projectsStephan Strack
261 views40 slides

Similar to Developing a Community and an Ecosystem with NuGet(20)

Using nu get the way you should svcc by Maarten Balliauw
Using nu get the way you should   svccUsing nu get the way you should   svcc
Using nu get the way you should svcc
Maarten Balliauw1.5K views
Using NuGet the way you should - TechDays NL 2014 by Maarten Balliauw
Using NuGet the way you should - TechDays NL 2014Using NuGet the way you should - TechDays NL 2014
Using NuGet the way you should - TechDays NL 2014
Maarten Balliauw2.5K views
Jupyter: A Gateway for Scientific Collaboration and Education by Carol Willing
Jupyter: A Gateway for Scientific Collaboration and EducationJupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and Education
Carol Willing486 views
Netflix OSS Meetup Season 4 Episode 4 by aspyker
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4
aspyker3.1K views
2018 03 15_agility_multi_team_projects by Stephan Strack
2018 03 15_agility_multi_team_projects2018 03 15_agility_multi_team_projects
2018 03 15_agility_multi_team_projects
Stephan Strack261 views
OpenStack Documentation in the Open by Anne Gentle
OpenStack Documentation in the OpenOpenStack Documentation in the Open
OpenStack Documentation in the Open
Anne Gentle2.4K views
Foundation Comparison by Jody Garnett
Foundation ComparisonFoundation Comparison
Foundation Comparison
Jody Garnett526 views
Open Source Lessons from the TODO Group by Chris Aniszczyk
Open Source Lessons from the TODO GroupOpen Source Lessons from the TODO Group
Open Source Lessons from the TODO Group
Chris Aniszczyk625 views
Hydra Project Management Survey by Mark Notess
Hydra Project Management SurveyHydra Project Management Survey
Hydra Project Management Survey
Mark Notess669 views
GR8CONF Contributing Back To Grails by bobbywarner
GR8CONF Contributing Back To GrailsGR8CONF Contributing Back To Grails
GR8CONF Contributing Back To Grails
bobbywarner1K views
Oscon 2016: open source lessons from the todo group by Ben VanEvery
Oscon 2016: open source lessons from the todo groupOscon 2016: open source lessons from the todo group
Oscon 2016: open source lessons from the todo group
Ben VanEvery143 views
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ... by Zivtech, LLC
DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...DrupalCon San Francisco-  The State of Drupal as a Web Application & Product ...
DrupalCon San Francisco- The State of Drupal as a Web Application & Product ...
Zivtech, LLC206 views
OpenStack Doc Overview for Boot Camp by Anne Gentle
OpenStack Doc Overview for Boot CampOpenStack Doc Overview for Boot Camp
OpenStack Doc Overview for Boot Camp
Anne Gentle7.6K views
Engineering Culture and Infrastructure by Schubert Zhang
Engineering Culture and InfrastructureEngineering Culture and Infrastructure
Engineering Culture and Infrastructure
Schubert Zhang749 views
Sydney Drupal News May 2012 by Ryan Cross
Sydney Drupal News May 2012Sydney Drupal News May 2012
Sydney Drupal News May 2012
Ryan Cross1.1K views
Visug - organize your chickens - nuget for the enterprise by Xavier Decoster
Visug - organize your chickens - nuget for the enterpriseVisug - organize your chickens - nuget for the enterprise
Visug - organize your chickens - nuget for the enterprise
Xavier Decoster1.3K views
Reproducible data science: review of Pachyderm, Data Version Control and GIT ... by Josh Levy-Kramer
Reproducible data science: review of Pachyderm, Data Version Control and GIT ...Reproducible data science: review of Pachyderm, Data Version Control and GIT ...
Reproducible data science: review of Pachyderm, Data Version Control and GIT ...
Josh Levy-Kramer2.8K views
Get your Project back in Shape! by Joachim Tuchel
Get your Project back in Shape!Get your Project back in Shape!
Get your Project back in Shape!
Joachim Tuchel469 views
DevOps and its impact by Cisco DevNet
DevOps and its impactDevOps and its impact
DevOps and its impact
Cisco DevNet1.6K views

More from Paula Hunter

Open Source Governance Models by
Open Source Governance ModelsOpen Source Governance Models
Open Source Governance ModelsPaula Hunter
5.4K views47 slides
The Open Source Project Lifecycle, Challenges and Opportunties by
The Open Source Project Lifecycle, Challenges and OpportuntiesThe Open Source Project Lifecycle, Challenges and Opportunties
The Open Source Project Lifecycle, Challenges and OpportuntiesPaula Hunter
2.9K views27 slides
Posscon OSS Project Lifecycle by
Posscon OSS Project LifecyclePosscon OSS Project Lifecycle
Posscon OSS Project LifecyclePaula Hunter
700 views27 slides
OSS and Social Media by
OSS and Social MediaOSS and Social Media
OSS and Social MediaPaula Hunter
424 views19 slides
Outercurve foundation survey summary by
Outercurve foundation survey summaryOutercurve foundation survey summary
Outercurve foundation survey summaryPaula Hunter
662 views12 slides
Outercurve "Foundation in a Box" by
Outercurve "Foundation in a Box"Outercurve "Foundation in a Box"
Outercurve "Foundation in a Box"Paula Hunter
5.8K views15 slides

More from Paula Hunter(6)

Open Source Governance Models by Paula Hunter
Open Source Governance ModelsOpen Source Governance Models
Open Source Governance Models
Paula Hunter5.4K views
The Open Source Project Lifecycle, Challenges and Opportunties by Paula Hunter
The Open Source Project Lifecycle, Challenges and OpportuntiesThe Open Source Project Lifecycle, Challenges and Opportunties
The Open Source Project Lifecycle, Challenges and Opportunties
Paula Hunter2.9K views
Posscon OSS Project Lifecycle by Paula Hunter
Posscon OSS Project LifecyclePosscon OSS Project Lifecycle
Posscon OSS Project Lifecycle
Paula Hunter700 views
OSS and Social Media by Paula Hunter
OSS and Social MediaOSS and Social Media
OSS and Social Media
Paula Hunter424 views
Outercurve foundation survey summary by Paula Hunter
Outercurve foundation survey summaryOutercurve foundation survey summary
Outercurve foundation survey summary
Paula Hunter662 views
Outercurve "Foundation in a Box" by Paula Hunter
Outercurve "Foundation in a Box"Outercurve "Foundation in a Box"
Outercurve "Foundation in a Box"
Paula Hunter5.8K views

Recently uploaded

Future of Indian ConsumerTech by
Future of Indian ConsumerTechFuture of Indian ConsumerTech
Future of Indian ConsumerTechKapil Khandelwal (KK)
24 views68 slides
Democratising digital commerce in India-Report by
Democratising digital commerce in India-ReportDemocratising digital commerce in India-Report
Democratising digital commerce in India-ReportKapil Khandelwal (KK)
20 views161 slides
Evolving the Network Automation Journey from Python to Platforms by
Evolving the Network Automation Journey from Python to PlatformsEvolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to PlatformsNetwork Automation Forum
17 views21 slides
SUPPLIER SOURCING.pptx by
SUPPLIER SOURCING.pptxSUPPLIER SOURCING.pptx
SUPPLIER SOURCING.pptxangelicacueva6
20 views1 slide
Scaling Knowledge Graph Architectures with AI by
Scaling Knowledge Graph Architectures with AIScaling Knowledge Graph Architectures with AI
Scaling Knowledge Graph Architectures with AIEnterprise Knowledge
50 views15 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
317 views86 slides

Recently uploaded(20)

Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab23 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 by IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc72 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi139 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker48 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana17 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn26 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays17 views

Developing a Community and an Ecosystem with NuGet

  • 1. Developing a Community and Ecosystem with NuGet Phil  Haack,  Jeff  Handley,  Howard  Dierking  
  • 2. How did we get here?
  • 12. The Core Team •  Funded  by  Microso;   •  13  People     •  6  developers     •  4  testers   •  3  overhead  (Howard,  Jeff,  Ranjini)  
  • 13. The Scope of NuGet •  NuGet  client   •  NuGet.Core   •  Visual  Studio  add  in  –  runs  in  VS  2010,  VS  2012,  and   beyond   •  nuget.exe   •  WebMatrix  client   •  NuGet  Gallery   •  Gallery  applicaRon  code   •  hSp://nuget.org  operaRons   •  NuGet  docs  (hSp://docs.nuget.org)   •  NuGet  blog  (hSp://blog.nuget.org)  
  • 15. Usage •  ConsumpRon   •  4,648,997  Visual  Studio  client  downloads  (4.5/5  stars)   •  270,877  downloads  of  NuGet  2.5  (released  13  days  ago)     •  68,093,144  package  downloads   •  Package  authoring   •  12,566  unique  packages   •  94,070  total  packages   hSp://nuget.org    
  • 16. NuGet Client (http://nuget.codeplex.com) •  3,570  commits   •  95  contributors   •  61,086  LOC   •  Stable  YOY  commit  rate   •  48  contributors  in  the  last  12  months  (+26%  YOY)   •  4  new  contributors  in  the  last  30  days   hSp://www.ohloh.net/p/nuget    
  • 17. NuGet Gallery (https://github.com/nuget/nugetgallery) •  1,314  commits   •  27  contributors   •  51,768  LOC   •  Stable  YOY  commit  rate   •  18  contributors  in  the  last  12  months  (+20%  YOY)   hSp://www.ohloh.net/p/nugetgallery    
  • 18. NuGet Docs (https://github.com/nuget/nugetdocs) •  524  commits   •  62  contributors   •  Decreasing  YOY  commit  rate   •  3  new  contributors  in  the  last  30  days     •  32  contributors  in  the  last  12  months  (-­‐15%  YOY)   hSp://www.ohloh.net/p/nugetdocs    
  • 19. NuGet Docs (https://github.com/nuget/nugetdocs) •  524  commits   •  62  contributors   •  Decreasing  YOY  commit  rate   •  3  new  contributors  in  the  last  30  days     •  32  contributors  in  the  last  12  months  (-­‐15%  YOY)   hSp://www.ohloh.net/p/nugetdocs     This  _might_  be   related  
  • 21. We’ve Learned a few things •  With  Visual  Studio  2012,  NuGet   shipped  "in  the  box"  with  every  SKU   of  Visual  Studio   •  Shipping  in  Visual  Studio  added  some   overhead   •  This  shi;ed  focus  onto  the  NuGet   client  at  the  expense  of  the  gallery   •  This  reduced  community   engagement   •  Not  surprisingly,  contribuRons   decreased   “ask  mode”   “tell  mode”   “escrow”   “tenets”   “SDL”   “PoliCheck”   “ZBB”   “ZRB”   “APIScan”   “RI”   “FI”  
  • 22. Lessons Learned •  A  more  balanced  focus   between  client  and   server   •  Make  it  easy  and   worthwhile  to  engage   •  Recognize  contributors   •  Split  the  core  team  into  2   crews:  client  and  gallery   •  Updated  and  publicized   our  triage  process   •  Created  “up  for  grabs”   •  Added   acknowledgements.txt  to   source   •  Recognize  contributors  in   release  notes  
  • 24. These have produced positive results NuGet  Client   NuGet  Gallery  
  • 26. We have more to learn here.. •  2  inputs  to  planning   •  A  roadmap  that  originates  from  the  core  team  –   generally  ~12mo  into  the  future   •  Ideas  and  issues  that  are  submiSed  to  the  project  sites   •  Sorted  based  on  votes  
  • 27. Planning Challenges •  Engaging  with  the  community  on  the  roadmap   •  Balancing  the  smaller  enhancements  and  fixes  with   the  larger  roadmap  items   •  757  open  issues  for  NuGet  client   •  164  open  issues  for  NuGet  gallery   •  Guarding  against  “death  by  success”  
  • 28. Improving our planning •  Develop  specificaRons  in  the  open     •  Document  project  governance  model   •  Create  a  community-­‐driven  governance  board   •  Schedule  weekly  calls,  hangouts,  etc.  
  • 29. “Are we there yet?”
  • 30. TODO: a few examples •  API  v3   •  Social  IntegraRon   •  Discovery/Search   •  Trust   •  Enterprise  –  companies,  not  just  their  developers,  'get'   package  management   •  Global  package  installaRon  (machine-­‐level:  e.g.  npm  -­‐g  Foo)   •  Deeper  VS  integraRon   •  Package  creaRon  -­‐  NuGet  packages  are  the  natural  product   of  build  and  the  natural  unit  of  reference   •  Community-­‐moderated  gallery