From 0 to Open Source: Shipping the GitHub Extension for Visual Studio
From day one we knew we wanted to make the GitHub Extension for Visual Studio open source. From day one we also knew that we were building an extension for a product that was itself still under construction, using brand new APIs, and we would be the first third party extension to be included in Visual Studio's Team Explorer area out of the box. This meant a close development partnership with Microsoft, developing in secret, being subject to some of the Visual Studio team's performance constraints, and knowing we had only 3 months to build a shippable product, and creating code that we could open source as soon as possible after the release.
This is the tale of how we built the GitHub Extension for Visual Studio and made it open source.
We'll talk about the challenges of building extensions for Visual Studio in general, and the particular challenges we faced in this project, from technical constraints to design decisions, team coordination, and creating roadmaps when there is no room for mistakes. We'll look into the strategies we used to handle having to build and ship a product with extremely short deadlines and severe technical constraints, without resorting to (too many) hacky workarounds, all the while keeping the code clean and maintainable as much as possible. We'll talk about what we did to ensure that the code was open source-able, and the challenges of creating and growing a community around a new open source project.