Team Interview: Stephen Styrchak

For today’s team member interview, I am very happy to give you guys Stephen Styrchak! When it comes to Visual Studio, no one on the team knows half as much as Stephen does. I mean, this dude REALLY knows Visual Studio inside out. I asked Stephen if he would agree to being interviewed for my series, he very kindly agreed and got back to me with the answers pretty quickly. I hope you all enjoy reading the interview as much as I did! Without futher ado: I give you Stephen Styrchak!

Who are you and what do you do at XNA?

My name is Stephen Styrchak, and I’m an XNA Game Studio developer. I try to make the process of game development easier.

What did you work on before joining XNA?

I’ve worked at Microsoft for 8 out of the last 9 years, working on various developer tools (the 1 other year I was back in Canada finishing school). I’ve worked on compilers, debuggers, script engines, script hosts, code generators, visual designers, project systems, and both sides of developer tools extensibility – customizing and making things customizable.

Basically, I’ve been building programs that let other people more easily build programs, customize existing programs, or make their own programs customizable.

How did you join the XNA team? Tell the story!

Toward the end of the Visual Studio 2005 development cycle, a friend of mine on the XNA team, Christina Storm, called me up and asked me to talk to Frank Savage about a team he was assembling to work on a hush-hush project. I thought, “Christina Storm? Frank Savage? This must be the secret Microsoft league of American Gladiators!” So I put on my Spandex tights and here I am!

What features did you work on for XNA 1.0 and 2.0?

“XNA” is not a product… You must mean Game Studio! :-P

For XGSE 1.0, I worked on parts of the XNA Game Launcher on Xbox 360, and parts of the project system in Visual C# Express. Mostly, though, I worked on everything in between (build, deploy, remote debugging, etc).

For XGS 2.0, I redesigned the project system to simplify a number of development scenarios that were difficult in 1.0, and laid the groundwork for some cool new things in the future. Content projects, Content Pipeline improvements, and cross-platform development were the big ticket items. The last was adding extensibility for some new things on the way.

What were some of the problems faced when developing your feature?

I really wanted to have XGS 2.0 support VS 2008. Joe and I fought hard for it, but it wasn’t in the cards. After all is said and done, I think we (as a team) made the right choice at the time. Other than that, the two biggest problems I had to deal with were: 1) not enough time, and 2) not enough people.

In XNA CGP (Community Game Platform), there’s like fifteen people – total – and everybody is booked for every minute. The only way to put more people on one feature is to cut another.

Because of the restrictions, I have to be careful to design features that can be implemented incrementally. We never have enough resources to deliver everything we want; usually that means doing fewer features, but sometimes it means doing partial features. As an example, today you can only have one nested content project. You should be able to have as many as you like, and re-use them in other game projects. You should be able to download starter kits for content and add them to your existing projects! That was the idea behind the design, but we didn’t have enough time to do it all. The functionality in 2.0 is pretty close to what you had in 1.0, but it’s halfway to something a lot more interesting!

Moving from a giant team (in Developers Division - aka DevDiv) to a small team (XNA CGP) feels like when I first moved out of my parents’ house. Nothing is free. Suddenly I am vividly aware of costs, and I have to choose carefully the things I want because I most certainly cannot afford them all.

What’s your favorite bit of XNA, and why?

I really enjoy seeing the cool games that people have made. When I was a kid, I started programming because I wanted to make my own video games. Nowadays, I don’t make games, but I think it’s cool that XNA is providing the opportunity to others to do it.

What is your favorite Xbox game?

I really enjoyed Oblivion. I definitely spent the most hours playing that game (literally hundreds of hours). LEGO Star Wars 2 was loads of fun, and I thought BioShock was terrific (even though I usually don’t like FPS games).

I’m going to say BioShock, since I finished it most recently. It had an awesome style and compelling storyline.

Share some tips and tricks for using XNA

I’ve just started sharing tips through my blog. I’m still trying to get my head around the idea of blogging. The problem for me is that Game Studio users want to read about making games, and I know less about that than they do. I know about making tools to make games.

Last words?

People usually don’t think about their tools unless they fail or reach their limitations. I think the most limiting factor today is complexity. It’s too hard for people to get the most out of their tools, so they feel more limited than they are. That’s something for me to work on. Eventually, when I do things right, nobody will know I did anything at all.

Interview Comments

I just wanted to take a minute to thank Stephen for answering all my questions. If you guys have any other questions you want to ask him, go ahead and I am sure he’ll answer them pretty quickly.

Thanks for reading! I'd love to hear your thoughts, feel free to leave a comment below. Don't forget to subscribe to my RSS Feed!

2 Responses to “Team Interview: Stephen Styrchak”

  1. KaBaL Says:

    Another well met interview, and I even walked away with more knowledge after reading some of the entries on Stephen’s blog. Keep it up!

  2. jbriguet Says:

    Well, another awesome interview. Keep up the good work !

Leave a Reply

The page's WebCounter count says that you are visitor number Visitor Counter by Digits
FireStats icon Powered by FireStats