I had this post in gestation for a while but the recent post on SmartBear's
blog ("Please stop saying Java sucks") decided it me to finalize and publish
I believe that it's a complete fallacy to equate "less code" with "better",
this whether one is considering a language or a framework. In that matter
(like in many others), I think the Zen of Python provides the correct
Explicit is better than implicitWhy is this important? Here is a quote from
Bob Martin's Clean Code:
The ratio of time spent reading (code) versus writing is well over 10 to 1
... (therefore) making it easy to read makes it easier to write.
I'm inclined to add that not having any code to read at all hinders the
capacity to reason about a piece of software , hence reduces the ability to
work with it.
One could brush aside this argument and argue that if a programmer knew
better language X... (more)
This blog is the formal introduction to the CRaSH console for Mule on which
I've been working for the past month or so. I've decided to interview myself
about it because, hey, if I don't do it, who will?
What is CRaSH for Mule?
It is a shell that is running embedded in Mule and that gives command-line
access to a variety of Mule internal moving parts. It's built thanks to the
excellent CRaSH project, a toolkit built by Julien Viet and sponsored by eXo
Platform, which allows the easy creation of embedded shells.
What can we do with it?
Well, it's easy to find it out. Let's connect ... (more)
To be able to do anything useful, an ESB must be configured with all sorts of
parameters, from endpoint connection URIs to message transformation scripts
to content-based routing definitions. Moreover, ESBs like Mule can host
custom components, which will process messages and perform user-specific
actions on them.
Deploying a new version of an ESB configuration raises the question of
whether it will break anything. How can we build confidence that everything
will be just fine? If unit testing did it for standard software development,
what can it do in the realm of the ESB? Since... (more)
In "Working Effectively with Legacy Code", Michael Feathers gives this
To me, legacy code is simply code without tests.He also adds:
I've gotten some grief for this definition.Indeed, defining legacy code is
After purging one of our project from code that we consider legacy
(deprecated, EJB2...), we noticed this interesting trend in our Sonar
Notice how code coverage is way less affected than complexity and rules
compliance. Our legacy code had test coverage, not the greatest ever, but it
Therefore, I am wondering if we could then postulate th... (more)
I've been caressing the idea to buy a Wi-Fi enabled media player in order to
tap into the gigabytes of (legal) music that sits in my NAS. I've considered
investing into a Logitech Squeezebox, or a similar product, but I wasn't sure
such a device would be able to play directly from an NFS share, without any
music server running somewhere.
Just when I started to consider building a player out of a SheevaPlug, I
remembered of the ultimate source of cheap hardware, ready to be repurposed:
eBay. $125 and a few days later I had a like-new black Asus Eee PC 2G Surf
waiting to be turned ... (more)