Archives

Archives / 2009 / April
  • db4o

    I was exposed to Domain-Driven Design not that much time ago. Prior to that, I was struggling with the object-relational impedance mismatch while developing objects based applications. First attempt to get relational database close to the applications I was writing was an uneducated experiment to "wrap" the data into objects. The reason I think of this now as "uneducated" decision, is because I knew nothing about proper object relational mappers, neither had sufficient knowledge about patterns such as Identity, Unit of Work, Repository, etc.

  • State Pattern with FluentNHibernate

    FluentNHibernate is an amazingly nice DSL to use for quick NHibernate mapping implementation. Today I had to refactor some of the code we did at work, in order to persist a state of an object. The original code was implemented using State pattern, which allows simple division of responsibility and easy decision making at each given step. I have decided to create a simple example of State pattern persisted with FluentNHibernate in order to demonstrate how powerful it is and what kind of freedom it can give to developers.

  • Sick of Relational Databases

    I have started to read a new book about OODB. The reason I decided to get the book and go through it is because I am SICK of the traditional RDBMS and the way it forces us to go through loops and hoops to create domain driven applications.

  • Hudson – CI Engine (part 2)

    In my previous blog about Hudson I was excited as a user how cool and great this CI engine was. This week I had to quickly setup a project and get it going on our build server. Boy oh boy, that was great task. Easy, clean, and fast. You should definitely check it out.

  • Two Good XML Tools

    I was working a lot lately with regular expressions and XPath. As usual in scenario like this, you want to have a good tool to assist your tests writing. For regular expressions I used Rad Software Regular Expression Designer that does a good job of matching and replacements. For XPath, I used SketchPath 2.0 which is really friendly and great to use. Both are free for usage.

  • DbLinq

    Today I had to look into persisting some of the data from the new system we are building into existing legacy system for backwards compatibility until the old system can retired (data that is required for the old applications/services that is a product of the new system). The database was MySql. The new system is leveraging FluentNHibernate to do the Domain objects persistence. The legacy system has no relational tables, and it’s just a matter of inserting information into the legacy DB. Since FluentNHibernate was not a good fit for the job, I looked into leveraging raw ADO.NET to do the simple job. And I couldn’t. Raw ADO.NET feels ugly after you get used to an ORM. So I thought about alternative, Linq to SQL. Well, Linq to MySql to be precise. I found DbLinq project which I highly recommend if you want Linq to any non MS SQL database (Oracle, MySql, SqlLite, Ingres, etc.)

  • Going Towards the End

    Our current project is moving towards the final phase. This is going to be the 1st release, and I am quiet excited to see how team work is transforming a bunch of stickies and tests into a real system. This is how our whiteboard looks like (done-done part was not captured, but it’s definitely there and has a significant amount) and tests result trend based on builds Hudson CI is running.