Open Source Stories: Josh, Software Development Engineer @ Microsoft

Microsoft + Open Source
Open at Microsoft
Published in
5 min readMay 11, 2016
Courtesy of Josh Goldberg

Josh Goldberg, a Software Development Engineer on Office Sway, talks about TypeScript, FullScreenMario and beautiful code.

What are you currently working on in the Office Sway team?
We have a pretty large web application — it’s all written in TypeScript and works in a browser as well as native apps on Windows and iOS. It’s a relatively new application, but we recently invested more to start making it run smoother and have better performance. So I’m part of a team that investigates where we could do better and where we’re going wrong to try and fix it. In addition, I’m also very passionate about TypeScript, the web and beautiful code, so part of why they brought me on was to improve the team’s coding and add in tools like code analysis and linting to make the codebase look better.

Did you use TypeScript before coming to Microsoft?
Yes — quite a lot. My first big personal project — which was also my first open source project — was something called FullScreenMario. This was a JavaScript remake of the original Super Mario Bros which worked within the web browser in full-screen and had the original levels, level editor and map editor. As I was developing FullScreenMario, I experienced the same issues that many people go through writing JavaScript… that after the first few dozen lines of code, it is horrible to look at and needs structure. So I used TypeScript to add structure and TSLint — which is code linting to make the code stay organized— and pretty much fell in love with the language ever since. It was amazing to me that Microsoft had made this beautiful superset of JavaScript and instead of locking it down, they open sourced it, went for community involvement and worked with so many other people like Google and the Angular team have to make it the best product it can be.

Is TypeScript the reason you came to Microsoft?
Yes — partially. Microsoft as a whole has become better at its reputation. It makes a lot of great and amazing stuff, has a lot of brilliant people working here and I wanted to be both part of the company and also part of the push to make Microsoft even more of a player in open source’s modern practices.

Let’s switch gears to FullScreenMario. It got a lot of traction, didn’t it?
It was on a few places. I did a Reddit IAmA and it was also featured on Boing Boing, Gamasutra, CNET and others. I think Time also had a piece on it.

Was there an exact moment in time when you realized you wanted to build FullScreenMario?
I’ve been wanting to do it for a while. Back in college, before I started this, I was very new to programming. I had done it in high school a bit and was struggling with classes, so I wanted to do some sort of project to really teach myself how to be a programmer — a problem that a lot of people face. The imposter syndrome is really a powerful thing, where you look at all of these great hackers around you, and there’s always that one kid in class who knows every answer and you feel like you don’t know as much. So I felt like I should do something to get me going. My friend and I started joking around about how cool it would be if you could play Mario in the browser… and this sounded like a good idea to me.

What initially got you interested in open source?
It was two stages for me. The first was when I wanted to use Git and didn’t really know much else about open source. I just wanted a good system with good version control. So I started using GitHub to host my projects. It was nice — it was a little like Facebook where you could show off or look at other people’s projects. There was also this program at Rensselaer Polytechnic Institute, my alma mater, called Rensselaer Center for Open Source (RCOS), which is an independent study you can take for a semester. You either get paid or receive four computer science credits. As part of the program, you’d work on an open source project, which is a fantastic opportunity. I chose to first do a web app and then a high school hacking site where I wrote lessons for kids. I got class credit for writing open source. And part of the program is that they show you how to use Git. They give you a mentor, they make sure that you understand what you’re doing, that you write blog posts — it’s a really fantastic way to introduce yourself and get introduced to the open source community, which is why I now have mentees in it.

How is the open source community at Microsoft?
I think it’s headed in a fantastic direction, though it’s not where it should be yet. I think that Microsoft as a company does amazing things with open source. Putting Ubuntu on Windows, open sourcing a bajillion parts of .NET and .NET itself. As a company, we are one of the top open source leaders of the world. But as individuals, the percentage of people who don’t understand open source is still large. It’s falling — we’re educating people and we’re really emphasizing that you should be using open source if and when appropriate. And part of that is this massive culture change where we’re taking a company that used to be boxed-in and very self-centered nd turning into an open player. I think there is some hesitancy. But with things like OneWeek and The Garage itself, the direction we’re headed in is positive and within a decade, I’m sure the company will be significantly more amazing than it already is.

“The direction we’re headed in is positive and within a decade, I’m sure the company will be significantly more amazing than it already is.”

Quick Bytes
Favorite Coding Environment & Tools: Two monitors — one with Visual Studio Code open, the other with Grunt running some process

Favorite Late-Night Coding Snack: Kahlua and pancakes

Favorite Swag: Microsoft Intern Hoodie!

Role Model: My dad — who is a mathematician — and Elon Musk because he has a great world view

--

--