The Five Characteristics of a Good Domain Model

I was trying to figure out a good definition of a domain model for this blog entry. All of my efforts led in to a somewhat clumsy explanation. However, I was able to find a good definition of a domain model from Wikipedia: A domain model in problem solving and software engineering can be thought […] Read more

There Must Be Only One

When I am having trouble with a product or a service, I will contact customer support and expect that my problem is taken care of. Businesses, who truly care about their customers, ensures that the customer gets an answer right away or the customer support will contact the customer after they have figured out the […] Read more

Creating Profile Specific Configuration Files With Maven

When we are writing software that is deployed to different environments, we often have to create different configuration files for each environment. If we are using Maven, we can do this by using build profiles. This blog post describes how we can create a build script that uses different configuration for development, testing, and production […] Read more

Creating a Runnable Binary Distribution With Maven Assembly Plugin

There are many ways that we can use when we want to share our applications with other people. For example, we can create a binary distribution that can be downloaded from our website. This blog post describes how we can create a runnable binary distribution by using the Maven Assembly Plugin. The requirements of our […] Read more

The Five Faults of a Software Engineer

I have been lately reading The Art of War by Sun Tzu during my buss ride to work. One Chapter of the book described the five faults, which may effect to a general. I realized instantly that the text could also be applied to software engineers. Without further introduction, I will give you the five […] Read more