Coolthing Of Theday

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Monday, 19 August 2013

Oh Concierge, can you NuGet me [a related package recommendation?]... Hello NuGet Concierge...

Posted on 17:17 by Unknown

NuGet blog - Introducing NuGet Concierge

Twelve weeks ago, Microsoft’s Azure Applications Platform & Tools team welcomed three 2nd-year college students, Jaspreet Bagga, Jeremiah Jekich, and Melissa McNeill, and gave them an opportunity to contribute to NuGet.

Package Discovery

Discovering NuGet packages can be a daunting process. The best way to do so is either via word of mouth or online search. However, your friends aren’t always available when you’re looking for a new package at 3:00 in the morning. You could try to search online, but you’d need to spend unnecessary amounts of time sifting through the results before finding a package that may be helpful. We recognize that this time is better spent actually developing software. We wanted to create an accessible service to deliver package recommendations using real world data about how developers use packages.

NuGet Concierge

Thus was born NuGet Concierge, a package recommendation service that recommends packages to developers based on the packages currently being used in their project. We envisioned developers being able to upload their project’s packages.config file to the NuGet Concierge website, which would then present them with a list of packages they may find useful. Something along the lines of “Most projects that use Package A also use Package B.”

So, at the beginning of the summer, we put out a call to the community via Twitter, asking for developers to upload their projects’ packages.config files to help seed our newly conceived recommendation service. We asked, and you delivered! Armed with a collection of over 350 packages.config files, the NuGet Concierge project was brought to life.

Implementation

The first step was to translate the collected .config files into a structure that would allow us to analyze the relationships between packages. How often are individual packages used? But, more importantly, how are packages used together?

So, we took the community’s .config files and parsed them, using them to construct a graph. In doing so, we tracked the number of times a package was used, a value we referred to as the package’s “popularity.” We also tracked how many times two packages were used together, which we referred to as the packages’ “pairing frequency.”

Determining Relationships

Let’s say we have two packages, EntityFramework and jQuery...

...

NuGet Concierge’s Potential

NuGet Concierge is just a conceptual prototype at the moment. But if the concept proves to be valuable, we imagine NuGet Concierge as a fully integrated part of NuGet, having a presence in the Gallery, Visual Studio’s Manage NuGet Packages dialog, and the Package Manager Console. The greatest part of NuGet Concierge is the data powering it. The ability to reference real data about how packages are actively used together opens up a world of opportunities that can potentially help NuGet better serve developers.

Until then, please feel free to try out NuGet Concierge at http://concierge.nuget.org and let us know if you like the concept and/or the recommendations. You can also see the code for NuGet Concierge at http://github.com/NuGet/Concierge.

image

