SlideShare a Scribd company logo

Visug - organize your chickens - nuget for the enterprise

1 of 39
Download to read offline
www.visug.be
Organize your chickens
  NuGet for the Enterprise
Who are we?
•   Maarten Balliauw
•   Antwerp, Belgium
•   www.realdolmen.com
•   Focus on web
    – ASP.NET, ASP.NET MVC, PHP, Azure, …
    – MVP Windows Azure (formerly ASP.NET)
• http://blog.maartenballiauw.be
• @maartenballiauw

                     www.visug.be
Who are we?
•   Xavier Decoster
•   Antwerp, Belgium
•   www.realdolmen.com
•   Focus on web/ALM
    – Visual Studio, TFS, Scrum, ...
    – Silverlight, ASP.NET, ASP.NET MVC, …
• http://www.xavierdecoster.com
• @xavierdecoster

                       www.visug.be
Agenda
• Chickens?
• NuGet
• Scenarios
  – Host your own NuGet repository
  – Continuous (Package) Integration
  – (Ab)using NuGet
• Conclusion

                    www.visug.be
Welcome to Dependency Hell
“A term for the frustration of software users who have installed
software packages which have dependencies on specific
versions of other software packages.”
                                                   Source: Wikipedia




                             www.visug.be

Recommended

Organize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterpriseOrganize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterpriseMaarten Balliauw
 
Evolution of NuGet
Evolution of NuGetEvolution of NuGet
Evolution of NuGetJeff Handley
 
Using nu get the way you should svcc
Using nu get the way you should   svccUsing nu get the way you should   svcc
Using nu get the way you should svccMaarten Balliauw
 
2015 TechSummit Web & Cloud - Gem, NPM, Bower, Nuget, Paket - Päckchen hier, ...
2015 TechSummit Web & Cloud - Gem, NPM, Bower, Nuget, Paket - Päckchen hier, ...2015 TechSummit Web & Cloud - Gem, NPM, Bower, Nuget, Paket - Päckchen hier, ...
2015 TechSummit Web & Cloud - Gem, NPM, Bower, Nuget, Paket - Päckchen hier, ...Daniel Fisher
 
How Build Infrastructure Powers the Node.js Foundation
How Build Infrastructure Powers the Node.js FoundationHow Build Infrastructure Powers the Node.js Foundation
How Build Infrastructure Powers the Node.js FoundationGibson Fahnestock
 
Node.js what's next (Index 2018)
Node.js what's next (Index 2018)Node.js what's next (Index 2018)
Node.js what's next (Index 2018)Gibson Fahnestock
 
npm + browserify
npm + browserifynpm + browserify
npm + browserifymaxgfeller
 
Ottawa Puppet User Group - Publishing a Module on the Puppet Forge
Ottawa Puppet User Group - Publishing a Module on the Puppet ForgeOttawa Puppet User Group - Publishing a Module on the Puppet Forge
Ottawa Puppet User Group - Publishing a Module on the Puppet ForgeBill Fraser
 

More Related Content

What's hot

2011 - Dotnet Information Day: NUGET
2011 - Dotnet Information Day: NUGET2011 - Dotnet Information Day: NUGET
2011 - Dotnet Information Day: NUGETDaniel Fisher
 
WordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantWordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantMitch Canter
 
Uyuni Community Hours 27.11.2020
Uyuni Community Hours 27.11.2020Uyuni Community Hours 27.11.2020
Uyuni Community Hours 27.11.2020Uyuni Project
 
Using NuGet the way you should - TechDays NL 2014
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
 
Understanding NuGet implementation for Enterprises
Understanding NuGet implementation for EnterprisesUnderstanding NuGet implementation for Enterprises
Understanding NuGet implementation for EnterprisesJ S Jodha
 
