The best part of Java 8 is not lambdas for me. It is the fresh date time API that finally reads like human code. The old one turned simple tasks into a maze. Now calls look clean and the intent is obvious. After years of wrestling with Date, Calendar and…
Testing with Spring: Fast Feedback for Big Systems
Coffee, a red build, and the twenty minute wait Friday night deploy. Fresh coffee. One scary log line. We rolled back in time, but the worst part was not the bug. It was the twenty minute test run to learn what we already suspected. Big Spring apps can feel like…
The evolution of content platforms
Everyone is rebuilding something right now. Sites, apps, emails, the whole content setup. The label on the box keeps changing and the stakes keep climbing. From CMS to something more We started with blog engines and moved into CMS tools that publish pages. Then came stronger web content management with…
Agile that treats people well
Agile can feel like real help or like a fast treadmill. The difference is how we treat people. Let’s talk about Agile that treats people well, where the team is not fuel for a burn chart but the reason the product gets better every week. Most teams I meet are…
Working with Java Streams in Real Projects
Java 8 finally landed on real servers and the Stream API is now part of my daily routine, for good and for weird. I keep meeting teams that tried Java Streams in small scripts and then moved back to loops when the code hit production. The usual reasons are fear…
JVM Languages for real-world teams: Procurement Meets Pragmatism
The coffee was already cold when the email hit the room. Procurement wanted answers by Friday. We had a greenfield project waiting and our Java shop was itching to try something fresh on the JVM. Scala was whispering promises from conference talks. Groovy was friends with our build. A few…
IAM Basics that Prevent Nightmares
Every week I hear a fresh story about an AWS key leak that turned into an all nighter. The pattern is boring by now. Static keys on a laptop. An old repo on GitHub. A forgotten user with full power. Here is the short version from the trenches. Do the…
Hypermedia Debates and Pragmatic Compromises
I was sipping a lukewarm cortado after a late meetup when the debate started again. One side pulled up GitHub docs and said that links in responses are plenty. The other side waved a printout of Fielding and asked for full hypermedia controls. A third person just wanted their iOS…
Upgrading CQ to AEM: Pitfalls and Plans
Thinking about an upgrade from CQ to AEM and wondering what will break first? You are not alone. Teams still on CQ5 are staring at AEM 6 and the shiny new Touch UI, Oak, and a different way to think about content and code. The press releases make it sound…
Jahia Lessons: Integrating Apps and Content
Story first: a site that wanted both app speed and editorial control Last week I sat with a content team that edits news at a pace that would make a sports desk blush. They needed a Java CMS that lets them drop small apps into pages without begging developers each…