Ant Patterns keep popping up in every Java shop I visit. We all have a build.xml that grew from a quick copy into a small city. Some of us run CruiseControl on an old server in the corner. Subversion repos are busy. And while a shiny phone just stole everyone’s…
Understanding Java Annotations
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…
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…
Integrating Mautic with CMS and CRM
Integrating Mautic with CMS and CRM. A practitioner’s take on wiring Mautic to your site and your sales stack, with lessons that do not age fast. Last night I was nursing a lukewarm coffee, Firefox and Firebug open, trying to make a signup form talk to both my blog and…
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: 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…
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…
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…