Nuxeo World Session: Becoming a Contributor: How to Get Started
Nuxeo World Session: Becoming a Contributor: How to Get StartedNuxeo World Session: Becoming a Contributor: How to Get Started
Nuxeo World Session: Becoming a Contributor: How to Get StartedNuxeo
 
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...Jeavon Leopold
 
KnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsKnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsShaw Innes
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSCJosh Gillespie
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at ScaleKris Buytaert
 
Introduction to git & WordPress
Introduction to git & WordPressIntroduction to git & WordPress
Introduction to git & WordPressJosh Lee
 
Making websites with WordPress
Making websites with WordPressMaking websites with WordPress
Making websites with WordPressJosh Lee
 
Three Technologies Worth Watching or Learning
Three Technologies Worth Watching or LearningThree Technologies Worth Watching or Learning
Three Technologies Worth Watching or LearningScott Lowe
 
Intro to NuGet
Intro to NuGetIntro to NuGet
Intro to NuGetwlscaudill
 
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress MultisiteWPMU DEV
 
Front End Sadness to Happiness: The React on Rails Story
Front End Sadness to Happiness: The React on Rails StoryFront End Sadness to Happiness: The React on Rails Story
Front End Sadness to Happiness: The React on Rails StoryJustin Gordon
 

What's hot (18)

2011 - Dotnet Information Day: NUGET
2011 - Dotnet Information Day: NUGET2011 - Dotnet Information Day: NUGET
2011 - Dotnet Information Day: NUGET
 
4 maven junit
4 maven junit4 maven junit
4 maven junit
 
WordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantWordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and Vagrant
 
Uyuni Community Hours 27.11.2020
Uyuni Community Hours 27.11.2020Uyuni Community Hours 27.11.2020
Uyuni Community Hours 27.11.2020
 
Using NuGet the way you should - TechDays NL 2014
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
 
Understanding NuGet implementation for Enterprises
Understanding NuGet implementation for EnterprisesUnderstanding NuGet implementation for Enterprises
Understanding NuGet implementation for Enterprises
 
Developing NuGet
Developing NuGetDeveloping NuGet
Developing NuGet
 
Nuxeo World Session: Becoming a Contributor: How to Get Started
Nuxeo World Session: Becoming a Contributor: How to Get StartedNuxeo World Session: Becoming a Contributor: How to Get Started
Nuxeo World Session: Becoming a Contributor: How to Get Started
 
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...
J&Js adventures with agency best practice & the hybrid MVC framework - Umbrac...
 
KnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsKnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOps
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSC
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at Scale
 
Introduction to git & WordPress
Introduction to git & WordPressIntroduction to git & WordPress
Introduction to git & WordPress
 
Making websites with WordPress
Making websites with WordPressMaking websites with WordPress
Making websites with WordPress
 
Three Technologies Worth Watching or Learning
Three Technologies Worth Watching or LearningThree Technologies Worth Watching or Learning
Three Technologies Worth Watching or Learning
 
Intro to NuGet
Intro to NuGetIntro to NuGet
Intro to NuGet
 
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
2014 WordCamp Austin: Do's and Don'ts of WordPress Multisite
 
Front End Sadness to Happiness: The React on Rails Story
Front End Sadness to Happiness: The React on Rails StoryFront End Sadness to Happiness: The React on Rails Story
Front End Sadness to Happiness: The React on Rails Story
 

Viewers also liked

20111010 agile minds - organize your chickens - nuget for the enterprise
20111010 agile minds - organize your chickens - nuget for the enterprise20111010 agile minds - organize your chickens - nuget for the enterprise
20111010 agile minds - organize your chickens - nuget for the enterpriseXavier Decoster
 
MSDN Live - CI using TFS11 & NuGet
MSDN Live - CI using TFS11 & NuGetMSDN Live - CI using TFS11 & NuGet
MSDN Live - CI using TFS11 & NuGetXavier Decoster
 
NuGet (anti-)patterns - Tales from the Trenches
NuGet (anti-)patterns - Tales from the TrenchesNuGet (anti-)patterns - Tales from the Trenches
NuGet (anti-)patterns - Tales from the TrenchesXavier Decoster
 
