Mar 282011

I’ve been hearing a lot lately about how HTML5 is going to kill Silverlight. I hear that Microsoft has admitted that it is going with HTML5 in favor of Silverlight. And I hear that Silverlight is a doomed technology.

Here’s the problem: this is all untrue. Microsoft has not said anything of the sort, and is in fact investing quite a bit of resources in advancing the technology. Secondly, the road to HTML5 is far from smooth.

In this post I hope to examine the current state of HTML5 and Silverlight, the facts around Microsoft’s position with both of them, and offer some opinions on where things are going. Continue reading »

Mar 202011

This is part two in a series of articles on .NET architecture. You can start here for the introduction and table of contents. This post will focus on the overarching principles I’ve developed when tackling application architecture. The focus of this post is not on individual technologies (except when used as examples), but on general rules of thumb that I use to help guide me when making architectural decisions.

I consider these to be the axioms of my architectural philosophy. And like axioms in philosophy, if you disagree with any of these foundational principles, you will most likely disagree with a lot of the conclusions I draw based on them. But that’s okay – no matter what principles you hold, someone will always disagree. :-) Continue reading »

Mar 202011

About a year ago, through a series of cascading events, I found myself in the position of being the only application architect for the .NET portfolio of a medium sized development shop. Even before that happened, I had read a good deal about architecture, .NET technologies, coding best practices, TDD, design patterns, etc. But it is a bit of a shock to move from reading about all of those things to deciding how to apply them in a practical way. Of course as a developer you have a chance to apply all of that knowledge to whatever code you are working on, and you can influence the rest of the team. But as an architect I found I suddenly had to have a well-defined position on a lot more of these topics, and, if at all possible, that position had to be right. Continue reading »

 Posted by at 2:22 PM
Mar 012011

I am currently working on doing some integration between ASP.NET and Sharepoint.  The Sharepoint site I’m going against is hosted by a third party, and I couldn’t find an obvious way to figure out what version of Sharepoint I was actually working with.  I was praying for SP 2010 because it has a built in OData endpoint that makes things a lot easier to use.  The OData endpoint didn’t seem to be working (a post for a different time), but I still wanted to verify what version of SP I was working with, so I didn’t look like an idiot when contacting the host for support.

After some research, it turns out that Sharepoint returns a response header with the Sharepoint version.  So, using my trusty Firebug, I went to the site’s home page, and in the Net tab of Firebug, under the Home.aspx entry, there was a response header MicrosoftSharePointTeamServices with a value of  Looking at this post, this is indeed the version that corresponds with Sharepoint 2010 RTM.  Good news.  Now if I only I could get that OData endpoint working…