SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
AMIR BARYLKO &
                      JAMES CHAMBERS
                      NUGET PACKAGE
                        MANAGER




Amir Barylko & James Chambers- Nuget    mavenTHOUGHT Inc.
ABOUT JAMES

  • Microsoft          MVP in Asp.Net/IIS
  • Husband           and father of 3
  • Humanitarian: food, water, JDRF

  • Product & Community Development Manager at
    LogiSense

Amir Barylko & James Chambers- Nuget        mavenTHOUGHT Inc.
ABOUT AMIR

  • Architect

  • Developer

  • Mentor

  • Great       cook
  • Software          Quality Expert at mavenTHOUGHT Inc.

Amir Barylko & James Chambers- Nuget             mavenTHOUGHT Inc.
CONTACT US

  •   Email: james@jameschambers.com
             amir@barylko.com

  •   Twitter: @canadianjames, @abarylko

  •   Slides: http://orthocoders.com/presentations.html




Amir Barylko & James Chambers- Nuget                      mavenTHOUGHT Inc.
12’’ PIZZA ON WHITE



Amir Barylko & James Chambers- Nuget   mavenTHOUGHT Inc.
HOW DO WE
                  SHARE DLLS TODAY?



Amir Barylko & James Chambers- Nuget   mavenTHOUGHT Inc.
SHARED FOLDERS

  • All    the dlls are stored in a particular location
  • All    the projects add the reference to a DLL
  • When   a DLL is updated overwrites the previous
    version



Amir Barylko & James Chambers- Nuget               mavenTHOUGHT Inc.
NO VERSIONING

  • 1.0.0.0

  • Or     just changed with releases
  • Or     nobody cares




Amir Barylko & James Chambers- Nuget    mavenTHOUGHT Inc.
HUGE SOLUTIONS

  • All    the projects share the same solution
  • No      matter cohesion
  • It’s   easier to “debug” (really?)




Amir Barylko & James Chambers- Nuget              mavenTHOUGHT Inc.
BINARIES IN SRC CONTROL

  • The      binaries of the dependencies
  • Are      stored in source control
  • In   order to be able to build every time




Amir Barylko & James Chambers- Nuget            mavenTHOUGHT Inc.
UPDATE DLLS NIGHTMARE

  • Go      to each project and remove the old
  • Then       add the new reference
  • Or     just don’t use versioning (only internal)
  • But     you force everyone to update!


Amir Barylko & James Chambers- Nuget              mavenTHOUGHT Inc.
ADDING REFERENCES

  • Find     and add elmah.dll
  • Find     and add log4net.dll
  • Find     any other dependency
  • Modify        configuration
  • Etc....

Amir Barylko & James Chambers- Nuget   mavenTHOUGHT Inc.
NUGET



Amir Barylko & James Chambers- Nuget           mavenTHOUGHT Inc.
VS EXTENSION

  • Just    install it!




Amir Barylko & James Chambers- Nuget     mavenTHOUGHT Inc.
WHERE ARE THE DLLS?

  • Packages          folder (check it out)




Amir Barylko & James Chambers- Nuget          mavenTHOUGHT Inc.
RESTORE ON BUILD

  • No      need to store Packages folder
  • Just    check “restore on build”
  • If   needed, nuget will download them




Amir Barylko & James Chambers- Nuget        mavenTHOUGHT Inc.
COMMAND SHELL

  • More        flexibility
  • Use      nuget command shell to install, uninstall etc...
  • Auto       complete can be handy
  • Choose          version, etc....


Amir Barylko & James Chambers- Nuget                mavenTHOUGHT Inc.
WHAT ABOUT DEBUGGING?

  • Use      the symbol source Luke!
  • SymbolSource.Server.Basic          can be installed with
    nuget :)




Amir Barylko & James Chambers- Nuget                mavenTHOUGHT Inc.
PUBLISHING

  • Get      an API key from your server
  • nuget       -spec
  • Or Albacore              has a task for it (Yes, ruby and rake,
    get over it)
  • Or     NugetPackageExplorer

Amir Barylko & James Chambers- Nuget                      mavenTHOUGHT Inc.
POST INSTALLATION

  • Install     all dependencies
  • Run      web transforms
  • Run      any other configuration




Amir Barylko & James Chambers- Nuget   mavenTHOUGHT Inc.
MULTIPLE SERVERS

  • Nuget.org

  • MyGet

  •A     shared folder
  • Your      own local server


Amir Barylko & James Chambers- Nuget    mavenTHOUGHT Inc.
RISKS / DOUBTS



