Category: Dev

SharePoint Design Patterns: Entry 2

SharePoint Design Patterns: Entry 2

In the previous entry, we explored how to clean up our interaction with instances of SPSite, SPWeb, and SPList objects. Logically, the next scenario that we’d want to cover is working with the SPListItem that we get back from the...

Design Patterns For SharePoint : Entry 1

Design Patterns For SharePoint : Entry 1

One thing that I’ve discovered is that it’s easy to write sloppy, hard to read code when SharePoint is involved. A lot of it may be due to the quick-and-dirty code samples out on the ‘Net and a general lack...

Mercurial vs. SVN

Mercurial vs. SVN

As I’ve been starting on a new project recently, I’ve been delving into Mercurial (hg) as an alternative to Subversion (svn). I’ve been using svn for about 3 years now, and – for the most part – it has been...

Discovering System.Linq.Expressions

Discovering System.Linq.Expressions

I’m officially a fan: System.Linq.Expressions is one of the coolest namespaces. I’ve been working on a simple workflow engine as an example codebase for exploring different aspects of object oriented programming (inheritance, encapsulation, polymorphism, design patterns, etc.) for training purposes....

The Follies of C# 4.0

The Follies of C# 4.0

Nikhil Kothari has been blogging furiously about Visual Studio 2010 and C# 4.0.  One of his posts covering the dynamic programming features in C# 4.0 raised some interesting discussion in the comments. Some like Francois Ward: I heavily dislike this....

5 Cooks

5 Cooks

I recently finished up Eric Brechner’s I.M. Wright’s Hard Code. One of the more interesting aspects of development and project management that he brings up is the concept of working depth first as opposed to breadth first.  Too often, I...

The Sandbox

The Sandbox

One mistake that I see time and time again, even from experienced developers, is trying to model new ideas, new techniques, and/or new designs directly into a working codebase. In my own experience, I’ve come to find this to be...