Published: Sun 01 May 2016
Solving problems is the role of software developers first and foremost.
The most interesting aspect is that in many cases it is possible to
perform this role without writing a single line of code.
I once worked with a digital dashboard which monitored applications. One
of the yet to be implemented features was a key to highlight which each
chart related to. During this period many employees would ask which
graph related to which feature. The solution was a few weeks a way so as
a temporary fix I stuck a post it note to the screen. This was by no
means the solution, but it was good enough for the time being. The
questions went away and eventually the dash was updated to include a
digital version. Total lines of code? Zero.
Problem Solving without a Computer
A common experience that many developers encounter is solving a problem
while not actually at the computer, programming. In fact this technique
of simply taking a break such as going for a walk can yield some
impressive results. One of my fondest memories of this trick was using
shampoo in the shower to walk through a buggy A* implementation using
the bathroom tiles. After returning to the task sometime after, the
stupid mistake stood out. Lines of code to figure out the fix? Zero.
Just the other week I began furiously updating an existing application
to change how a core feature worked. The solution was not going to be
quick, but it seemed like a good idea. About halfway in I reverted the
changes. After further thought it turns out there was a much better
solution. One that would not introduce risk to the current project's
goals. Total lines of code? Minus one hundred, give or take.
Goals over Code
This lack of code is not a bad thing. In all three examples the goal was
complete. You can solve problems with a single line, or thousands, it
actually does not matter. If you switch your thinking to focus on
completing goals or hitting targets, you are still rewarded with a
feeling of accomplishment. The slack time you gain can simply be
redirected to other areas or personal improvement.
Many wise developers have said this before. The role of a software
developer is to solve problems, not write code. This is not new,
unfortunately a younger, naive version of myself ignored this advice.
Focus on solving business/customer problems, not writing code.
Sometimes you'll write one line of code, others thousands.
Not all solutions require code to complete.
Focus on hitting goals, not the feeling of productivity writing code
Proudly powered by
Pelican. Theme based on Smashing Magazine.
Disclaimer: The posts on this site are my own and don't necessarily represent my employers positions, strategies, or opinions.
Copyright © Shaun Finglas 2017