Tonight Curiosity touched down on Mars and my feed was a blur of cheers and telemetry. It reminded me why I love search. You stare into the dark, you ask a question, and if your tools are good, you get a signal back. When you wire up Apache Lucene the…
Category: Software Architecture
System design patterns, architectural decisions, and scalability strategies. Building robust, performant systems that stand the test of time.
Modular Applications with the NetBeans Platform
Build small things that fit well together and you will sleep better than the team that built one giant thing that fits nowhere. A rainy Tuesday and a stubborn monolith The coffee went cold while the stack traces kept growing. That was the whole vibe of the morning. One Swing…
Wicket Components: Stateful but Manageable
Apache Wicket gets a weird rep in Java circles. People love the HTML friendliness but get spooked by the word stateful. If you have been shipping apps on Tomcat or Jetty and someone told you Wicket will flood the session, stick around. From the trenches, Wicket components are stateful but…
OSGi Services in Sling: Clean Boundaries
OSGi Services in Sling: Clean Boundaries. Apache Sling from a practitioner’s perspective with lessons that stick. If you are building content apps on top of Sling and Jackrabbit, keeping logic in tidy units pays off like compound interest. Dialogue intro Dev: My Sling servlet is a thousand lines. It touches…
Event-Driven Thinking on the JVM
Are you still thinking in request and response when your work really looks like a stream of facts? When a customer signs up, a payment clears, stock runs out, or an email bounces, that is an event. On the JVM we have a trusty tool for this kind of flow….
Squirrel My Go To Database Controller
“The best database tool is the one you actually open every day. For me that is Squirrel.” Why Squirrel stuck with me I keep a lot of tools around for data work. MySQL Workbench looks nice, psql is always there, and on the Mac side Sequel Pro is friendly. Still,…
Mixing Groovy with Java: Where It Helps and Where It Hurts
Mixing Groovy with Java: where it helps and where it hurts. I have been pairing on a few codebases that swing between both worlds, and the question keeps coming up: is Groovy a sidekick for scripts only, or can it sit inside a serious Java project without blowing up builds…
Accessibility in Desktop Java: Contrast, Fonts, Inputs
Accessibility in Desktop Java Now that Java 7 is out and Nimbus is not the new kid anymore, I keep running into the same question from teams that ship Swing apps for regular folks in offices and call centers. How do we make this thing friendly for people who do…
Tuning Tomcat for High Throughput
Are your Tomcat threads pegged, CPU hot, and response times creeping up the moment traffic gets real? Did a harmless spike from a promo email or a trending tweet turn your shiny app into a queue of timeouts and angry logs? If you are wondering whether Tomcat is slow by…
Hibernate in Production: Mapping Reality to Tables
Hibernate is everywhere in server side Java right now. Teams are shipping on Tomcat and JBoss, Spring is the glue, and JPA 2 support in Hibernate 3.5 and 3.6 feels solid. We keep hearing the same story in standups: the demo ran smooth, then production got slow, memory spiked, and…