Amir Barylko & James Chambers- Nuget      mavenTHOUGHT Inc.
NO INTERNET

  • Backups

  • Local      feeds
  • Go      home!




Amir Barylko & James Chambers- Nuget     mavenTHOUGHT Inc.
EXPENSIVE UPDATE

  • Update         only when you want
  • Update         all of them together possible
  • Why        force to update if you don’t need to?




Amir Barylko & James Chambers- Nuget               mavenTHOUGHT Inc.
FORCES VERSIONING

  • And       that’s a problem because.... ?




Amir Barylko & James Chambers- Nuget           mavenTHOUGHT Inc.
IF IT WORKS DON’T BREAK IT

  • No      more binaries in source control
  • Clear       dependency management
  • Less     coupling
  • Follow        a standard
  • Less     headaches!
Amir Barylko & James Chambers- Nuget          mavenTHOUGHT Inc.
CONTACT US

  •   Email: james@jameschambers.com
             amir@barylko.com

  •   Twitter: @canadianjames, @abarylko

  •   Slides: http://orthocoders.com/presentations.html




Amir Barylko & James Chambers- Nuget                      mavenTHOUGHT Inc.

Weitere ähnliche Inhalte

Was ist angesagt?

WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSM
WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSMWebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSM
WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSMBarbara Bermes
 
Flexible web publishing with Expression Engine
Flexible web publishing with Expression EngineFlexible web publishing with Expression Engine
Flexible web publishing with Expression EngineHarvard Web Working Group
 
Yeoman - Santa Barbara JavaScript Meetup
Yeoman - Santa Barbara JavaScript MeetupYeoman - Santa Barbara JavaScript Meetup
Yeoman - Santa Barbara JavaScript MeetupTim Doherty
 
CPL12-Agile-planning
CPL12-Agile-planningCPL12-Agile-planning
CPL12-Agile-planningAmir Barylko
 
WordPress Rest API
WordPress Rest APIWordPress Rest API
WordPress Rest APIBrian Layman
 
Enabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarEnabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarAaron Walker
 
Wrapping with PhoneGap
Wrapping with PhoneGapWrapping with PhoneGap
Wrapping with PhoneGapKarl Bunyan
 
State of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinState of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinDries Buytaert
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentKarl Bunyan
 
Optimizing Responsive Websites for Users and Search Engines
Optimizing Responsive Websites for Users and Search Engines Optimizing Responsive Websites for Users and Search Engines
Optimizing Responsive Websites for Users and Search Engines Rob Johnson
 
Flexing Your WordPress Themes
Flexing Your WordPress ThemesFlexing Your WordPress Themes
Flexing Your WordPress ThemesTim Blodgett
 
Atmosphere Conference 2015: DevOps sum is greater than its parts
Atmosphere Conference 2015: DevOps sum is greater than its partsAtmosphere Conference 2015: DevOps sum is greater than its parts
Atmosphere Conference 2015: DevOps sum is greater than its partsPROIDEA
 
Ohio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPOhio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPWesley Workman
 
Social dev camp_2011
Social dev camp_2011Social dev camp_2011
Social dev camp_2011Craig Ulliott
 
Building a massively scalabale cloud service from grounds up
Building a massively scalabale cloud service from grounds upBuilding a massively scalabale cloud service from grounds up
Building a massively scalabale cloud service from grounds upBaruch Sadogursky
 
1st conference 2015 devops
1st conference 2015   devops1st conference 2015   devops
1st conference 2015 devopsAndy Marks
 

Was ist angesagt? (20)

WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSM
WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSMWebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSM
WebExpo Talk: EMBRACING PERFORMANCE IN TODAY’S MULTI-PLATFORM MACROCOSM
 
28 ways To Create Awesome Blog Content with an iPhone
28 ways To Create Awesome Blog Content with an iPhone28 ways To Create Awesome Blog Content with an iPhone
28 ways To Create Awesome Blog Content with an iPhone
 
Flexible web publishing with Expression Engine
Flexible web publishing with Expression EngineFlexible web publishing with Expression Engine
Flexible web publishing with Expression Engine
 
Multisite for the Masses
Multisite for the MassesMultisite for the Masses
Multisite for the Masses
 
Yeoman - Santa Barbara JavaScript Meetup
Yeoman - Santa Barbara JavaScript MeetupYeoman - Santa Barbara JavaScript Meetup
Yeoman - Santa Barbara JavaScript Meetup
 