Organize your chickens - NuGet for the Enterprise
Organize your chickens - NuGet for the EnterpriseOrganize your chickens - NuGet for the Enterprise
Organize your chickens - NuGet for the EnterpriseXavier Decoster
 
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)Organize your Chickens - NuGet for the Enterprise (UGIALTNET)
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)Xavier Decoster
 
Hosting your own NuGet private repository
Hosting your own NuGet private repositoryHosting your own NuGet private repository
Hosting your own NuGet private repositoryYu GUAN
 
NuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the TrenchesNuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the TrenchesXavier Decoster
 
NuGet Package Management Done Right
NuGet Package Management Done RightNuGet Package Management Done Right
NuGet Package Management Done RightSeniorStoryteller
 

Viewers also liked (8)

20111010 agile minds - organize your chickens - nuget for the enterprise
20111010 agile minds - organize your chickens - nuget for the enterprise20111010 agile minds - organize your chickens - nuget for the enterprise
20111010 agile minds - organize your chickens - nuget for the enterprise
 
MSDN Live - CI using TFS11 & NuGet
MSDN Live - CI using TFS11 & NuGetMSDN Live - CI using TFS11 & NuGet
MSDN Live - CI using TFS11 & NuGet
 
NuGet (anti-)patterns - Tales from the Trenches
NuGet (anti-)patterns - Tales from the TrenchesNuGet (anti-)patterns - Tales from the Trenches
NuGet (anti-)patterns - Tales from the Trenches
 
Organize your chickens - NuGet for the Enterprise
Organize your chickens - NuGet for the EnterpriseOrganize your chickens - NuGet for the Enterprise
Organize your chickens - NuGet for the Enterprise
 
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)Organize your Chickens - NuGet for the Enterprise (UGIALTNET)
Organize your Chickens - NuGet for the Enterprise (UGIALTNET)
 
Hosting your own NuGet private repository
Hosting your own NuGet private repositoryHosting your own NuGet private repository
Hosting your own NuGet private repository
 
NuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the TrenchesNuGet (Anti-)Patterns - Tales from the Trenches
NuGet (Anti-)Patterns - Tales from the Trenches
 
NuGet Package Management Done Right
NuGet Package Management Done RightNuGet Package Management Done Right
NuGet Package Management Done Right
 

Similar to Visug - organize your chickens - nuget for the enterprise

Getting Started with Azure Artifacts
Getting Started with Azure ArtifactsGetting Started with Azure Artifacts
Getting Started with Azure ArtifactsCallon Campbell
 
Automate your Development Environment with Vagrant & Chef
Automate your Development Environment with Vagrant & ChefAutomate your Development Environment with Vagrant & Chef
Automate your Development Environment with Vagrant & Chef Michael Lihs
 
Fluo CICD OpenStack Summit
Fluo CICD OpenStack SummitFluo CICD OpenStack Summit
Fluo CICD OpenStack SummitMiguel Zuniga
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...mfrancis
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsDavid Watson
 
Smarter deployments with octopus deploy
Smarter deployments with octopus deploySmarter deployments with octopus deploy
Smarter deployments with octopus deployThibaud Gravrand
 
Package Management and Chef - ChefConf 2015
Package Management and Chef - ChefConf 2015Package Management and Chef - ChefConf 2015
Package Management and Chef - ChefConf 2015Chef
 
Chef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & ChefChef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & Chefice799
 
Using Vagrant, Puppet, Testing & Hadoop
Using Vagrant, Puppet, Testing & HadoopUsing Vagrant, Puppet, Testing & Hadoop
Using Vagrant, Puppet, Testing & HadoopPuppet
 
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopOlinData
 
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopWalter Heck
 
BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenMert Çalışkan
 
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Martin Bergljung
 
Organize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterpriseOrganize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterpriseMaarten Balliauw
 
