ploeh blog

Mark Seemann's discontinued .NET blog.

Blog - About

About ploeh blog

Mark Seemann was a software development engineer working for Microsoft in Copenhagen, Denmark. This was his (professional) blog. Please visit the current ploeh blog instead.

All postings are provided "AS IS" with no warranties, and confer no rights. Any opinions expressed in this blog are solely those of the author and not official positions of Microsoft Corporation.

  • ploeh blog

    Fixture Setup With Installers

    • 9 Comments
    It's no secret that I prefer unit tests over integration tests. Whenever it's possible to replace an external resource dependency with a test double, I do that, but sometimes, you need to test the resource access component itself: If you have a data access...
  • ploeh blog

    TechEd Sessions Sample Code

    • 0 Comments
    Now that both of my TechEd sessions are over, I've had some request for the sample code that I demonstrated at both sessions. The sample code I used at the interactive talk on TDD is attached to this post. The code I demonstrated at my talk on manual...
  • ploeh blog

    What Do You Want To Discuss About TDD?

    • 0 Comments
    As previously announced , I'll be giving two talks at TechEd Developers in Barcelona next week. The second of these is a so-called Chalk Talk; an interactive session on TDD in real life. Since this talk is interactive, it will be up to the audience...
  • ploeh blog

    Running MSTest In An MTA

    • 14 Comments
    Writing deterministic, multi-threaded unit tests may not be your idea of a fun Saturday night, but with a little discipline and knowledge, it can be done, and it sure beats writing multi-dreaded code without the safety net provided by an automated test...
  • ploeh blog

    Speaking at TechEd Developers 2007

    • 7 Comments
    Again this year, I'll be presenting at TechEd Developers in Barcelona next month. This year, I'll be doing both a general session on mocks, as well an interactive session on TDD. You can read more on these sessions by using the conference's Session Search...
  • ploeh blog

    Race Troubleshooting Using The Console Output In VSTS

    • 4 Comments
    It must be my week of discovering the obvious . The other day I was troubleshooting a race condition in my code. I had a unit test that faithfully reproduced the error, but just looking at the code involved didn't produce any sudden insights into its...
  • ploeh blog

    Troubleshooting WCF In Production Environments

    • 11 Comments
    WCF is such a nice framework, and its diagnostics capabilities are really comprehensive. Really, I only have two (pseudo-)issues with diagnostics so far: Configuring diagnostics is pretty difficult to do (lots of XML editing involved) Reading...
  • ploeh blog

    CovariantCollection

    • 1 Comments
    One of the known limitations of .NET generics is the limited support for covariance. This is sometimes a challenge when it comes to collections. As an example, consider this simple abstract class: public abstract class MyClass { protected MyClass(...
  • ploeh blog

    Installing Event Sources For The Logging Application Block

    • 11 Comments
    One of the nice things about the Enterprise Library Logging Application Block (LAB) is that it's so darned configurable (like the other Enterprise Library Application Blocks). One of the benefits of this is that it makes it rather easy to unit test your...
  • ploeh blog

    Performance Counter Testing

    • 6 Comments
    If at all applicable, a well-written application should include one or more performance counters, which will enable operations staff (or maintainance developers) to monitor and troubleshoot the application. Since the goal of a performance counter is to...
  • ploeh blog

    Agile Proves Effective Once More

    • 1 Comments
    Christian , one of my old (and present) collegues, has just posted about his team's latest accomplishment , shipping six months ahead of time! I'm sure that the team consists of a bunch of very talented people, but I'd also venture a guess that their...
  • ploeh blog

    SQL Server On Vista Development Machines

    • 3 Comments
    As an enterprise developer, I've always had SQL Server on my laptop (which is my main development machine), and it's been quite some time since I got my first laptop (1999). For years, SQL Server has been an indispensable tool for enterprise development...
  • ploeh blog

    User Context

    • 1 Comments
    Besides logging, one of the most common types of ambient context is the user. Who is the user? Was the user authenticated? What is the user allowed to do? Since being able to answer these questions are such common requirements in software development...
  • ploeh blog

    MSDN Magazine Article on Test Doubles

    • 3 Comments
    My latest MSDN Magazine article - this time on test doubles - is now available on the MSDN Magazine site, as well as in the printed version of the September 2007 issue. Thanks to Ayende for allowing me use Rhino Mocks for some of the examples.
  • ploeh blog

    Call Contexts vs. ASP.NET

    • 1 Comments
    In my former post on Ambient Contexts , I described how you can use CallContext or Thread Local Storage (TLS) to store a context that is specific to the current context of a call. As it turns out, ASP.NET uses a threading model that disables this approach...
  • ploeh blog

    Ambient Context

    • 11 Comments
    These days, I'm becoming increasingly enamored with the idea of implementing cross-cutting concerns using Thread Local Storage (TLS) or the current call context. For the most typical aspects of software, such as security and logging, the .NET framework...
  • ploeh blog

    Imperative Configuration

    • 7 Comments
    How can I unit test my application with different configuration settings? A couple of months back, a reader asked me this question, and while I provided an immediate response via email, I think that the question deserves a post of its own. In .NET...
  • ploeh blog

    cleantestresults XML Snippet

    • 0 Comments
    About a year ago, I wrote about an automated way to clean up the TestResults folder created by VSTS. While I still use this approach methodically, I've begun to find it tedious to find my original post to copy and paste the XML into the project file....
  • ploeh blog

    Using Decorators For Inter-Layer Communication

    • 2 Comments
    While I hope that my previous post made it clear that Data Transfer Objects are not my first choice for transferring complex data between layers, I still owe my faithful reader(s) an outline of a better alternative. One option is to define an abstraction...
  • ploeh blog

    What's An Entity, Anyway?

    • 5 Comments
    These days, I seem to be encountering a lot of entities . Not in the sense of non-corporeal beings as usually depicted in certain science fiction TV shows, but in the sense of data structures. Sometimes, they are called business entities . Although...
  • ploeh blog

    Speaking In June

    • 0 Comments
    At the upcoming Softwareudvikling på tværs conference, I'll be presenting a session on TOOD on the second day (June 14). The session will be held in Danish.
  • ploeh blog

    State Your Dependency Intent

    • 8 Comments
    There are several different ways to implement Dependency Injection (DI), and Martin Fowler describes four of them in his excellent article on IoC/DI . In this article, the first three approaches (Constructor, Property, and Interface Injection) are mainly...
  • ploeh blog

    Code As Dependency Configuration

    • 13 Comments
    In his article on Inversion of Control and Dependency Injection , Martin Fowler has a quite interesting section towards the end where he talks about how to configure loosely coupled systems. One of his points is that in some cases, it makes more sense...
  • ploeh blog

    Reasons For Isolation

    • 5 Comments
    Object-oriented applications above some level of complexity are almost always modelled as a layered architecture. While the typical three-layer architecture remains the most widely known, n-layer architecture is also often utilized. Here's a typical design...
  • ploeh blog

    Authorizing Services

    • 4 Comments
    If you look at the default authorization model for WCF, you will notice that it expects you to implement centralized authorization. While centralized and pluggable authentication makes a lot of sense to me, that's not the case with authorization. Does...
Page 3 of 6 (132 items) 12345»