Home avatar

Thoughts and code

Pair-Programming Article

While reading blogs during today morning, I read an interesting one, which captures the way I feel about Pair-Programming. I have my opinion before (old posts), and it’s slightly updated since then, but at the end I still think it’s a great way and not just to develop.

TODOs are not forgotten

We are using Hudson as a build server, and one of the lasts steps that were taken is to mark a build as ‘unstable’ when we pass a certain number of TODO comments in our code (an arbitrary number). While I am not a 100% sold on a number, I think it’s a good way of insuring things are not just marked and forgotten. Actually, we are not even tracking TODOs, but BROKEN_WINDOW comments, as those are definitely bad. Failing on HACK is another possibility. Visualization plays a significant role in my case (interpretation of things based on visualization), and here how it looks (green is all good, yellow is all passed, but number of comments has exceeded the limit).

Gallio Warning Output

Today I was trying to figure out how to access output Gallio is using to render a warning message. According to this, the Assert.Warning was replaced by TestLog.Warning.WriteLine. But for some reason that is not doing the job. Has anyone encountered similar problem?

We run today into this problem, while trying to update our spec-based testing framework. We got the required details from with-in the base specification (test) leveraging TestContext.CurrentContext.LogWriter.Warnings, but with no success. Anyone, ideas?

NHibernate Profiler

Recently I had to update our domain model and it required some NHibernate profiling. I have installed trial version of NHibernate Profiler, and it rocked. The fact that it was not only able to show what was going on, but also give suggestions how to improve NHibernate usage just rocked (unlimited records returned).

I also loved straight, cut-the-bullshit communication with Oren, who has responded quickly (to the bug that I found). Worked for me, and we are going to purchase a few licenses.

Wix Product Version with Build Script

Our projects are deployed with MSIs. Each MSI file is appended with the product version number (regular staff – major, minor, build number, revision number).

While this is enough for deployment, in production, it is hard to determine what product version is installed without either searching for assemblies to see the version, or some other piece of evidence. Today I decided to leverage Wix to generate the Product Version number, based on our NAnt script.

MSMQ With Files Larger Than 10MB?

Update 2009-09-11: I was playing with the sample provided in two comments, and has run into issue with chunking binding. See thread: http://code.msdn.microsoft.com/msmqpluswcf/Thread/View.aspx?ThreadId=2265

Has anyone dealt with this issue before? We are running into a problem when our system has to use queues, but files can be more than 10MB.

I have googled around, and found a few things about MSMQ/T (BizTalk related/unrelated), but nothing concrete (example).

Has anyone had some production code with messages more than 4MB using MSMQ/T and can point to the right resources? Thank you.

Warning – Best Practices

According to the wikipedia definition, best practice is

…a technique, method, process, activity, incentive or reward that is believed to be more effective at delivering a particular outcome than any other technique, method, process, etc.

The word “believed”, in my opinion, plays an important role. What one believes in, is not necessarily shared by another person. And not only with faith, but with technologies as well. What one technology / platform / methodology will describe as good practice, another one can claim if not the opposite, then at least disagree on the stated.