Reusable Whiteboard Wicket Component for Apache Openmeetings
Reusable Whiteboard Wicket Component for Apache OpenmeetingsReusable Whiteboard Wicket Component for Apache Openmeetings
Reusable Whiteboard Wicket Component for Apache OpenmeetingsAndun Sameera
 
Apache Maven - eXo TN presentation
Apache Maven - eXo TN presentationApache Maven - eXo TN presentation
Apache Maven - eXo TN presentationArnaud Héritier
 
Release management with NuGet/Chocolatey/JIRA
Release management with NuGet/Chocolatey/JIRARelease management with NuGet/Chocolatey/JIRA
Release management with NuGet/Chocolatey/JIRAYaroslav Serhieiev
 
The Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With PuppetThe Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With PuppetMike Merideth
 
Improved development workflows using vagrant
Improved development workflows using vagrantImproved development workflows using vagrant
Improved development workflows using vagrantMakis Asimidis
 

Similar to Visug - organize your chickens - nuget for the enterprise (20)

Getting Started with Azure Artifacts
Getting Started with Azure ArtifactsGetting Started with Azure Artifacts
Getting Started with Azure Artifacts
 
Automate your Development Environment with Vagrant & Chef
Automate your Development Environment with Vagrant & ChefAutomate your Development Environment with Vagrant & Chef
Automate your Development Environment with Vagrant & Chef
 
Fluo CICD OpenStack Summit
Fluo CICD OpenStack SummitFluo CICD OpenStack Summit
Fluo CICD OpenStack Summit
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
Undine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development EnvironmentsUndine: Turnkey Drupal Development Environments
Undine: Turnkey Drupal Development Environments
 
Smarter deployments with octopus deploy
Smarter deployments with octopus deploySmarter deployments with octopus deploy
Smarter deployments with octopus deploy
 
Package Management and Chef - ChefConf 2015
Package Management and Chef - ChefConf 2015Package Management and Chef - ChefConf 2015
Package Management and Chef - ChefConf 2015
 
Chef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & ChefChef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & Chef
 
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
 
Using Vagrant, Puppet, Testing & Hadoop
Using Vagrant, Puppet, Testing & HadoopUsing Vagrant, Puppet, Testing & Hadoop
Using Vagrant, Puppet, Testing & Hadoop
 
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
 
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & HadoopPuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
PuppetCamp SEA 1 - Using Vagrant, Puppet, Testing & Hadoop
 
BMO - Intelligent Projects with Maven
BMO - Intelligent Projects with MavenBMO - Intelligent Projects with Maven
BMO - Intelligent Projects with Maven
 
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
 
Organize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterpriseOrganize your chickens: NuGet for the enterprise
Organize your chickens: NuGet for the enterprise
 
Reusable Whiteboard Wicket Component for Apache Openmeetings
Reusable Whiteboard Wicket Component for Apache OpenmeetingsReusable Whiteboard Wicket Component for Apache Openmeetings
Reusable Whiteboard Wicket Component for Apache Openmeetings
 
Apache Maven - eXo TN presentation
Apache Maven - eXo TN presentationApache Maven - eXo TN presentation
Apache Maven - eXo TN presentation
 
Release management with NuGet/Chocolatey/JIRA
Release management with NuGet/Chocolatey/JIRARelease management with NuGet/Chocolatey/JIRA
Release management with NuGet/Chocolatey/JIRA
 
The Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With PuppetThe Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With Puppet
 
Improved development workflows using vagrant
Improved development workflows using vagrantImproved development workflows using vagrant
Improved development workflows using vagrant
 

Recently uploaded

Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner,  Challenge Like a VC by former CPO, TripadvisorAct Like an Owner,  Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner, Challenge Like a VC by former CPO, TripadvisorProduct School
 
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Umar Saif
 
How AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxHow AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxInfosec
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...DianaGray10
 
AGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfAGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfRodneyThomas28
 
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31shyamraj55
 
