Productivity Stack
Tags: productivity, tooling, programming, career
Published: 2021-03-18 05:35:52

Starting a new job is a great time to re-evaluate the regular processes we perform at our work. Herein I'll set forth a productivity stack I will to use as I onboard and work at [@moov](https://twitter.com/moov) starting March 25. Maybe you'll find something useful!

# My Stack
- Time Management Methodology
  - Pomodoro via [Pomotodo](https://pomotodo.com)
- Time Tracking/Metrics (Accountability)
  - [RescueTim](https://www.rescuetime.com)
- Rest Strategies
  - Rest List ([7 types of rest](https://ideas.ted.com/the-7-types-of-rest-that-every-person-needs/))
  - Work-Out Schedule, Stretches
- Communication
  - Slack
  - Tenor Keyboard
- Note Taking & Documentation
  - Notion
- Development Environment
  - VSCode
  - Iterm2->zsh->Powerman10k
- Hardware
  - [Mechanical Keyboard](https://steelseries.com/gaming-keyboards/apex-7-tkl)
  - Speakers
  - [Sit/Stand Desk](https://www.fully.com/standing-desks/jarvis/jarvis-adjustable-height-desk-bamboo.html) 
- Misc
  - Focus w/ Whitenoise
  - /etc/hosts - block sites
  - [Habitica](www.habitica.com)

---

## Time Management Methodology

I really enjoy working in [Pomodoro's](https://en.wikipedia.org/wiki/Pomodoro_Technique). Taking regular periodic breaks does wonders for refreshing my mental and physical state. I generally use the breaks to get away from the computer and do something that requires me to move my body. Depending on the length of the break this could be as little as cleaning or as much as working out. If it's a short break and I'm already moving around enough, I could check twitter or blogs I follow instead!

Some time ago I was looking for a software alternative to a physical timer. I found [PomoTodo](https://pomotodo.com). Note, that I do *_not_* recommend using the to-do functionality for any task that you will not, with 100% certainty, be able to accomplish same-day. There is currently some [hot debate](https://thenextweb.com/growth-quarters/2020/10/13/throw-out-your-shitty-to-do-list-heres-what-to-do-instead/) about the efficacy, *period*, of to-do lists. They generally work for me for short-term/immediate work.

## Time Tracking

If we don't measure what we're doing with our time, we are left with less effective means of being accountable to ourselves. For this reason we track our time. I believe in a mixed approach of automated and manual time tracking. [RescueTime](https://www.rescuetime.com/) pretty much well ticks all the boxes for automated time tracking and generation of measures to check ourselves. I don't recommend doting over the graphs regularly. Decide for yourself a reasonable percentage of focused & non-focused time during work hours and check in on the graphs about once a week.

As for manual tracking, I like to start the day off with a simple one to two paragraph free-form writing about what I will accomplish during that day. At the end of the day, I use a Notion Template to report on my accomplishments, areas for improvement, and blockers. Writing down what I accomplished is a form of tracking if I used my time effectively in accomplishing what I set out to do that day.

## Rest Strategies

I hope we all know how [important rest](https://www.youtube.com/watch?v=ZGNN4EPJzGk) is, and how good rest makes us more whole. Different types of rest throughout the day, including the work day, are essential. Whether you're a  manager or individual contributor, you must find meaningful rest.

Please make a list with the 7 types of rest as categories. Maintain and update this list. Add items you can accomplish on your break periods. On your Pomodoro breaks, know yourself and know which type of rest you need. Pick an activity, and go perform it!

I additionally want to mention the need for physical exercise. Add some stretch or yoga routines you can do do this list and do them regularly, as well as making sure to stand & sit throughout the day.

## Communication

Effective communication makes all the difference. Having tooling to make our communication easier can make our lives better. I personally almost never use e-mail except as a means of facilitating calendared events. For pretty much all non-proposal and formal communications, which belong in things like your Ticket tracking or GH software, I use [Slack](https://slack.com/).

Slack is pretty ubiquitous at this point, and most of us know the advantages and disadvantages. However, I don't think most of us use it as effectively as we could. Try things like channels created then archived specifically for a task, asking yourself if a DM could be done in a channel instead, why are you afraid to use @ when trying to get information, setting up focus time with notification suppression. Don't let Slack use you, but use slack.

Slack should also replace the proverbial water cooler. For this reason I think it's a lot of fun to use some emoji's, but especially Gifs. For that I like the [Tenor Keyboard](https://tenor.com/)!

## Documentation & Notes

I am strongly opinionated that documentation related directly to code for code-reader belongs with the code. I strongly believe that updates related directly do a task belong with the task and no where else. All else, proposals, POC's, designs, procedures, etc can reasonably live within [Notion](https://www.notion.so). There are some tools that work better for architectural design like [draw.io](www.draw.io) (I would never choose to give LucidCharts my own money).

While Notion is a pretty good place for formal documentation, I personally use it for a daily writing and note-taking tool. For example, I use it to give myself focus at the start of the day by free-form writing what I will accomplish during the day. More importantly, I use it to write in that same "start of day" page, at the end of the day. I write down my thoughts for the work day as a means of being able to thereafter effectively disconnect from work. I recommend putting together a 1:1 template, a daily journal template, a proposal template, and note-template for tasks you're working.

## Development Environment

I like [VSCode](https://code.visualstudio.com). I work primarily in [Go](https://golang.org/) so I use the go extension. I first started coding in Atom, so I use the Atom key-mappings in vscode. I use the Dracula theme for everything I can. In VSCode if my eyes are tired and I am already taking my breaks, I'll switch to `red` and `furnace` themes.

For my cli I use [iTerm2](https://iterm2.com/) with Zsh configured with [Powerlevel10k](https://github.com/romkatv/powerlevel10k). In time past getting your cli set up the way you wanted was a major PITA, imo. Now it's so easy with iTerm2, zsh and for the aesthetic, Powerlevel10k.

## Hardware

The software setup and good mentality we give ourselves can take us pretty much all the way to being as productive as we want. If we want to splurge and do a little more, we can spoil ourselves with some good hardware.

I _thoroughly_ enjoy a good feeling keyboard. You can go down the deepest hole of mechanical keyboards. If you want to keep it simple, decide whether you need the 10-key or not. Then, pick either Red or Brown switches, red for silent actuation or brown for a tactile "silent" actuation. I just got a [SteelSeries Apex 7 TKL](https://steelseries.com/gaming-keyboards/apex-7-tkl).

Next and more important is a quality sit/stand desk. I've been out of the market for sit/stand desks for about three years because I struck out lucky first try on one that has worked great and I do not see that ending. I use a [Jarvis](https://www.fully.com/standing-desks/jarvis/jarvis-adjustable-height-desk-bamboo.html) sit/stand desk and have zero regrets about it. Additionally, let's note looking into keeping our desk tidy and having good cable management; I know it seems like a small thing but that tidiness and organization will help focus and good-feels.

## Miscellaneous

Some times we really need to buckle down and have a period of deep focus. For these times I really like to take break to let my thoughts wonder, and then return to the task with appropriate notification screening, and [white noise](https://www.soundofsleep.com/white-pink-brown-noise-whats-difference/) (more particularly brown noise).

In addition to having some focus time, there are some things are simply don't serve us, and each of us can decide what that is. I have blocked myself from facebook and reddit, because when my mind wanders, my fingers just type one or the other... then begins the death scroll. I use a simple means of doing so by just redirecting reddit and facebook domains to localhost in my /etc/host file. It's nothing fancy, but it gets the job done.

Lastly, for outside work daily activities I'm going to start using Habitica. During the age of quarantine, I've let a lot of basic habits slip. Habitica will be good for being accountable to myself on my daily and habit activities.

---

Hopefully there's something in here that will be useful to someone. I primarily wrote this for my own benefit; to remind myself how to be.

Cheers