Android feels different this month. The Droid landed on Verizon, Eclair shipped, and the Market is getting crowded with apps that finally look and feel like they belong on a pocket computer. If you are building today, you are probably trying to answer a simple question that turns out to…
Category: General Software
Industry trends, platform evaluations, migration strategies, and systems thinking. The broader context of software development and technology choices.
Sending Email with JavaMail: Templates and TLS
I once spent a long night hunting a phantom bug. The app said the email was sent. The logs agreed. The mailbox stayed empty. Turned out the SMTP server wanted TLS and I was talking plain old port 25 like it was still dial up time. Switched to STARTTLS on…
Immutable Collections for Safer Concurrency
Your code is not broken. It is just being poked at the same time by two or five threads. These things used to be rare when we had one real core and dreams. Now your laptop ships with two or four cores and your server feels like a small city….
Oracle Buys MySQL: What Happens Next
Oracle buys MySQL. If that line made you sit a little straighter, you are not alone.Everyone from scrappy founders to grizzled DBAs is asking the same thing right now. What happens next. This move is not about a checkbox. It is Oracle putting a hand on the throttle of the…
H2 for Tests: Fast Feedback Loops
H2 for Tests: Fast Feedback Loops Your tests are too slow. You push code. You wait. Coffee gets cold. The build pings your screen after five to ten minutes and tells you a DAO broke on some tiny thing. This is common when you point your tests at a real…
Timezone and Locale: Hidden Requirements in Global Apps
\n �The sun never sets on your users, but your code still sleeps in one timezone.� \n\n\n\n Why timezone and locale sneak into every feature \n\n\n\n We are shipping software to browsers and phones from everywhere. The App Store just opened and folks in Tokyo, Madrid, and S�o Paulo are…
Trying OpenSolaris: ZFS, DTrace, and a Different Feel
There is a particular silence when a machine boots a new system for the first time. Fans whisper. The drive light flickers like a heartbeat. Tonight I burned an OpenSolaris image, slid it into a spare box that usually runs a familiar penguin, and let curiosity do the rest. The…
Updating and Autoloading Modules: A Practical Guide
Updating and Autoloading Modules sounds like something only the platform team would love. Truth is, if you are shipping on the NetBeans Platform, it is your daily bread. With NetBeans 6 and its shiny Plugin Manager, the whole story got more approachable, but the ideas have been around for a…
Validate, Compress, Parse: Commons in Production
Description: Validate, Compress, Parse: Commons in Production: Apache Commons from a practitioner’s perspective with timeless lessons. Problem framing You can feel it on every release cut. More features, less time, one production box that must not fall over. We are all picking our battles right now. New browsers ship often,…
Code Injection Attacks: Understanding the Threat
\n \n\n\n\nThe web keeps getting flashier with AJAX toys, but the old tricks still work. The nasty ones do not care if you are running a tiny blog or a busy shop. Code injection attacks are the cheap lock pick that still opens too many doors.\n\n\n\nWe keep seeing forum scripts…