Pragmatic UI testing with Compose Semantics.pdf
Pragmatic UI testing with Compose Semantics.pdfPragmatic UI testing with Compose Semantics.pdf
Pragmatic UI testing with Compose Semantics.pdfinfogdgmi
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfSafe Software
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewAshraf Fouad
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientKari Kakkonen
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriSafe Software
 
Utilising Energy Modelling for LCSF and PSDS Funding Applications
Utilising Energy Modelling for LCSF and PSDS Funding ApplicationsUtilising Energy Modelling for LCSF and PSDS Funding Applications
Utilising Energy Modelling for LCSF and PSDS Funding ApplicationsIES VE
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfTejal81
 
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptx
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptxGraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptx
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptxNeo4j
 
Establishing data sharing standards to promote global industry development
Establishing data sharing standards to promote global industry developmentEstablishing data sharing standards to promote global industry development
Establishing data sharing standards to promote global industry developmentThorsten Huelsmann
 
Launching New Products In Companies Where It Matters Most by Product Director...
Launching New Products In Companies Where It Matters Most by Product Director...Launching New Products In Companies Where It Matters Most by Product Director...
Launching New Products In Companies Where It Matters Most by Product Director...Product School
 
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Jay Zhao
 
Battle of React State Managers in frontend applications
Battle of React State Managers in frontend applicationsBattle of React State Managers in frontend applications
Battle of React State Managers in frontend applicationsEvangelia Mitsopoulou
 
Huntly presentation deck design for Behance
Huntly presentation deck design for BehanceHuntly presentation deck design for Behance
Huntly presentation deck design for Behancewhalesdesign
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024ThousandEyes
 

Recently uploaded (20)

Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner,  Challenge Like a VC by former CPO, TripadvisorAct Like an Owner,  Challenge Like a VC by former CPO, Tripadvisor
Act Like an Owner, Challenge Like a VC by former CPO, Tripadvisor
 
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
Progress Report: Ministry of IT under Dr. Umar Saif Aug 23-Feb'24
 
How AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptxHow AI and ChatGPT are changing cybersecurity forever.pptx
How AI and ChatGPT are changing cybersecurity forever.pptx
 
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
Automation Ops Series: Session 1 - Introduction and setup DevOps for UiPath p...
 
AGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdfAGFM - Toyota Coaster 1HZ Install Guide.pdf
AGFM - Toyota Coaster 1HZ Install Guide.pdf
 
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31
Unleash the Solace Pub Sub connector | Banaglore MuleSoft Meetup #31
 
Pragmatic UI testing with Compose Semantics.pdf
Pragmatic UI testing with Compose Semantics.pdfPragmatic UI testing with Compose Semantics.pdf
Pragmatic UI testing with Compose Semantics.pdf
 
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdfIntroducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
Introducing the New FME Community Webinar - Feb 21, 2024 (2).pdf
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book Review
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficient
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Utilising Energy Modelling for LCSF and PSDS Funding Applications
Utilising Energy Modelling for LCSF and PSDS Funding ApplicationsUtilising Energy Modelling for LCSF and PSDS Funding Applications
Utilising Energy Modelling for LCSF and PSDS Funding Applications
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
 
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptx
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptxGraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptx
GraphSummit London Feb 2024 - ABK - Neo4j Product Vision and Roadmap.pptx
 
Establishing data sharing standards to promote global industry development
Establishing data sharing standards to promote global industry developmentEstablishing data sharing standards to promote global industry development
Establishing data sharing standards to promote global industry development
 
Launching New Products In Companies Where It Matters Most by Product Director...
Launching New Products In Companies Where It Matters Most by Product Director...Launching New Products In Companies Where It Matters Most by Product Director...
Launching New Products In Companies Where It Matters Most by Product Director...
 
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
 
Battle of React State Managers in frontend applications
Battle of React State Managers in frontend applicationsBattle of React State Managers in frontend applications
Battle of React State Managers in frontend applications
 
