July 2008 Blog Posts
You get depressed that reality doesn't support rollback because you want a do over. What kind of unreliable system doesn't have transactional support?
When designing a system there is always the temptation to use the latest and greatest technologies. This is based on the (generally true) premise that new technologies are superior to older technologies. The implicit reasoning from here is that using a more advanced technology will result in a better solution. In practice however this does not always hold. As an example I recently purchased a second 24 inch monitor for my home system. I selected a Samsung 2493HM because it was the size and resolution I wanted and had decent reviews. One element of the reviews I do wish...
Consistency is a desirable property in a codebase due to the benefits in understandability and maintainability it provides. Application architecture assists here by providing a common template to which the system is constructed. Therefore the design of the architecture should be done in such a way that consistency may be effectively achieved. This does not mean that the benefits of consistency should imply that consistency must be enforced universally and in all cases. There are a number of cases where managed inconsistency brings greater benefit to the system. Some systems will have highly disparate elements where there is no...