0
AMIR BARYLKO &                      JAMES CHAMBERS                      NUGET PACKAGE                        MANAGERAmir B...
ABOUT JAMES  • Microsoft          MVP in Asp.Net/IIS  • Husband           and father of 3  • Humanitarian: food, water, JD...
ABOUT AMIR  • Architect  • Developer  • Mentor  • Great       cook  • Software          Quality Expert at mavenTHOUGHT Inc...
CONTACT US  •   Email: james@jameschambers.com             amir@barylko.com  •   Twitter: @canadianjames, @abarylko  •   S...
12’’ PIZZA ON WHITEAmir 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  •...
NO VERSIONING  • 1.0.0.0  • Or     just changed with releases  • Or     nobody caresAmir Barylko & James Chambers- Nuget  ...
HUGE SOLUTIONS  • All    the projects share the same solution  • No      matter cohesion  • It’s   easier to “debug” (real...
BINARIES IN SRC CONTROL  • The      binaries of the dependencies  • Are      stored in source control  • In   order to be ...
UPDATE DLLS NIGHTMARE  • Go      to each project and remove the old  • Then       add the new reference  • Or     just don...
ADDING REFERENCES  • Find     and add elmah.dll  • Find     and add log4net.dll  • Find     any other dependency  • Modify...
NUGETAmir 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 I...
RESTORE ON BUILD  • No      need to store Packages folder  • Just    check “restore on build”  • If   needed, nuget will d...
COMMAND SHELL  • More        flexibility  • Use      nuget command shell to install, uninstall etc...  • Auto       complet...
WHAT ABOUT DEBUGGING?  • Use      the symbol source Luke!  • SymbolSource.Server.Basic          can be installed with    n...
PUBLISHING  • Get      an API key from your server  • nuget       -spec  • Or Albacore              has a task for it (Yes...
POST INSTALLATION  • Install     all dependencies  • Run      web transforms  • Run      any other configurationAmir Barylk...
MULTIPLE SERVERS  • Nuget.org  • MyGet  •A     shared folder  • Your      own local serverAmir Barylko & James Chambers- N...
RISKS / DOUBTSAmir 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 ...
FORCES VERSIONING  • And       that’s a problem because.... ?Amir Barylko & James Chambers- Nuget           mavenTHOUGHT I...
IF IT WORKS DON’T BREAK IT  • No      more binaries in source control  • Clear       dependency management  • Less     cou...
CONTACT US  •   Email: james@jameschambers.com             amir@barylko.com  •   Twitter: @canadianjames, @abarylko  •   S...
Nuget
Upcoming SlideShare
Loading in...5
×

Nuget

550

Published on

Presentation done at the .net ug about nuget package manager

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
550
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Nuget"

  1. 1. AMIR BARYLKO & JAMES CHAMBERS NUGET PACKAGE MANAGERAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  2. 2. ABOUT JAMES • Microsoft MVP in Asp.Net/IIS • Husband and father of 3 • Humanitarian: food, water, JDRF • Product & Community Development Manager at LogiSenseAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  3. 3. ABOUT AMIR • Architect • Developer • Mentor • Great cook • Software Quality Expert at mavenTHOUGHT Inc.Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  4. 4. CONTACT US • Email: james@jameschambers.com amir@barylko.com • Twitter: @canadianjames, @abarylko • Slides: http://orthocoders.com/presentations.htmlAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  5. 5. 12’’ PIZZA ON WHITEAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  6. 6. HOW DO WE SHARE DLLS TODAY?Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  7. 7. 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 versionAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  8. 8. NO VERSIONING • 1.0.0.0 • Or just changed with releases • Or nobody caresAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  9. 9. 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.
  10. 10. BINARIES IN SRC CONTROL • The binaries of the dependencies • Are stored in source control • In order to be able to build every timeAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  11. 11. 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.
  12. 12. 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.
  13. 13. NUGETAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  14. 14. VS EXTENSION • Just install it!Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  15. 15. WHERE ARE THE DLLS? • Packages folder (check it out)Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  16. 16. RESTORE ON BUILD • No need to store Packages folder • Just check “restore on build” • If needed, nuget will download themAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  17. 17. 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.
  18. 18. WHAT ABOUT DEBUGGING? • Use the symbol source Luke! • SymbolSource.Server.Basic can be installed with nuget :)Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  19. 19. 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 NugetPackageExplorerAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  20. 20. POST INSTALLATION • Install all dependencies • Run web transforms • Run any other configurationAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  21. 21. MULTIPLE SERVERS • Nuget.org • MyGet •A shared folder • Your own local serverAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  22. 22. RISKS / DOUBTSAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  23. 23. NO INTERNET • Backups • Local feeds • Go home!Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  24. 24. 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.
  25. 25. FORCES VERSIONING • And that’s a problem because.... ?Amir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  26. 26. 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.
  27. 27. CONTACT US • Email: james@jameschambers.com amir@barylko.com • Twitter: @canadianjames, @abarylko • Slides: http://orthocoders.com/presentations.htmlAmir Barylko & James Chambers- Nuget mavenTHOUGHT Inc.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×