While at the MVP summit, I made sure to catch some sessions outside of my expertise.  While I’m a Visual C# MVP, I have interests that lie outside the language, and with the offering of sessions that pique my other interests, I figured I’d take advantage of that.  When I left my C# friends for a little, they were teasing me for leaving them.  To which I retorted:

To my C# MVP friends who were mocking me for leaving, you guys are just jealous you can’t handle things out of your expertise. 😛 #mvp11less than a minute ago via Birdsong for Windows Phone Favorite Retweet Reply

Paul Nielsen, a SQL MVP, replied:

@sadukie agreed! SQL Server + SQL Azure + C# + WPF + WCF = a great time and a broad experience @ #mvp11less than a minute ago via web Favorite Retweet Reply

This really got me thinking. As a lead developer, I find it to be my responsibility to not only understand my immediate specialty but to understand things that impact it and things that interact with it. By understanding everything it works with or relies on, I find myself to be a stronger, more efficient developer than most. Now maybe I have an architect’s mind, wanting to see the big picture and then develop appropriately once the big picture is in place. But at the same time, I find it very appropriate for developers to understand their environment in order to develop the proper application.

For example, by day, I’m a website/web application developer. However, I need to understand what servers will be hosting my sites and applications so that I develop for the right environment. It would be a waste of resources if I wrote a .NET 4.0 application that would run on a Windows Server 2000 server, since Windows Server 2000 caps at .NET 2.0. I also need to understand the webserver – in this case, IIS. It would be awful if I asked my IT guys (who are ultimately responsible for the servers) to set up IIS redirects for my site if it’s something hosted on IIS 7, since those redirects can be setup within web.config and without needing IT intervention. It also helps to know that my live environment may be a load balanced environment, as there are development concerns that can be addressed by the IT side. In the case of a load balanced environment with ASP.NET, if the affinity is not set to single, it’s possible to bounce between servers, which can cause problems with viewstates, AXDs, and other things in ASP.NET if precautions aren’t taken.

Catching the Sysinternals talk at the MVP summit was great. Tracking down malware can be likened to debugging code – you have to find the source of the problem and fix it. The thought process is similar, and in catching that session, I learned of more tools that I could potentially use to debug issues in an application.

Since I do database-driven websites and web applications, it would be to my advantage to know what to expect with what I’m focusing on database-wise. It was great that I did catch some database-related stuff as well.

I’m finding that expanding my horizons and looking beyond my expertise has been a great experience. I just hope that what I’ve learned will pay off in due time.