I would like to preface this post with the following disclaimer; I am not on the XNA team, nor have I been on the XNA team in almost two years. Do not mistake anything below for an “insider scoop” of anything because I do not know what their current plans are, nor do I know what their future plans are. Everything below relates to XNA version 1.0, and there are still folks who worked on later versions over in that organization. With that out of the way, I shall continue!
Shawn Hargreaves announced the other day he was leaving to move over to the Windows Phone team after six years working on XNA. I’m sure this isn’t a surprise to anyone who keeps even a rudimentary pulse on the XNA scene is subscribed to Shawn’s blog and has read it. However, for me it was a little bit bittersweet.
As the title of this post implies, I suppose it is inevitable. After all, as Shawn points out, he was working on XNA for over six years, and that’s a very long time to be doing one thing. However, with Shawn’s departure, from my recollection everyone that busted their asses to get the first version of XNA out the door has moved on from that team (not entirely true; there is still one person left in that organization who was there at the start of the XNA project, but he’s been on a different role now for quite a while).
The team that started XNA wasn’t very large to begin with, and we weren’t all “publicly popular” (such as Shawn, Kluch and myself), but the small group of us that were there from the start had a huge unknown challenge in front of us, not even sure if it would really work. We had a completely unrealistic release schedule (you want us done before the end of this year? right), were writing everything from scratch, and we had exactly zero customers.
I’m extremely proud of what we accomplished with that first release, and it was probably one of my favorite times at Microsoft. We almost felt like a bit of a startup within the company, and we were successful beyond our original ideas. By version two we had the concept of an “App Store” before Apple did (not to take anything away from Apple, there store is obviously more successful than XBLIG), and people were making money.
As often happens though, time goes on, new people are hired, other people leave. Inevitable. While I was there, we always prided ourselves on our ability to make good hires, so I’m sure the people that remain are top-notch, but it is still somewhat sad for me to look back and realize that everyone that made version one of XNA what it was has now moved on to other adventures in their career. I will always look back at those times fondly. Working with that group of people was a pleasure.
As for what line of code of mine that is executed the most, I can’t say actually since I had a hand in almost ever piece of the xna runtime. It’s impossible to run an XNA game without using some of my code, even now with me gone for a few years. In the runtime itself, it’s probably the graphics device creation still (even though that was changed in v4).. By now it could be the predicated tiling work or even the intro “XBLIG screen” that you see before every game. We should have collected metrics on this kind of stuff!