All modern software development methodologies are focused on increasing the feedback and taking advantage of it. One of the fundamental assumptions is that trying something out (getting feedback) is more valuable than the cost of doing it wrong. This works fairly well if we are getting quick and reliable feedback. However, does this equation still apply if we are not getting timely/quality feedback?
It is interesting how the standards that are obvious in one context/language can be so easily disposed of when working in some other context/language.
In addition to having demo at the end of sprint some of our teams have demos also in the middle of the sprint. Continue reading
When it comes to automating database migrations then there seem to be two main approaches. First, doing it outside of application by adding database migration into deployment script. Second, is making database upgrade part of application startup logic. Continue reading
I think that team’s successfulness is directly correlated to the ability of using team’s knowledge. This means taking the most out of already existing knowledge and skills of each team member as well as making it possible to accumulate new knowledge and skills.
One of the typical things one often needs is uniqueness validation across Entities. For example making sure that each user account has unique username. Implementing this check is somewhat complicated in JPA/Hibernate because they will send pending changes in current Unit of Work (EntityManager, Session) to database before executing any queries against same Entity.