Running the Stack

Look at the image here:

https://​​en.wikipe­dia.org/​​wiki/​​Stack_(ab­stract_data_type)

After look­ing at that image, you un­der­stand the con­cept well enough to use it as a men­tal model.

Hard-won les­sons —

(1) I joke that “med­i­ta­tion is hav­ing ex­actly one thing on the stack.” One thing at a time on the stack might seem op­pres­sive, but it’s ac­tu­ally joyful. I think you more-or-less can only do one thing at a time.

(2) But okay, the stack is more full. You just popped the top item off. Now what? IME, life goes bet­ter if you go down the stack un­less new in­for­ma­tion com­pel­ling ob­so­letes it (un­less you’re just mess­ing around, in which case “mess­ing around” is on the stack and you’re good). When an ir­rele­vant tan­gent hits in a con­ver­sa­tion, once it con­cludes, go back to where you were (if it was use­ful). When you re­al­ize you got dis­tracted putting the gro­ceries away, typ­i­cally you want to finish putting them away.

(3) It’s en­tirely true that of­ten­times, go­ing down the stack is short-term worse than what­ever newly catches your at­ten­tion. But it trains you to both rec­og­nize tan­gents and nav­i­gate con­ver­sa­tions in­tel­li­gently (again, in a non-pure-so­cial-hang­out con­ver­sa­tion—like at work or when ex­plor­ing an im­por­tant topic).

(4) Even more true: of­ten su­per sucks to go back down the stack on phys­i­cal task stuff af­ter you got dis­tracted. But! I be­lieve — I don’t have any re­search, but my ob­ser­va­tion bears it out, it’s a hy­poth­e­sis — I be­lieve that con­sis­tently run­ning down the stack af­ter you got dis­tracted makes you less dis­tractible go­ing for­wards, be­cause there’s less pay­off to do­ing so.

(5) Some peo­ple can liter­ally “run the stack” in their minds. Not a metaphor. Liter­ally.

(6) I couldn’t do this be­fore. Now I can.

(7) What changed is that I used to be able to com­fortably jug­gle 5-7 items at a time with­out run­ning a stack, but I re­cently calcu­lated out the work I’m com­mit­ted to in the near fu­ture— like, “al­most all of this work will get done” — and it’s 300+ hours. Em­ploy­ees, ad­minis­tra­tion, ops, soft­ware de­vel­op­ment, sales, fi­nance. There’s dozens of pro­jects that stretch off into in­finity go­ing on. Sud­denly, I was just run­ning the stack all the time. I don’t recom­mend it, but that’s what hap­pened to me.

(8) You can get bet­ter about re­fus­ing to add things to the stack.

(9) You can get bet­ter about “clos­ing the thread” (pop­ping things off the stack) be­fore chang­ing gears. “Yeah but wait, let’s talk about that, but can we cal­en­dar that thing be­fore we move on?” (can say it shorter, ex­ag­ger­at­ing for clar­ity)

(10) You don’t need to do a task or com­plete a con­ver­sa­tion to re­move it from the stack. You can just delete it. But the act of ex­plic­itly do­ing so — and com­mu­ni­cat­ing it to any­one else rele­vant that needs to know — is what keeps your stack from overflow­ing.

And the most im­por­tant les­son —

(11) When you have mul­ti­ple items on the stack and “start feel­ing am­bi­tious and mo­ti­vated”, COMPLETE THE ITEMS ON THE STACK RATHER THAN ADD NEW ITEMS TO THE STACK.

The all caps there isn’t shout­ing at you — it’s re­gret for lost years of my life. Alas. Big­ger stack isn’t bet­ter. Faster through­put is bet­ter. That’s typ­i­cally less stuff on the stack at any one time.

Any­way, the con­cept doesn’t work for ev­ery­one, but a sur­pris­ing num­ber of peo­ple who are effec­tive I know ac­tu­ally liter­ally “run a stack” in their minds. It’s… more com­mon than I’d thought it. Prob­a­bly the mix of be­ing on soft­ware de­vel­op­ment and hav­ing an amount of work that’d be in­sanely over­whelming if I didn’t take things one-thing-at-a-time is what gen­er­ated it.