Skip to main content


Showing posts from July, 2013

The Oh in Coding

The Dev Manager lent me the book he's been reading recently , Michael C Feathers' Working Effectively with Legacy Code. The detail is mostly too fine for my coding knowledge and needs but I had a few ideas reinforced and new ones to take away: For Feathers, legacy code is any code without (unit) tests. That's right: code written today can be legacy code. Most software changes seek to hold some or all existing functionality constant and having (good, unit) tests can give a developer reassurance they have achieved that. When code has no tests, or has tests which have dependencies, the degree of reassurance drops and it's natural for a developer to want to avoid touching existing code so as to mitigate the risk of breaking something. This can lead to worse code. Making code testable involves breaking dependencies so that small atomic elements of the logic and structure are can be addressed individually. Feathers doesn't deny the utility of testing at a larger s

Title: Null

I, ahem,  happened  to type  null  into Google Maps the other day and was a little surprised to see this: I wondered whether the same guff was present in the main Google search index. It wasn't: There's this mental image I sometimes have: I'm exploring the product by running my fingers over it gently. Just the lightest of touches. Nothing that should cause any stress. In fact, I might hardly be using it for any real work at all. It's not testing yet really; not even sympathetic testing although you might call it  pathetic testing because of itself it's unlikely to find issues. pathetic: miserably inadequate ( Oxford Dictionaries ) But it can get you a starting point. Perhaps I'll find an ever so slightly raised edge on its smooth surface. It could be an artefact of manufacturing and so entirely expected or it could be an example of poor finishing on a join, it could be due to faulty materials, it could be a run in the paint that coats the p

Another Define Mess

Humpty Dumpty was a big fat egg . Or he wasn't. He was a cannon . Perhaps. He represents King Richard III, some say . Maybe, others say. Whichever, if any, it's fitting that Lewis Carroll has him saying this: When I use a word it means just what I choose it to mean — neither more nor less. Recently during a team-wide festival of testing I was listening to Research-based pop, the new album by The Durds . I say festival of testing  and you have no idea what I'm on about. (I  am  in management.) I'd really like to say  testival   (yeah, let's innovise and neologate in a blog on lexical matters!) because that kind of thing appeals to me  but it would take us even further from a common understanding. What I actually meant and could easily have said is that the test team set aside a day to address a backlog of verifications without any distractions. To aid my own concentration and discourage interruptions, I was listening to Research-based pop, the new album by T

It's a Mandate

If you stick around in testing for a while you'll doubtless encounter and perhaps get embroiled in discussions about whether testing is an art or a science. I won't rehearse the arguments - see The Appliance of Art  for a brief review - but I will mention a term I chanced across recently (although it seems to have been around since at least the 1980s) that looks interesting and relevant: mandated science . Salter, Levy, and Leiss   write : The term "mandated science" refers to the science that is used for the purposes of making public policy. Science, here, includes the studies commissioned by government officials and regulators to aid in their decision making. This scientific work is designed and carried out solely for the purpose of supporting particular regulatory decisions. According to them when a body commissions this kind of scientific work, it's clear that "the research should meet the test of good scientific work" but there's a tensio