Tbh I think alot of the “thinking” still looks like visible work though. I feel like the article makes it seem a little too much like there’s nothing observable, nothing to show or demonstrate, until POOF the code comes out.
But I find that I often need to be doing visible stuff to make progress… Like devising little experiments and running them to check my assumptions about the system (or discover something new about it), and making little incremental changes, running them, using the output to guide the next thing I do… Even occasionally spending the time to write a failing test that I plan to make pass.
So I’m 100% on board with letting managers believe this “80% of the work is invisible” thing… But I think as advice for programmers, it’s really important to not get too stuck in your head and spend too much time not kinetically interacting with the system that you’re trying to change.
You’re right, and other intellectual “design” jobs will have physical or visible manifestations of the design process. In video you have a storyboard, set design. In music you have notation, lyrics, demo recordings, and so on.
Right! For music, I think it’s even like saying… The process of making music is much more than just literally performing it… But it’d be weird for the creative process to not contain any playing-of-music that looked in some ways like performance.
I am keenly aware that most management still subscribes to the idea that motion is work. They are fairly convinced that a lack of motion is a lack of work. That makes sense in a lawn care service, a factory assembly line, or a warehouse operation.
This is so true. Oddly enough, if you’re motionless but looking through a microscope, those same exact managers will think you’re killing it.
brings a microscope to work and starts using it
Manager: What the heck are you doing?
Eagle: Trying to solve that deserialization bug in the code base, boss.
Programming is mostly research. Researching curses to cast on the guy who wrote the Incomprehensible mess you’re currently debugging.
… until you finally track down who wrote this mess, and it was you 5 years ago.
Yep. By the time I get to actually writing the code, I feel relieved because by then I have a pretty clear idea of how I’m going to do it, and I can work quickly. It’s the hours of figuring that out that are difficult, and the boss demanding constant progress reports when I’m still figuring it out and have nothing to show but a bunch of notes and TODOs. I find that writing my thinking notes in the form of documentation for the product can help appease management.
Pretend you have a really great programming day. You only have to attend a few meetings
ONLY a few? Everything beyond the Daily is torture!