More Signal – Less Noise

Hi there – it is time to break radio silence. If I’m going to be part of this Software Craftsmanship/Professionalism movement, then it is time to start acting like it.  That means actually doing stuff and not just spending every waking hour reading the output of everyone else. So here is spur of the moment post number one. It’s late and I have to get up early, so don’t expect too much…

GeePawHill has an excellent series of posts down on the creek, and in this one he said something which struck a chord with me.  He cleaned up all the warnings in a class to ensure that “all we get is signal, without any noise”.  This is nothing new, but the more I thought about this little comment the more ways I saw we could use this. I think it could be a unifying idea to help explain many good practices. It seems close to the Lean idea of Eliminating Waste, but it goes slightly further, as it is also about maximising signal.

Essentially anything that detracts from the information you need at that precise moment is noise that we should strive to eliminate. Here are a few assorted examples

  • Compiler warnings
  • Permanantly broken tests
  • Code clutter, like using Java Iterators instead of For Each loops
  • Law of Demeter violations
  • Code Duplication (more a lack of clarity in the signal)

But what about the signal?  How do we maximise the signal we get back, and ensure it is as clear as possible?

  • CI tools
  • Continuous Testing tools like JUnit Max
  • Minimising the scope of tests
  • Clean Code

Nothing too revelatory there, but it brings together a few seemingly unrelated concepts to discover some common themes.  Over the coming days/weeks  I’m going to try explore this further. Just hope I’m not adding to the noise.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: