sfeldman.NET

.NET, code, personal thoughts

  • With Power Comes Responsibility

    In software like in a real life, not always everything can be extremely simple. One example I can think of right away is Inversion of Control container (IoC). In a simple application, it’s not a big deal, and normally achieved easily. The dependent component leverages some sort of Static Gateway container to resolve the dependencies based on contacts.

  • MIME Header - Content-Disposition

    I am trying to figure out something on MIME header, and just can’t understand who is standing behind the RFCs. Are they trying to read it on their own and realize if it makes sense?!

  • Wise Manager Words

    The task then is to refine the code base to better meet customer needs. If that is not clear, the programmers should not write a line of code. Every line of code costs money to write and more money to support. It is better for the developers to be surfing than writing code that won’t be needed. If they write code that ultimately is not used, I will be paying for that code for the life of the system, which is typically longer than my professional life. If they went surfing, they would have fun, and I would have a less expensive system and fewer headaches to maintain.

  • NHibernate SessionFactory Lesson

    Anyone who worked with NHibernate knows that SessionFactory is an expensive object, that better to be constructed once, cached and re-used to build lightweight and disposable NHibernate sessions. It’s always shows up as a warning in books (NHibernate in Action, page 35), WIKIs, blogs, etc.

  • Domain Object and Contracts – The End

    In my previous blog about domain objects and contracts for those, I have described the situation where the team was thinking in a different way than myself, and what we tried. I have never blogged back about the fact that the team got convinced that this is not a good practice, and long time ago we stopped doing that. Today I spotted a blog post from James Gregory where he names it properly “an anti-pattern”. That’s what it is. End of the story.