Visual Studio Modeling Projects allow you to quickly generate useful documentation for your design: class diagrams, sequence diagrams, dependency diagrams. All are very nice to look at and useful for getting to know the system. An additional, somewhat hidden feature of Modeling Projects is the ability to enforce architecture rules. In this post I’ll go…
Read more…
As a “joint venture” (over a few drinks) with our friend from Hudl, Kyle Deterding, we decided to use the Halo-style matchmaking algorithm to predict the NCAA tournament. The algorithm uses Microsoft Reasearch’s Infer.NET framework to handle the math and statistics that go into these models. Kyle wrote a great introduction post explaining it at…
Read more…
Do you develop using your production or staging SQL server? If so, please don’t. If not, great! How do you keep track of which Web.Config is pushed to your server? VS2010 has an improved Web Deploy process that allows you to use config transforms to adjust your Web.Config files based on the build configuration. Scott…
Read more…
Controller testing in the model-view-controller (MVC) is simple. ?The level of difficulty is increased with the use of Session in the controller, but only slightly. In this post I show how to simply test controllers which use Session. Let’s try testing this controller method: The following code (in a test project) will throw a null…
Read more…
By far my favorite feature of .NET reflection is the ability to easily implement custom plugin libraries. Whenever you have a nice generic business class that suddenly needs custom functionality for a particular scenario or customer, you usually have three choices: Implement the custom code in the library itself. This is the quick and dirty…
Read more…
Whew! We finally have our website and blog in place. Now we can get down to business. Early on, we knew we wanted to share our experience and thoughts about software engineering, development tips/tricks, and entrepreneurship. We thought it only made sense that we set up a blog so we could regularly share our thoughts…
Read more…