We aim to please…

29 July, 2007 (19:44) | General, .NET Tools, .NET Code Related

pigs

Have you ever gotten into a situation where your customers development team uses tools that you know full well are not best of breed, but you go along with it and use them for their project because…. well they are the customer and pay the bills. I have precisely such a case. The customers dev team requested that we use MS Enterprise Blocks for logging and exception handling. Primarily because thats what they have standardized on, and its easier for them to maintain this code if it contains the MS blocks.

Now normally we use Log4Net. Want to know why?

For starters its open source. And secondly its better built and faster.  Here is actually some empirical evidence how much faster it is. In this test it took Log4Net about 40ms to log 1000 messages while the Enterprise Library took a whopping 9500ms. That’s pretty incredible isn’t it.

There is an old saying. Don’t know where it comes from, but it goes something like this : ” Whose bread you eat - whose song you sing”. Meaning the customer is paying for it and if they like this tool we will implement it. Even if it is a bit of a pig and slow.

Of course there is plenty of discussion of the code and design quality presented by the EntLib.  Oren Eini set off a huge discussion in March 2007 when he called the Patterns and Practices group on the carpet. In spirit and meaning that wasn’t all too different from this post by PluralSight all the way back in 2003.

Face it, its very hard to turn a sows ear into a purse.

You know, I haven’t used any of their stuff since the original DAAB back in 2003 or thereabouts. Once I started to work with ORM’s and once there were some valid .NET OSS projects out there I never looked back.

Just for reference ( since I will need it in the near future ) here are a couple articles on configuring MS Blocks for Logging.

http://www.devx.com/dotnet/Article/31463
http://www.cubido.at/Blog/tabid/176/EntryID/33/Default.aspx

Write a comment