Interesting... But more, I love how it's OSS.

Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in Development, NuGet | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Mr. 7,000! This is my 7,000th post...
    Before this post; After; 20 visits between taking these snaps? Oh wait, that's probably me searching for past related posts....
  • Rad Gate Post... Get your Red Gate Post here...
    simple talk - Melanie Townsend - Get a copy of the Red Gate Post We recently put together a newspaper of some of the best articles fr...
  • "Windows Server Essentials Media Pack" (DNLA Stream, HTML5 and Dashboard Media stuff)
    Microsoft Downloads - Windows Server Essentials Media Pack This pack enables the media streaming functionality for Windows Server 2012...
  • Windows Management Framework 4.0 (PowerShell 4, PowerShell ISE, Management OData, WMI, etc.) now available
    Keith Hill's Blog - PowerShell 4.0 Now Available You can get PowerShell 4.0 for down level operating systems now via the WMF 4.0 d...
  • Gestalt your way to better data visualization by following the Gestalt Laws
    Six Revisions - How to Make Data Visualization Better with Gestalt Laws People love order. We love to make sense of the world around u...
  • Viasfora - Your new favorite Visual Studio Text/*ML Editing Extension?
    Winterdom - Introducing Viasfora A couple of days ago, I unveiled Viasfora , my latest attempt at building a decently packaged extensi...
  • "Windows Server [2012 R2]: The Best Infrastructure to Run Linux Workloads"
    In the Cloud - What’s New in 2012 R2: Enabling Open Source Software Part 4 of a 9-part series . ... There are a lot of great s...
  • [Hardware Review] Life with Haswell... Haswell/Harris Beach Intel SDS Ultrabook Review - Part 2
    "So Greg, how's life with Haswell been?" "Pretty Sweet! (Mostly)" I've been given an opportunity to review t...
  • Fuzzy Lookup Add-In for Excel (Insert lame "Fuzzy, wuzzy was an Excel..." snip here)
    Microsoft Downloads - Fuzzy Lookup Add-In for Excel The Fuzzy Lookup Add-In for Excel performs fuzzy matching of textual data in Exce...
  • Caliburn.Micro v1.5.0 released (CM gets Tasks, Async/Await and Share/Setting for RT... and bug fixes of course)
    Caliburn.Micro - Caliburn.Micro v1.5.0 "Release Notes This release fixes many bugs. It also adds support for Task and async/a...

Categories

  • .Net
  • 3DPrinting
  • AFeedYouShouldRead
  • Agile
  • ALM
  • Amazon
  • Amiga
  • Analytics
  • Android
  • ASP.NET
  • Azure
  • BigData
  • bing
  • Blogging
  • Book
  • BookReview
  • BUILD
  • C
  • C#
  • C++
  • Career
  • Cat
  • cheatsheet
  • ClickOnce
  • Cloud
  • ComputerHardware
  • css
  • Data
  • DBA
  • DependencyInjection
  • Deployment
  • Design
  • Development
  • devops
  • DVCS
  • ebook
  • EDD
  • Education
  • EnterpriseLibrary
  • EntityFramework
  • Exchange
  • Expression
  • gadget
  • Game
  • GIT
  • Google
  • Government
  • Hadoop
  • hardware
  • HardwareReview
  • HaswellReview
  • HTML5
  • Humor
  • IE
  • IEExtension
  • IfAllElseFails
  • IIS
  • ILMerge
  • Image
  • Infographic
  • interview
  • InversionOfControl
  • Java
  • Javascript
  • Kinect
  • LightSwitch
  • LINQ
  • Linux
  • LosAngeles
  • Lucene
  • Lync
  • MEF
  • Metro
  • MicrosoftOffice
  • MicrosoftOutlook
  • Mono
  • MVC
  • MVVM
  • NetMon
  • NLP
  • NoSQL
  • NuGet
  • OData
  • OneNote
  • OpenXML
  • Paint.Net
  • Personal
  • Photosynth
  • Physics
  • portable
  • Poster
  • PowerShell
  • Preparedness
  • Presentation
  • Prism
  • PrivateCloud
  • RegEx
  • RemoteDesktop
  • Reporting
  • RIAServices
  • Science
  • ScienceFiction
  • Scratch
  • Scrum
  • ServiceBus
  • SharePoint
  • Silverlight
  • SimiValley
  • SPA
  • Space
  • SQLServer
  • Storyboard
  • Surface
  • SVG
  • SystemAdministration
  • T4
  • TeamBuild
  • TeamFoundationServer
  • TechEd
  • Training
  • TypeScript
  • UnitTesting
  • UnityApplicationBlock
  • Utility
  • Veteran
  • VirtualMachine
  • Visio
  • VisualBasic
  • VisualStudio
  • WCF
  • Web X.X
  • Webcast
  • WebFeed
  • WebMatrix
  • Windows
  • Windows7
  • Windows8
  • Windows8.1
  • WindowsHomeServer
  • WindowsLiveWriter
  • WindowsPhone
  • WindowsServer
  • WinRT
  • WiX
  • WMI
  • WOPI
  • WPF
  • XAML
  • XBox360
  • XboxOne
  • zombie

Blog Archive

  • ▼  2013 (500)
    • ►  December (12)
    • ►  November (61)
    • ►  October (65)
    • ►  September (38)
    • ▼  August (47)
      • Summer is almost over, but the Windows Phone Dev C...
      • Horton hears a Hadoop [set of icons]
      • Place your bets now on who's going to be the next ...
      • [Humor] NSA Job Application Flowchart
      • Reminder, you only have a couple days left to buy ...
      • Featuring Agile Planning and Portfolio Management ...
      • The .NET Universe Poster for 2013 is now available
      • Putting that new 3D printer to use... printing fos...
      • Wrapping your head about Azure, one infographic at...
      • Cool LA Metro Rail Ridership Visualization (and de...
      • Buying your own Mobile Launch Platform from NASA, ...
      • You can have my WP8 when you pry it from... these ...
      • [Limited time offer, open unit Sept 6th!] You know...
      • Taking the Bus to the next stop... Why you, Dev an...
      • Trie in C# - Example of prefix string search and s...
      • Avoid virtual stagnation - "INFOGRAPHIC: Top virt...
      • Free eBook #2 for the day: Dependency Injection wi...
      • Free eBook #1 of the day: Windows Azure SQL Report...
      • Paul Thurrott shares his latest Windows Phone 8 bo...
      • Fuzzy Lookup Add-In for Excel (Insert lame "Fuzzy,...
      • Oh Concierge, can you NuGet me [a related package ...
      • North by Northwest [Cadence] - Up coming casts fro...
      • Get the Getty... Getty Trust opens 4600 free (and ...
      • Free Payment icon's for your online web purchasing...
      • "The Developer Evangelist Handbook" - A Handbook f...
      • It's official, we've got a Windows 8.1 GA/release ...
      • Eight tips for the Windows Live Writer Power Blogg...
      • WPF/SilverLight IG Theme is now free from Infragis...
      • "How the heck is Hekaton part of SQL Server 2014.....
      • Target .Net 4.5.1 in VS2012? Yep, with the power o...
      • OneNote 2013 COM API XML Schema
      • 24 Hours of PASS (PASS Summit 2013 Sneak Peeks)
      • 10 Years... My blogging is now in the double digit...
      • [Humor] One-liners that only DBA's and T-SQL'ers w...
      • Hadoop Coloring Book (no kidding)
      • Channel 9 Windows Phone 8 App (Beta) now available...
      • Seeding your hardware hacking with the Seeed Open ...
      • Brian brings some Unity to using Prism and dynamic...
      • "What platform should I use when creating a WinSto...
      • Now that's an Idea [Book]! Windows 8 App Store Ide...
      • Web based Windows Phone App Studio Beta now available
      • [Book Review] "Building Interactive Queries with L...
      • Windows 8 Roaming Monitor Visual Studio 2012 Exten...
      • FEZ Game-O Emulator - Community Edition
      • Azure, PowerShell, Virtual Networks, VM's, Domains...
      • Visual Studio 2013 ALM and HOL VM now available...
      • [Book Review - Preview] "Building Interactive Quer...
    • ►  July (75)
    • ►  June (39)
    • ►  May (40)
    • ►  April (42)
    • ►  March (39)
    • ►  February (42)
Powered by Blogger.

About Me

Unknown
View my complete profile