Huntly presentation deck design for Behance
Huntly presentation deck design for BehanceHuntly presentation deck design for Behance
Huntly presentation deck design for Behance
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024
 

Visug - organize your chickens - nuget for the enterprise

  • 2. Organize your chickens NuGet for the Enterprise
  • 3. Who are we? • Maarten Balliauw • Antwerp, Belgium • www.realdolmen.com • Focus on web – ASP.NET, ASP.NET MVC, PHP, Azure, … – MVP Windows Azure (formerly ASP.NET) • http://blog.maartenballiauw.be • @maartenballiauw www.visug.be
  • 4. Who are we? • Xavier Decoster • Antwerp, Belgium • www.realdolmen.com • Focus on web/ALM – Visual Studio, TFS, Scrum, ... – Silverlight, ASP.NET, ASP.NET MVC, … • http://www.xavierdecoster.com • @xavierdecoster www.visug.be
  • 5. Agenda • Chickens? • NuGet • Scenarios – Host your own NuGet repository – Continuous (Package) Integration – (Ab)using NuGet • Conclusion www.visug.be
  • 6. Welcome to Dependency Hell “A term for the frustration of software users who have installed software packages which have dependencies on specific versions of other software packages.” Source: Wikipedia www.visug.be
  • 7. Cause and Effect • Reinventing the wheel – We don’t need that dependency – “If they can do it, we can do it, but better”  What happened to reuse of components? • Marketing does the versioning – People are waiting for v2 to buy – Let’s call it v4 Platform Update SP3 November Edition KB2348063 RTW Refresh  We lost ownership of AssemblyVersion ? www.visug.be
  • 8. Package Management • NuGet to the Rescue! “NuGet is a Visual Studio extension that makes it easy to install and update open source libraries and tools in Visual Studio.” • Simple concept – Find Packages – (Re)Use Packages – Produce Packages www.visug.be
  • 9. Semantic Versioning • Think about your versioning! (semver.org) Major Breaking changes Minor Backwards compatible API additions/changes Patch Bugfixes not affecting the API – Always specify lowerbound – Use a version range (lowerbound + upperbound) when versioning of package you depend on is messed up www.visug.be
  • 10. Advanced usage scenarios • Host your own NuGet repository • Continuous (Package) Integration • (Ab)using NuGet www.visug.be
  • 12. Hosting your own repository • NuGet = public feed – Privacy – Intellectual property • NuGet maintained by package authors – Author removes v1.0.45 and you depend on it www.visug.be
  • 13. Solutions • Folder / File share • Orchard Gallery (or NuGet Gallery) • NuGet.Server package • MyGet www.visug.be
  • 15. NuGet.Server limitations • Only 1 feed per installation • No UI: up to you to build it • No granular security: only 1 API-key for entire feed • Conclusion: requires you to develop if you want something more useful www.visug.be
  • 16. Meet MyGet • www.myget.org • NaaS – Register and off you go! (no dev) • Supports Enterprise scenarios – Granular security – Package mirroring www.visug.be
  • 17. Log in to www.myget.org and get started MYGET DEMO www.visug.be
  • 19. Typical source control... • Contains /References (if you are lucky) – ...and also Project/_bin_deployable_assemblies – ...and also /References/old – ...and also /..././../.././References • Usually references GAC-ed assemblies www.visug.be
  • 20. Dependencies • Software has dependencies. Deal with it. • But are those YOUR intellectual property? – YOUR reason to build software? – YOUR product? • No. They are dependencies. And they don’t belong in source control. www.visug.be
  • 21. Continuous (Package) Integration • Can I get rid of all these referenced assemblies duplicated all-over my source control system? Yes! • Do I need to install and maintain NuGet on all my build agents? No! www.visug.be
  • 22. Organize your build chickens! NUGETPOWERTOOLS DEMO www.visug.be
  • 23. 3rd parties don’t belong in your SCM • Replace them with NuGet packages • Commit packages/repositories.config files • Use NuGetPowerTools Enable- PackageRestore • Set package-source location(s) (NuGet.settings.targets in $(SolutionDir).nuget folder) www.visug.be
  • 24. Problem! • NuGet feed is subject to change... – PackageSource msbuild property to the rescue • Now what... – Host your own feed and mirror packages – Or use MyGet for that  www.visug.be
  • 25. Organize your chickens • Feed structuring – Scoped by quality: Build, QA, Production, … – Scoped by audience: public, restricted access – Other: • Scoped by product version, milestone… • Scoped by target platform www.visug.be
  • 26. (AB)USING NUGET www.visug.be
  • 27. Guidance • Publishing a package brings great responsibility – Breaking changes in your packages should be versioned accordingly! – Consumers might choose to no longer consume any packages you published www.visug.be
  • 28. Guidance • Package Integration ≠ Integration Testing – CI builds reflect output of source control input – Same input always produces same output  Do not auto-update packages during automated builds www.visug.be
  • 30. (Ab)using NuGet? • Change of perspective NuGet is a package manager NuGet is a protocol for distributing packages www.visug.be
  • 31. Scaffolding, CmdLets, Plug-ins, … EXTENDING NUGET www.visug.be
  • 32. Automate deployments • Build results in .nupkg • Octopus deploys to its tentacles – Test tentacles – Staging tentacles – Production tentacles • www.octopusdeploy.com www.visug.be
  • 34. Chocolatey • NuGet – developer library packages • Chocolatey – applications and tools packager – “yum” or “apt-get” for Windows • www.chocolatey.org www.visug.be
  • 36. Orchard / WebMatrix / … • NuGet not bound to VS • Orchard CMS: modules & themes • WebMatrix: install page helpers on the fly • Your app: offer plugins through a repo www.visug.be
  • 37. CONCLUSION www.visug.be
  • 38. Conclusion • Dependencies & people are chickens Deal with them! NuGet can help • Set up your own NuGet repository for various reasons • Continuous package integration • NuGet is a package manager NuGet is a protocol www.visug.be
  • 39. http://blog.maartenballiauw.be @maartenballiauw http://www.xavierdecoster.com @xavierdecoster Any questions? THANK YOU! www.visug.be

