2-772: Money, Fame, and Flexibility: New Extensibility for Visual Studio and Visual Studio Online
Created 2 years ago
Duration 1:03:59
What would you do if you worked on the Visual Studio team for a day? What would you add to Visual Studio or Visual Studio Online to help you and other developers? Now imagine this: you can do all that today with existing extensibility. You have everything you need to join Visual Studio’s ecosystem of client and online extensions. You can be famous, or rich, or both!
Come and learn how to create new editor visualizations, custom tool windows, and extensions for Visual Studio, Visual Studio Online and Team Foundation Server. We will walk you through the process of creating new extensions, debugging them, and making them available for others to discover and use. Now you can start building extensions for yourself, your team, the community, or for money.
-
Embed
-
Social
Select the file type you wish to download
Slide Content
-
Slide 1 - Tarek Madkour
- GPM – Visual Studio IDE
- Microsoft Corp.
- @tarekmadkour
- ✉ tarekm@microsoft.com
- Money, Fame, and Flexibility: New Extensibility for Visual Studio and Visual Studio Online
- 2-772
- Will Smythe
- PM – Visual Studio Online
- Microsoft Corp.
- @willsmythe
- ✉ wismythe@microsoft.com
- Sam Harwell
- Lead Engineer
- Coverity by Synopsys
- @samharwell
- ✉ sam@tunnelvisionlabs.com
-
Slide 2 - Tarek Madkour
- GPM – Visual Studio IDE
- Microsoft Corp.
- @tarekmadkour
- ✉ tarekm@microsoft.com
- Money, Fame, and Flexibility: New Extensibility for Visual Studio and Visual Studio Online
- 2-772
- Will Smythe
- PM – Visual Studio Online
- Microsoft Corp.
- @willsmythe
- ✉ wismythe@microsoft.com
- Sam Harwell
- Lead Engineer
- Coverity by Synopsys
- @samharwell
- ✉ sam@tunnelvisionlabs.com
-
Slide 3 - Why do it? Why me?
- Targeting the VS client
- Demo and Code
- Targeting VS Online
- More Demos
- Agenda
-
Slide 4 - Why do it? Why me?
- Targeting the VS client
- Demo and Code
- Targeting VS Online
- More Demos
- Agenda
-
Slide 5 - … a way to add or modify VS functionality for yourself and for others …
- What is an Extension?
-
Slide 6 - … a way to add or modify VS functionality for yourself and for others …
- What is an Extension?
-
Slide 7 - Published to the VS Gallery
-
Slide 8 - Published to the VS Gallery
-
Slide 9 - For >1M Developers
- Visual Studio Enterprise
- Visual Studio Professional
- Visual Studio Community
- +
-
Slide 10 - Online
- Now Also Online
-
Slide 11 - Online
- Now Also Online
-
Slide 12 - Agile
- Build
- Test
- Deploy
- Insights
- Code
- Online
-
Slide 13 - Why Build An Extension?
- for you
- for your team
- for money and fame
- for reach
- for fun and community
- $$
- Open
- Source
-
Slide 14 - Targeting the Visual Studio IDE Client
-
Slide 15 - Targeting the Visual Studio IDE Client
-
Slide 16 - What Is Possible?
- Providing a new command
-
Slide 17 - What Is Possible?
- Adding a new tool window
-
Slide 18 - What Is Possible?
- Adding a debugger visualizer
-
Slide 19 - What Is Possible?
- Adding a refactoring option
-
Slide 20 - Simplified, practical templates
- Open-source samples extensions
- “Clone and Go”
- Many use MIT and/or Apache 2.0 licenses
- Friendly faces, friendly people
- Dive In
-
Slide 21 - Target multiple versions of Visual Studio
- New APIs or old – use what you need
- Develop
- New in 2015:
- Roslyn analyzers
- Light bulbs
- Image service (high-DPI)
- Asynchronous service provider
- Common Project System
- Rule-based UI context engine
-
Slide 22 - Simplicity
- “VSIX” packaging supports almost every scenario
- Straightforward installation and upgrades
- Quality
- Unmatched performance
- High DPI support
- Revisiting localization
- Audience
- With Community Edition, nearly all users have access to extensions
- Deliver
-
Slide 23 - Developing an extension
- Demo
-
Slide 24 - Developing an extension
- Demo
-
Slide 25 - Developing an extension
- Demo
-
Slide 26 - Developing an extension
- Demo
-
Slide 27 - Targeting Visual Studio Online
-
Slide 28 - Targeting Visual Studio Online
-
Slide 29 - Agile
- Build
- Test
- Deploy
- Insights
- Code
- Online
- Myth busting …
- Visual Studio Online is not a hosted development environment (IDE).
- Visual Studio Online is not just for Microsoft shops.
- Team Foundation Server is not dead.
-
Slide 30 - Lightweight and easy to work with
- Integrate from virtually any device, platform, or technology stack
- Common API set between VSO and TFS
- OAuth 2.0 support
- REST APIs
- APIs:
- Build
- Work item tracking
- Version control
- Git
- Test management
- Team room
- Service hooks
- Account and profile
- Collection, project, and team
- https://www.visualstudio.com/integrate/api/overview
-
Slide 31 - Send notifications or perform actions on external services when events happens in your project
- Supports popular services like Slack and Trello out-the-box
- Avoids delays typically seen with polling
- Service hooks
- Events: build completed, code checked in, work item changed, pull request, and more.
- Services: AppVeyor, Campfire, Flowdock, HipChat, Jenkins, Kato, MyGet, Slack, Trello, UserVoice, Zendesk, Zapier, and more…
- https://www.visualstudio.com/get-started/integrate/integrating-with-service-hooks-vs
-
Slide 32 - Service hooks
- Demo
-
Slide 33 - Extensions for VS Online
- Create integrated experiences within Visual Studio Online (like you can do in Visual Studio)
- Develop one extension that works in both VSO and TFS (fall 2015)
- Publish and discover extensions in a central gallery
-
Slide 34 - Extensions for VS Online
- Create integrated experiences within Visual Studio Online (like you can do in Visual Studio)
- Develop one extension that works in both VSO and TFS (fall 2015)
- Publish and discover extensions in a central gallery
-
Slide 35 - First look: extensions
- Demo
-
Slide 36 - First look: extensions
- Demo
-
Slide 37 - Want To Get Started?
-
Slide 38
- Take the Code Challenge
- Visit the VSIP booth. Learn about the program.
- http://www.vsipprogram.com/join
- Visit the Visual Studio Partner booths
- Resources at //BUILD/
-
Slide 39 - Please Complete An Evaluation FormYour input is important!
- SAMPLE
- or
- Required Slide
- *delete this box when your slide is finalized