Open Door Policy: Brady Gaster on Coding like a Vampire and Making the Microsoft Cloud Open

Posted by Tara Grumm
Senior Manager, Worldwide Marketing & Operations

 Brady Gaster (@bradygaster) is a Microsoft Azure Program Manager and the former host of Channel 9’s Web Camps TV, who focuses on building tools that make it easier for web developers to benefit from the cloud. His recent interests involve connecting devices like the Kinect, Netduino, and robotics platforms to Microsoft Azure, as well as finding creative ways to use SignalR, the groundbreaking open source persistent HTTP abstraction. Brady took a break from all things .NET, ASP.NET, Web API, SignalR, Kinect, microcontrollers, C#, and Java to chat with us on his work to ensure Microsoft’s cloud platform is open.

What’s your favorite technology innovation?

This is a great question, and the answer is part of the reason I’m at Microsoft.

SignalR, a library for ASP.NET developers, makes it incredibly simple to add real-time web functionality to your applications and is one of my favorite technologies created in the last five years. It has an interesting history, and I feel fortunate to have witnessed its creation and maturing.

Two guys at Microsoft were on separate teams, but both were excited about the possibility for real-time web functionality for applications. They started meeting in their free time discussing the potential and eventually created SignalR. In the beginning it was just a pet project, but over the course of a year, it became the most popular .NET project on GitHub. From its inception, SignalR was an open source project.

I think this project influenced how the Microsoft Azure team did business. As SignalR gained in popularity, Microsoft observed its importance in the ASP.NET developer community and eventually promoted it as a core part of the ASP.NET stack. The community responded positively, and eventually we open sourced the entire ASP.NET, Entity Framework, and a whole lot more.

The community reaction has been overwhelmingly positive. Since then, I’ve done Channel 9 interviews with the ASP.NET Web API team, along with one of their community contributors, to talk about how the team perceives its external contributors as extensions of the Redmond team, and how they met regularly to share code and to see the product evolve together.

We’d wanted to open source the ASP.NET stack for a while, and SignalR was one of the catalysts that made this possible.  A pet project made by Microsoft engineers in their free time helped us move into a new direction and open source a really cool, helpful technology.

We’ve seen hugely positive commentary from the community on our investments in open source tooling extensions in Visual Studio, too. One of the most successful extensions release, Web Essentials, is completely open source. Additionally, we’ve totally re-invented how .NET developers can open source their own reusable components with the NuGet package management system. Across the board, more teams in Microsoft Azure and ASP.NET are making investments in open source communities than ever before.

What has been your most memorable “Microsoft is open” experience?

My most memorable moment was when I attended my first Microsoft event. At new employee orientation, they displayed a slide which depicted Microsoft versus Microsoft stereotypes. The slide juxtaposed open versus closed, and I learned then that Microsoft was evolving and had a new commitment to the industry to be more open. And it affirmed that I was joining this organization at a great moment. 

Openness is a fundamental requirement for cloud computing and is an integral part of my work. I wouldn’t be able to do my job without open source communities. The Microsoft Azure SDK supports a variety of languages including non-.NET languages like Ruby and Node.js – and these languages have vibrant open source communities backing them. The cloud computing community is usually looking for a cloud provider that understands them and is open, and without the “open” part most developers look for other options.

As we developed the Microsoft Azure SDK the products and libraries my team used were primarily open libraries. PHP, Ruby, .NET, Java - everything SDK is open and public, and we want to keep it that way. Open source is a part of my day-to-day job. I file two contributor license agreements a day and a significant portion of my job is reviewing open source contributions. Which, frankly, keeps my job interesting and fun – you never would believe the things people contribute. One contributor, for instance, from Switzerland, used the very code he contributed to automate the deployment of over 1,000 assets, from virtual machines to cloud service instances, in his normal role. His manager actually sent our team a summary of the success they had using our combined code.

Where do you feel you get your best work done?

Ha! I am totally one of those stereotypical developers who does their best work in an environment that’d be comfortable for most vampires – I want the blinds drawn, lights off and to be on a couch with my feet up on the coffee table. If The Tonight Show with Jimmy Fallon is playing in the background, even better. That is when I get my best coding done.

However at work, I recently moved into a new space – Building 44 – and was initially freaked out that it was a completely open concept work space. I thought, “How am I going to get any work done with all these people around me and all these bright lights!?!?!?”

By the end of the first week in the open space I grew to love it. I noticed I was talking with my team rather than emailing. We are way more efficient, and this sounds corny, but we are way more connected and as a whole a stronger team. We all seem more engaged with each other and in tune with what each other is working on. Also, we all seem to love Jimmy Fallon – that helps too.

If you could pick only one company to work with, from any industry, who would it be and why?

This will indeed sound cheesy, but I would choose Microsoft. I don’t mind admitting (and in fact I’m still proud of it), but I’m a huge Microsoft fan boy. I still can’t believe I work here. I interviewed with Microsoft six times, interviewing about once a year. I stalked job boards and recruiters, following up frequently. When I learned that there was a job title named “technical evangelist,” I had a career goal to become one. When I got the job, I was over the moon. I enjoyed being an evangelist immensely, seeing the world and meeting community members who were just as excited (in many cases far more excited) than I am about Microsoft’s technological vision.

After 18 months as an evangelist I moved over to the Azure engineering team as a program manager in the Azure SDK team, and now I’m doing double-duty with SDK and Web Sites Tooling experiences in Visual Studio. I feel like I’m able to help map out our plans, products, and goals and to help the community, and that’s a rewarding exercise.

That sense of reward, along with the fact that Microsoft absolutely cares for its employees and prides itself on making good employees better than they’d ever expected they could be, makes it a wonderful place to work. The open source adoption and focus, that’s just icing on the cake!

However, if I had to leave Microsoft, I would say Appalachian State University (ASU) in Boone, North Carolina. I’ve always wanted to give back to the university that gave me so much. I don’t have a computer science background but discovered programming later in life. My relationships at ASU are what helped me get the career I wanted.

There is so much potential in a collegiate developer mind, and I’ve always loved education and have a respect for students. After being in this industry, I know what that students can provide 10-20 years from now. When I speak at universities, the whole experience is so exhilarating, especially talking with students. So I would love to work in a university setting, but right now, my passion is Microsoft and making it more open every day.

Learn more about Brady's work by following him on twitter (@bradygaster) or checking out his blog.