Esn satellite agm13
Esn satellite agm13Esn satellite agm13
Esn satellite agm13
 
CPL12-Agile-planning
CPL12-Agile-planningCPL12-Agile-planning
CPL12-Agile-planning
 
WordPress Rest API
WordPress Rest APIWordPress Rest API
WordPress Rest API
 
Enabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinarEnabling your DevOps culture with AWS-webinar
Enabling your DevOps culture with AWS-webinar
 
Wrapping with PhoneGap
Wrapping with PhoneGapWrapping with PhoneGap
Wrapping with PhoneGap
 
Andrew bond icera
Andrew bond iceraAndrew bond icera
Andrew bond icera
 
State of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon AustinState of Drupal keynote, DrupalCon Austin
State of Drupal keynote, DrupalCon Austin
 
A Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & Development
 
Optimizing Responsive Websites for Users and Search Engines
Optimizing Responsive Websites for Users and Search Engines Optimizing Responsive Websites for Users and Search Engines
Optimizing Responsive Websites for Users and Search Engines
 
Flexing Your WordPress Themes
Flexing Your WordPress ThemesFlexing Your WordPress Themes
Flexing Your WordPress Themes
 
Atmosphere Conference 2015: DevOps sum is greater than its parts
Atmosphere Conference 2015: DevOps sum is greater than its partsAtmosphere Conference 2015: DevOps sum is greater than its parts
Atmosphere Conference 2015: DevOps sum is greater than its parts
 
Ohio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCPOhio Devfest - Visual Analysis with GCP
Ohio Devfest - Visual Analysis with GCP
 
Social dev camp_2011
Social dev camp_2011Social dev camp_2011
Social dev camp_2011
 
Building a massively scalabale cloud service from grounds up
Building a massively scalabale cloud service from grounds upBuilding a massively scalabale cloud service from grounds up
Building a massively scalabale cloud service from grounds up
 
1st conference 2015 devops
1st conference 2015   devops1st conference 2015   devops
1st conference 2015 devops
 

Ähnlich wie Nuget Package Manager Overview

prdc10-Bdd-real-world
prdc10-Bdd-real-worldprdc10-Bdd-real-world
prdc10-Bdd-real-worldAmir Barylko
 
Page objects pattern
Page objects patternPage objects pattern
Page objects patternAmir Barylko
 
Page-objects-pattern
Page-objects-patternPage-objects-pattern
Page-objects-patternAmir Barylko
 
PRDC11-tdd-common-mistakes
PRDC11-tdd-common-mistakesPRDC11-tdd-common-mistakes
PRDC11-tdd-common-mistakesAmir Barylko
 
2012 regina TC - 103 quality driven
2012 regina TC - 103 quality driven2012 regina TC - 103 quality driven
2012 regina TC - 103 quality drivenAmir Barylko
 
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good Server
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good ServerEngage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good Server
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good ServerBill Malchisky Jr.
 
Open source libraries and tools
Open source libraries and toolsOpen source libraries and tools
Open source libraries and toolsAmir Barylko
 
DevTeach12-Capybara
DevTeach12-CapybaraDevTeach12-Capybara
DevTeach12-CapybaraAmir Barylko
 
Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM DVClub
 
Agile requirements
Agile requirementsAgile requirements
Agile requirementsAmir Barylko
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable productJulian Simpson
 
Cloud conference - mongodb
Cloud conference - mongodbCloud conference - mongodb
Cloud conference - mongodbMitch Pirtle
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's ArchitectureTony Tam
 
DevTeach12-betterspecs
DevTeach12-betterspecsDevTeach12-betterspecs
DevTeach12-betterspecsAmir Barylko
 
YEG-Agile-planning
YEG-Agile-planningYEG-Agile-planning
YEG-Agile-planningAmir Barylko
 
Running MongoDB in the Cloud
Running MongoDB in the CloudRunning MongoDB in the Cloud
Running MongoDB in the CloudTony Tam
 

Ähnlich wie Nuget Package Manager Overview (20)

prdc10-Bdd-real-world
prdc10-Bdd-real-worldprdc10-Bdd-real-world
prdc10-Bdd-real-world
 
Page objects pattern
Page objects patternPage objects pattern
Page objects pattern
 
Page-objects-pattern
Page-objects-patternPage-objects-pattern
Page-objects-pattern
 
why-tdd
why-tddwhy-tdd
why-tdd
 
YEG-UG-Capybara
YEG-UG-CapybaraYEG-UG-Capybara
YEG-UG-Capybara
 
