mhinze.com

Matt Hinze, learning in public

Archive for July, 2008

Fluent NHibernate project

Some folks on the nh-users list (led by James Gregory) have moved Jeremy Miller’s Fluent NHibernate project to Google Code. There’s a lot of work to do, but we have a list going.  Should be an interesting project to watch (and to contribute)!

Linq to NHibernate in 10 minutes

If you are curious about Linq to NHibernate and want to quickly check it out, here is an easy way to do it. Check out a copy of the CodeCampServer source (svn).  CodeCampServer is easy to work with because it has good tests on an already-working NHibernate implementation. Check out a copy of NH Contrib [...]

After reviewing Rob Conery’s post, a few notes: Syntax (no <%=): <% Html.RenderAction<PersonComponentController>(c=>c.List()); %> The component does not share ViewData with the er, “calling view”.. You can use a View User Control (ascx) or a View Page (aspx). By default the component is browsable. You can turn this off using IgnoreRoute: routes.IgnoreRoute(“PersonComponent/{action}”); On the implicit [...]

Eilon was correct – they made it easier! It’s trivial to test TempData now. This is all that’s needed to port the example from his earlier post to Preview 4 (thanks Ben): [TestFixture] public class HomeControllerTests { [Test] public void IndexSavesUserIDToTempDataAndRedirects() { var homeController = new HomeController(); homeController.TempData = new TempDataDictionary(); var result = homeController.Index(); [...]

For months I have been suffering from long delays when I delete a file from solution explorer in Visual Studio.  Minutes… slow, dreadful minutes.   I thought it was Resharper’s fault or VisualSVN’s but nay.  It’s because I have a large recycle bin, which is fully scanned every time you delete a file.  After I emptied [...]

Dan North, in a recent article about DRY tests, says: [Tests] are the documentation narrative that will guide future programmers (including yourself when you come back to change this code in three months time and you’ve forgotten what it does). In this case, clarity of intent is found in the quality of the narrative, not [...]

Audit options with NHibernate

In this post I am talking about auditing for the business, not the technical infrastructure.  As an example story, users will want to see certain fields highlighted on a grid if that field has changed in the last week, and the info about the change (who, when, what) should be a tooltip for the cell. [...]

My boss’ boss’ boss

I had a one on one meeting with my boss’ boss’ boss today.  In the organizational chart he is a direct report to the CIO.  He was meeting with everyone reporting to our director to assess the state of our transition after a merger. As a disclaimer, this is a 55k employee, $11 bil. company. [...]

Looking back

Taking a moment to look back.  When I accepted my current job in January 2006 I was looking to grow up as a software developer. Since then I’ve learned a lot of things and these, for me and in no particular order, were the some of the most important. 1.  The strategy pattern and others [...]

Crucibles  A crucible is a “severe test” or a “trial” – something through which an idea is passed so that it may be refined, hardened by time, sharpened with experience, and clarified by intellect until it becomes acceptable for practice. A good idea has suffered through the crucibles of competition and community, emerged from it [...]