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.
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.
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.