PRDC11-tdd-common-mistakes
PRDC11-tdd-common-mistakesPRDC11-tdd-common-mistakes
PRDC11-tdd-common-mistakes
 
2012 regina TC - 103 quality driven
2012 regina TC - 103 quality driven2012 regina TC - 103 quality driven
2012 regina TC - 103 quality driven
 
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good Server
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good ServerEngage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good Server
Engage 2016 - Adm01 - Back from the Dead: When Bad Code Kills a Good Server
 
Open source libraries and tools
Open source libraries and toolsOpen source libraries and tools
Open source libraries and tools
 
DevTeach12-Capybara
DevTeach12-CapybaraDevTeach12-Capybara
DevTeach12-Capybara
 
Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM
 
Agile requirements
Agile requirementsAgile requirements
Agile requirements
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
Cloud conference - mongodb
Cloud conference - mongodbCloud conference - mongodb
Cloud conference - mongodb
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
 
What is this cloud thing?
What is this cloud thing?What is this cloud thing?
What is this cloud thing?
 
DevTeach12-betterspecs
DevTeach12-betterspecsDevTeach12-betterspecs
DevTeach12-betterspecs
 
YEG-Agile-planning
YEG-Agile-planningYEG-Agile-planning
YEG-Agile-planning
 
Running MongoDB in the Cloud
Running MongoDB in the CloudRunning MongoDB in the Cloud
Running MongoDB in the Cloud
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 

Mehr von Amir Barylko

Functional converter project
Functional converter projectFunctional converter project
Functional converter projectAmir Barylko
 
Elm: delightful web development
Elm: delightful web developmentElm: delightful web development
Elm: delightful web developmentAmir Barylko
 
User stories deep dive
User stories deep diveUser stories deep dive
User stories deep diveAmir Barylko
 
Coderetreat hosting training
Coderetreat hosting trainingCoderetreat hosting training
Coderetreat hosting trainingAmir Barylko
 
There's no charge for (functional) awesomeness
There's no charge for (functional) awesomenessThere's no charge for (functional) awesomeness
There's no charge for (functional) awesomenessAmir Barylko
 
What's new in c# 6
What's new in c# 6What's new in c# 6
What's new in c# 6Amir Barylko
 
Who killed object oriented design?
Who killed object oriented design?Who killed object oriented design?
Who killed object oriented design?Amir Barylko
 
From coach to owner - What I learned from the other side
From coach to owner - What I learned from the other sideFrom coach to owner - What I learned from the other side
From coach to owner - What I learned from the other sideAmir Barylko
 
Communication is the Key to Teamwork and productivity
Communication is the Key to Teamwork and productivityCommunication is the Key to Teamwork and productivity
Communication is the Key to Teamwork and productivityAmir Barylko
 
Acceptance Test Driven Development
Acceptance Test Driven DevelopmentAcceptance Test Driven Development
Acceptance Test Driven DevelopmentAmir Barylko
 
Agile requirements
Agile requirementsAgile requirements
Agile requirementsAmir Barylko
 
Agile teams and responsibilities
Agile teams and responsibilitiesAgile teams and responsibilities
Agile teams and responsibilitiesAmir Barylko
 
Beutiful javascript with coffeescript
Beutiful javascript with coffeescriptBeutiful javascript with coffeescript
Beutiful javascript with coffeescriptAmir Barylko
 
Rich UI with Knockout.js & Coffeescript
Rich UI with Knockout.js & CoffeescriptRich UI with Knockout.js & Coffeescript
Rich UI with Knockout.js & CoffeescriptAmir Barylko
 

Mehr von Amir Barylko (20)

Functional converter project
Functional converter projectFunctional converter project
Functional converter project
 
Elm: delightful web development
Elm: delightful web developmentElm: delightful web development
Elm: delightful web development
 
Dot Net Core
Dot Net CoreDot Net Core
Dot Net Core
 
No estimates
No estimatesNo estimates
No estimates
 
User stories deep dive
User stories deep diveUser stories deep dive
User stories deep dive
 
Coderetreat hosting training
Coderetreat hosting trainingCoderetreat hosting training
Coderetreat hosting training
 
There's no charge for (functional) awesomeness
There's no charge for (functional) awesomenessThere's no charge for (functional) awesomeness
There's no charge for (functional) awesomeness
 
What's new in c# 6
What's new in c# 6What's new in c# 6
What's new in c# 6
 
Productive teams
Productive teamsProductive teams
Productive teams
 
Who killed object oriented design?
Who killed object oriented design?Who killed object oriented design?
Who killed object oriented design?
 
