Java annotations feel like sticky notes you can attach to code without changing what the method or class does. What are Java annotations They are metadata baked right into the source. Think of @Override, @Deprecated, or the JUnit 4 @Test you have likely seen this week. The compiler and tools…
Category: Software Engineering
Comprehensive insights into building, architecting, and managing software systems. From code craftsmanship to team dynamics, explore the technical and organizational aspects of software development.
Clustering on JBoss: Session and State
Clustering on JBoss is not a magic lever you flip and walk away. It is a bundle of choices about session and state that either keep your app snappy or melt your heap. I have been wrangling JBoss 4.2 with Apache out front and the story is repeatable enough to…
Data Sources and Subreports: Keeping Performance in Check
Subreports look nice on the canvas and they feel clean when you click around in iReport, but they can send your server for a walk if you are not careful. I have been helping teams wire up JasperReports for invoices, statements and those end of month monsters that marketing loves,…
Writing Clear Servlets: Small Controllers, Big Wins
\n Big controllers feel clever until the third bug report in the same week. \n\n\n\n Small servlets are quiet and boring and they keep your weekend free. \n\n\n\n We have Rails noise on every feed and still a lot of us ship on Java Servlets every day. Tomcat 6 runs…
Migrating to JPA with Hibernate as Provider
Creation date: 2007-04-20T01:09:40 Dialogue style intro Dev: We keep patching our Hibernate XML mappings and a new feature lands every sprint. I want to move to the Java Persistence API and keep Hibernate as the provider. Lead: Why touch what works Dev: The Java Persistence API gives us a common…
The business of software: Distribution and Dollars Move Together
Software is a business first. Code is the easy part. The rest is rent, support, taxes, chargebacks, copy, and deal terms. If you are reading this in your text editor after midnight, coffee in hand, this is for you. Today Google said it will buy DoubleClick. That is a reminder…
The business of software: Solve Problems People Will Pay For
Software as a business is not a theory class. It is a kitchen with hot pans, late invoices and release builds that go out five minutes before dinner. This is part five of the series, written after another day of bug reports, support emails and a small win that keeps…
Goodbye Applets: Sunset Plans for Legacy UIs
Goodbye Applets: Sunset Plans for Legacy UIs: Applets from a practitioner’s perspective with timeless lessons. Browsers are moving fast and patience for spinning coffee cups is gone. Java applets once felt like magic. Now they feel like someone asking you to install a toolbar. With IE7 rolling out through Windows…
Dependency Management that Doesn’t Bite
Why do jar dependencies keep biting the hand that feeds them? If you build Java apps for a living, you have met the broken classpath at 6 pm on a Friday. You drop a jar in a lib folder, Ant compiles, the app starts, then boom at runtime a missing…
Parameterised Tests: Cover More with Less
Tests are a safety net when the circus is in town. Make the net wide without adding more rope than you need. Why I stopped copy pasting tests and slept better This week I stared at a wall of green JUnit bars and felt nothing. The suite was huge and…