Editor's Notes

  1. Maarten
  2. Maarten
  3. Xavier
  4. Xavier
  5. Xavier
  6. XavierMaarten
  7. Maarten
  8. Xavier: Terugverwijzen naar “Marketing versioning”
  9. Xavier
  10. Maarten
  11. Maarten
  12. Maarten
  13. XavierStart with empty MVC template + addNuGet.ServerpkgRun siteDrop pkgs in packages folderRefresh browserFeed toevoegen in VS & show pkgs
  14. Xavier
  15. Maarten
  16. MaartenInloggen en feed aanmakenPackage pushen vanuit NPEFeed toevoegen aan VSOp MyGet feed security instellenPackage installen in VS en tonen dat er basic auth bijkomtPackage vanNuGet toevoegen op MyGet en tonen dat je alle dependencies kan meepakken, mirroring, … en dat je ook gewoon van uw packages.config kan toevoegen
  17. Xavier
  18. Xavier
  19. Xavier
  20. Maarten
  21. Maarten
  22. Xavier- Het feit dat NuGet.org geen garanties biedt op content- Wat als mensen packages verwijderen? BUILD breaks, DEVS unhappy again
  23. Maarten -> Xavier
  24. Xavier
  25. Xavier
  26. Xavier
  27. Maarten
  28. Maarten
  29. TODO Scaffolding? Toevoegen van functies?Eventueel de NuGet.exe plugins ook nog tonen?
  30. Maarten
  31. Maarten
  32. Xavier
  33. Xavier
  34. Maarten
  35. XavierMaartenXavierMaarten