Archive for the ‘Web/Tech’ Category

The Pair Programming TDD Game

16 Apr

Came across The Pair Programming TDD Game today when checking up on CodeBetter reading a post by Palermo.  It looks like it may be a good way to get some interaction going with pair programming. 

A lot of times when we try pair programming only one person has the keyboard making it easy for the other person to get bored.  The other benefit as mentioned is that the tests are more likely to be kept at a manageable size.


Jeremy D. Miller — Bloom’s Taxonomy and Design Patterns

15 Apr

Jeremy has a post about understanding design patterns.  This post doesn’t have anything new for design patterns, but does have important content about understanding.  Often when learning a new technology or method we discover just enough to get started using it. 

That’s a normal step in learning, but it’s easy to only pursue topics this far.  The initial information is easy to find.  Getting a hello world example doesn’t take much effort either.  There’s usually a quick start that lets you make something slightly more complicated without any real understanding.

The key is to make a conscious decision whether the topic is worth focusing on after you have done this.  If so then be prepared to make a commitment to learning.  Look through the information that isn’t easy to decipher.  Think of a non-trivial task and implement this new idea.  Find other people that have traveled this path and talk to them.  Discuss with others that haven’t done this what you have learned.  All of this will accelerate your understanding of the subject.

No Comments

Posted in Web/Tech


Looming Presentation

12 Apr

Well I am going to be giving a couple of presentations for the OKC .NET user group this month.  I’ll be discussing LLBLGen, a great ORMapper from Solutions Design in the Netherlands.  It is the only reason that many of our projects have been successful.  That’s great and worthy of enthusiasm, but getting in front of 40+ developers and explaining why this is so great is somewhat intimidating.  What if they don’t think so, what if they say "so, I already do something better"?

Along these lines I’ve been interested in learning about NHibernate more and more lately.  I’ve been reading and attempting to practice a more Test Driven & Domain Driven style and many of these people use NHibernate.  What if I get up and everyone goes that’s great, but NHibernate does this better.  Well I’m pretty comfortable so far with my arguments that LLBLGen deserves a shot and with some groups will be much better than many other systems.

There seems to be two subtle, but important differences between the camps.  Domain Driven people want to think of the domain as an isolated system free of dependencies to the database.  They may not have the ability to change the database and must work around a schema that doesn’t match their desired application well.  They need something that can map these two disparate systems and many are happy with how NHibernate does this for them.

The feeling I have is that with LLBLGen along with the ability to control the database completely was able to save many many hours of development by planning the DB for the application.  Many of the tables are used to map directly to objects.  New features have been introduced that help this type of design be a little more flexible now.  Inheritance allows us to define tables as base types and have subtypes that inherit fields from these base tables.  Projections have been added recently that will take entity objects that were fetched from the DB and map them to any object.

My job now becomes come up with a way to present LLBLGen that makes it look like it does it’s job well.  I’ll have to make sure that people understand the views of the software creators.  How they think a database should be built and the rewards that you can reap if you follow their pattern.  I know it has been very rewarding, now I need to let everyone else know.