Brian Keller

Director of ALM Evangelism for Microsoft

June, 2005

Posts
  • Brian Keller

    How Bungie built Bungie.net

    • 0 Comments

    This is a great article detailing how Bungie built Bungie.net using the .NET Framework. Bungie.net is your one-stop shop to find out all the latest Halo 2 news, and of course to check your stats! Check it out: Bungie.net Technical Case Study

  • Brian Keller

    Heroic Adventure: Really cool RPG written in Visual Basic!

    • 3 Comments

    *3:49pm Edit to fix broken link.

    Chris Williams wrote an article talking about how he manages character inventory for his Visual Basic .NET-based RPG, Heroic Adventure. Check out the article here: http://geekswithblogs.net/cwilliams/articles/40854.aspx

    Heroic Adventure looks really cool - I was a huge NetHack fan back in the day, and Heroic Adventure is bringing back a lot of great memories. I'm at TechEd this week, so I won't have much time to play, but this will give me something fun to do on the plane.

  • Brian Keller

    Old video game ads

    • 0 Comments

    These are classic! Thanks to Major Nelson for the post. I can still remember getting my first copy of Nintendo Power. Up, up, down, down, left, right, left, right, A, B, Select, Start!

    Anyway - check out the ads here.

  • Brian Keller

    TechEd 2005: Paul Flessner Day 2 Keynote Demo (Visual Studio 2005)

    • 3 Comments

    I had the pleasure of giving a Visual Studio 2005 demo for Paul Flessner's Day 2 Keynote here at TechEd this week. This was my first time giving a keynote demo, and it's hard to imagine the amount of work which goes into an exec-level keynote before you do one. But now that it's over it was an extremely fun and exciting 10 minutes for me to be in front of ~8000 people! In case you couldn't make it, here's a recap.

    I started by showing a Windows Forms application I built with Visual Studio 2005 to do some rich analysis of the RFID data we're collecting at TechEd. At TechEd this year we have RFID readers at various spots around the convention center, and attendees receive an RFID tag at registration. Don't worry, these tags are completely anonymous and are randomly distributed during the registration process, but just by walking around TechEd this technology can help us gather aggregate data to improve TechEd and other events in the future. For example, I showed a graph with the number of attendees vs. proctors in the Hands-on Labs area, and in the future we will be able to do things like send alerts to staffers in other parts of the convention center to let them know when we need extra help in certain areas. We also performed what I believe is the world's first "RFID-based raffle" by raffling off 5 Creative Portable Media Centers to people with tags we detected in the keynote hall that morning. I should point out that the RFID platform we're using at TechEd is actually based on an early version of the technology we're building to help Microsoft .NET developers seamlessly integrate RFID intelligence right into their applications.

    I then informed Paul that a critical piece of hardware we need for his demo wasn't there yet, but we had an RFID tag on it and RFID readers back stage - SQL Server 2005 would be aware of the hardware arriving once the RFID readers picked it up, but we wanted a real-time alert in our applications. So we added that on the fly by using SQL Server 2005's new Service Broker (which gives us an asynchronous programming model right in the database). Once the Service Broker processes our message, it activates a Stored Procedure which sends the alert back to our client application. This Stored Procedure was written entirely in Visual Basic, which shows how SQL Server 2005 can host the Common Language Runtime and give me full access to the .NET Framework and a language I already know - in this case, Visual Basic - for writing my database logic. (That's great for me, since my T-SQL is a little shaky <g>)

    The critical piece of hardware we were waiting on was none other than The Finalizer! Weighing in at about 120 lbs, The Finalizer is a BattleBot which runs on the .NET Compact Framework and packs a punch with a spinning saw blade and razor-sharp axe. It was a lot of fun working with The Finalizer, although you should see the rider he required for his dressing rooms - something about a bowl full of green M&M's and a half-dozen bottles of WD-40. Quite the prima donna... <g>

    An assorted list of other features I showed includes:
    - Some of the new Windows Forms controls, such as MenuStrip and DataGridView, we are shipping with Visual Studio 2005. I showed how these help you build applications which resemble Microsoft Office, Microsoft Money, and other applications your users are already likely to be familiar with.
    Smart Tags - which are a new feature in Visual Studio 2005 that gives you quick access to common tasks you might want to perform on a UI element.
    - Code Snippets - which give you hundreds of pre-written blocks of code for performing all sorts of tasks. Your Code Snippets library can also be easily extended with your own code, and you can share this with your team to help enforce best practices.
    - Visual Basic's new AutoCorrect feature - which brings Microsoft Word's "spell check" paradigm right into your code editor. It not only tells you that you have an error, but it will even try to suggest a fix. Very cool!

    The other great thing about the keynote was getting to meet Samantha Bee, from the Daily Show. She's very nice and cool to work with; and unlike the BattleBot, she didn't have a monstrous ego. :-)

    While you're here, check out some of the cool Podcasts of TechEd 2005. Here are a few related to this keynote:

    Enjoy the rest of TechEd 2005!

  • Brian Keller

    Video podcasting has changed the way I get information

    • 2 Comments

    I'm hooked on video podcasting. I must admit that when I heard of audio podcasting for the first time it seemed cool, but it's not something which caused me to change my lifestyle. But last week at TechEd when the Podcast crew was running around filming various TechEd happenings I decided to give it a try. I was even more motivated when they started filming me for videos; now I was my own test subject. <g> (see my last blog entry for links to my videos - scroll to the bottom)

    Based on some recommendations, I installed iPodder and added the TechEd Podcast RSS feed. (If you want to do this yourself, see the instructions here). iPodder is a good aggregator and will go out and fetch all of these videos and download them for you in the background. You can then launch the videos straight from iPodder, or use the WMP playlist that gets auto-generated for you. iPodder still leaves a bit to be desired, though, and I hope it will be updated soon (or if I ever find spare time I'll end up writing my own aggregator customized for my workstyle). Here is my iPodder wish list:

    • Allow me to sort by clicking on the grid column headers. I'll go so far as to say that this is "expected behavior" nowadays since so many applications support it. It would be nice to sort based on video release date, size (to figure out which videos you want to clean out quickly), and other columns.
    • Either integrate more tightly with Windows Media Player, or bring media playing capabilities right into iPodder. Here's why: If you start subscribing to video podcasts you'll quickly find the need to clean up videos when you're done watching them unless you have some insanely huge hard drive (the Channel9.msdn.com feed I'm subscribed to has TONS of great content and quickly filled up with about 3.5GB of videos!). Currently the cleanup is a two-step process; you watch a video in Windows Media Player, then you go to iPodder's "Cleanup" tab and select the videos you want to delete. This is "ok", but it would be nicer to have a UI within Windows Media Player that allowed me to delete videos as I watched them, keep track of which videos I've watched and which ones I haven't, etc.
    • Integrate with Windows Media Encoder to allow me to automatically convert videos I receive into a lower fidelity to save disk space. It would be even better if I could specify this on a stream-by-stream basis; in the future I can imagine having a sports reel podcast feed which should be in hi-fidelity, but for my technical interview feeds I can live with a lower quality most of the time.

    I have some other new features I'd love to see but those are the big ones for now. Now I've got to get back to watching my 3.5GB of Channel9 videos... :-)

Page 1 of 1 (5 items)