J2EE

This is what I wrote about an J2EE project I was involved in once:

Back then we had like seven layers to our application (DB, entity beans, session beans, business logic, xml, xsl, css), so in order to change parts of the application we had to change so many things in so many different places, it was a major pain. At times I felt like we had more layers than developers on that project. Some of these layers were very boring to write (beans) and we had no code generators at hand. Deployment was crazy and complicated and error-prone. Inheritance was used to override certain aspects of default classes we used, so understanding how the final object acted required you to understand the base system, the default class, your own class, and know exactly what was overridden and why. Reasoning about the system was terribly slow. ¹

¹