BLUE JOTTER

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Wednesday, 5 November 2008

On Debugging

Posted on 02:11 by Unknown
Note to future self: there are two ways to debug. Know when to switch.

Alpine Style
The vast majority of debugging can - should - be done this way. When climbing a mountain "Alpine-style", one carries the bare minimum of gear, and moves as quickly as possible to the summit and back; a sort of vertical sprint.

Siege Style
Alpine-style mountaineering works well on the great peaks of Western Europe; conquering the great peaks of the Himalaya required a different approach. Huge teams traveling with equipment loads measured in metric tons treated peaks like K2 and Everest as natural citadels, fixing ropes and ladders up the ramparts, inching a string of camps with infinite care and labour towards the summit.

Everest: a classic "Siege" target. Photo: Pavel Novak

If a day of simply strolling a debugger through suspicious methods doesn't work out, it is time to switch tactics - whatever the behavior of the defect is, it is too complex to be easily followed. Stop expecting easy insights, and instead instrument anything potentially relevant with log files or console output. Keep an open mind: after all, if you haven't spotted the cause already, anything is possible.

p.s. This is also be a good time to improve your unit tests
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in debugging, programming | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Making a rudder, part 4: designing gudgeons
    With my rudder blade is almost ready for the water, so time to think about it can connect to the boat. To hang it from Briongloid's s...
  • Designing a new rudder
    So, our beloved Briongloid , a 6.6M fin-keeled sailing yacht went adrift from her mooring, and spent an uncomfortable day bouncing on pointy...
  • Review of Speed Launcher (Android version)
    So, there is now an Android in my pocket; a Samsung Galaxy S Plus .  It is very shiny, with a lovely big bright screen.  It navigates beauti...
  • Vision, Orientation
    Maybe a multi-axis accelerometer could provide useful extra input for computer vision applications? By sensing up , the direction of g, the...
  • Cleaning a microwave oven
    The levels of dried-out burnt-on food on the roof of our microwave oven were well below bachelor-tolerance levels, and, considering the dose...
  • Long Ears
    In the morning, there was a small brown scrap on our lawn where none had been before. Turning over, as I thought, the corpse of a headless b...
  • Saving up for a... sunny day?
    You may have heard the advice that you should have cash on hand to cover living expenses for some few months, just in case - "rainy day...
  • Error Propagation: an unexpected beauty
    So, say you have a couple of measurements, x and y, with some associated uncertainty; the true value of x might be, say, 3 units above or be...
  • CPU Hog
    So there I was, tapping away at quotidian tasks, when I noticed my PC was responding with all the dash and verve of a fossilized member of T...
  • Toys
    Our son has reached The Age of Exploration. At last, he can pull himself upright and toddle along on his hind paws - so long as a support of...

Categories

  • 3d printing
  • adapter
  • aerofoil
  • Android
  • app
  • apps
  • arcturus
  • astronavigation
  • babies
  • bats
  • battery
  • boat
  • cam
  • camcorder
  • carbon fibre
  • carpentry
  • celestial navigation
  • certainty
  • charts
  • chemistry
  • clean
  • composite
  • computer vision
  • corecell
  • CPU
  • debugging
  • dementia
  • digital charts
  • error
  • error propagation
  • ertalyte
  • fibreglass
  • financial independence
  • foil
  • formula
  • frugality
  • geometry
  • Google Desktop
  • grp
  • gudgeons
  • how to
  • ideas
  • imray
  • installing linux
  • interesting
  • investment
  • latitude
  • linnaeus
  • linux
  • lock screen
  • longitude
  • maths
  • microwave
  • moon
  • navigation
  • operating system
  • oven
  • pc
  • pet-p
  • probability
  • Process
  • programming
  • puppy linux
  • pythagoras
  • rapid prototyping
  • repair
  • retirement
  • review
  • rudder
  • Samsung Galaxy
  • savings
  • shapeways
  • Speed Launcher
  • statistics
  • sugru
  • toddlers
  • toys
  • wander alarm
  • wide-angle
  • windows
  • wood
  • woodwork
  • yacht

Blog Archive

  • ►  2012 (3)
    • ►  October (1)
    • ►  July (1)
    • ►  February (1)
  • ►  2011 (2)
    • ►  December (1)
    • ►  August (1)
  • ►  2010 (6)
    • ►  October (1)
    • ►  August (1)
    • ►  July (2)
    • ►  May (1)
    • ►  April (1)
  • ►  2009 (13)
    • ►  October (2)
    • ►  September (2)
    • ►  August (1)
    • ►  July (1)
    • ►  June (4)
    • ►  April (1)
    • ►  February (1)
    • ►  January (1)
  • ▼  2008 (9)
    • ►  December (2)
    • ▼  November (7)
      • Vision, Orientation
      • If at first he doesn't succeed...
      • Difference between Aunty and Mum
      • Playtime on the farm
      • On Debugging
      • Dry Water
      • Why?
Powered by Blogger.

About Me

Unknown
View my complete profile