From coach to owner - What I learned from the other side
From coach to owner - What I learned from the other sideFrom coach to owner - What I learned from the other side
From coach to owner - What I learned from the other side
 
Communication is the Key to Teamwork and productivity
Communication is the Key to Teamwork and productivityCommunication is the Key to Teamwork and productivity
Communication is the Key to Teamwork and productivity
 
Acceptance Test Driven Development
Acceptance Test Driven DevelopmentAcceptance Test Driven Development
Acceptance Test Driven Development
 
Refactoring
RefactoringRefactoring
Refactoring
 
Agile requirements
Agile requirementsAgile requirements
Agile requirements
 
Agile teams and responsibilities
Agile teams and responsibilitiesAgile teams and responsibilities
Agile teams and responsibilities
 
Refactoring
RefactoringRefactoring
Refactoring
 
Beutiful javascript with coffeescript
Beutiful javascript with coffeescriptBeutiful javascript with coffeescript
Beutiful javascript with coffeescript
 
Sass & bootstrap
Sass & bootstrapSass & bootstrap
Sass & bootstrap
 
Rich UI with Knockout.js & Coffeescript
Rich UI with Knockout.js & CoffeescriptRich UI with Knockout.js & Coffeescript
Rich UI with Knockout.js & Coffeescript
 

Kürzlich hochgeladen

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Kürzlich hochgeladen (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Nuget Package Manager Overview

  • 1. AMIR BARYLKO & JAMES CHAMBERS NUGET PACKAGE MANAGER Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 2. ABOUT JAMES • Microsoft MVP in Asp.Net/IIS • Husband and father of 3 • Humanitarian: food, water, JDRF • Product & Community Development Manager at LogiSense Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 3. ABOUT AMIR • Architect • Developer • Mentor • Great cook • Software Quality Expert at mavenTHOUGHT Inc. Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 4. CONTACT US • Email: james@jameschambers.com amir@barylko.com • Twitter: @canadianjames, @abarylko • Slides: http://orthocoders.com/presentations.html Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 5. 12’’ PIZZA ON WHITE Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 6.
  • 7. HOW DO WE SHARE DLLS TODAY? Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 8. SHARED FOLDERS • All the dlls are stored in a particular location • All the projects add the reference to a DLL • When a DLL is updated overwrites the previous version Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 9. NO VERSIONING • 1.0.0.0 • Or just changed with releases • Or nobody cares Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 10. HUGE SOLUTIONS • All the projects share the same solution • No matter cohesion • It’s easier to “debug” (really?) Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 11. BINARIES IN SRC CONTROL • The binaries of the dependencies • Are stored in source control • In order to be able to build every time Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 12. UPDATE DLLS NIGHTMARE • Go to each project and remove the old • Then add the new reference • Or just don’t use versioning (only internal) • But you force everyone to update! Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 13. ADDING REFERENCES • Find and add elmah.dll • Find and add log4net.dll • Find any other dependency • Modify configuration • Etc.... Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 14. NUGET Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 15. VS EXTENSION • Just install it! Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 16. WHERE ARE THE DLLS? • Packages folder (check it out) Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 17. RESTORE ON BUILD • No need to store Packages folder • Just check “restore on build” • If needed, nuget will download them Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 18. COMMAND SHELL • More flexibility • Use nuget command shell to install, uninstall etc... • Auto complete can be handy • Choose version, etc.... Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 19. WHAT ABOUT DEBUGGING? • Use the symbol source Luke! • SymbolSource.Server.Basic can be installed with nuget :) Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 20. PUBLISHING • Get an API key from your server • nuget -spec • Or Albacore has a task for it (Yes, ruby and rake, get over it) • Or NugetPackageExplorer Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 21. POST INSTALLATION • Install all dependencies • Run web transforms • Run any other configuration Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 22. MULTIPLE SERVERS • Nuget.org • MyGet •A shared folder • Your own local server Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 23. RISKS / DOUBTS Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 24. NO INTERNET • Backups • Local feeds • Go home! Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 25. EXPENSIVE UPDATE • Update only when you want • Update all of them together possible • Why force to update if you don’t need to? Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 26. FORCES VERSIONING • And that’s a problem because.... ? Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 27. IF IT WORKS DON’T BREAK IT • No more binaries in source control • Clear dependency management • Less coupling • Follow a standard • Less headaches! Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  • 28. CONTACT US • Email: james@jameschambers.com amir@barylko.com • Twitter: @canadianjames, @abarylko • Slides: http://orthocoders.com/presentations.html Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.