How I Work

Combined Stream

20 thoughts
last posted Aug. 3, 2014, 11:10 a.m.
get stream as: markdown or atom
To add your thoughts on this topic
Sign Up Now
(it’s free)

Was just thinking about posting about a standing desk I made and thought more generally that I should post a bit about how I work.


As I'd love for it to encourage a combined stream to see how others work as well.


I have been using Macs and Python for about 7 years now.


Specifically on the hardware front, I use a 15" Mac Book Pro running OS X 10.9.


It is usually docked to a 27" Cinema display but occasionally I disconnect and sit in my leather recliner or go to a coffee shop.


I use a logitech USB headset for Skype calls and Google Hangouts and headphones by Beats (over the ear) for music.


I recently switched to a standing desk because I have done more and more working out, my hips have gotten tight sitting all day, which has lead to some back issues.


I didn't want to spend a ton of money on a standing desk without at least trying it out so one afternoon I sketched up some specs, took some measurements and built two legs to put my existing desk on as well as a monitor raise to get my monitor at eye level.


I work different between home and the office.

At the office, I mix it up between the standing and sitting desks, but I lean more towards sitting. Either way I use a nice Dell 24" external monitor.

At home, I sit at our table or on the couch. If the dogs are up I'm on the couch with them, if they are asleep I'm at the table. (their snoring makes me tired) I don't use an external monitor at home.


As far as hardware, I use a 13" Macbook Pro running OS X. I've only been an OS X user for about 3 years, prior to that I used mostly Linux (Ubuntu/Redhat) environment with a Windows VM for corporate environment work. The jury is still out for me on which I like better OS X or Ubuntu.


As far as software I use:

  • Firefox
  • Iterm with ZSH and OH-MY-ZSH
  • VIM
  • Textual (IRC Client) with ZNC so I don't missing communication with friends in distant timezones.
  • Tweetbot
  • Evernote
  • Skitch
  • Clear
  • Airmail
  • Spectacle
  • Dropbox
  • 1Password
  • Alfred

I keep my dotfiles with my documented VIM config on Github.

I use several things via homebrew as well.

  • ack
  • colordiff
  • sqlite
  • cowsay
  • git
  • pv
  • vim
  • ctags
  • zsh
  • postgresql with postgis
  • redis

I rarely use the same phone for more than a month or two... It's a personal problem. Lately my main drivers have been an iPhone 5s and a Moto X. I'm currently carrying the iPhone 5s.

As far as mobile apps:

  • Chromecast
  • Harmony (Remote Control)
  • SoundCloud
  • Spotify
  • Netflix
  • Kindle
  • Duet (game)
  • 1Password
  • Square Wallet
  • Instagram
  • MyFitnessPal
  • RunKeeper
  • Fitbit
  • ESPN Sportscenter
  • Meetup
  • Sunrise (calendar)
  • Evernote
  • Skitch
  • Dropbox
  • Google Hangouts
  • Skitch
  • Pushover (custom push notificiations from IRC)
  • Waze (GPS)
  • Clear
  • Facebook
  • Tweetbot
  • Google Authenticator
  • Slack
  • Alien Blue (reddit client)
  • Colloquy (IRC Client)

At work I alternate between sitting and standing with the following setup All of my 'work' is done from my mac while standing...if I need to sit I just switch to my windoze (hehe) machine and startup up my vnc to continue working where I was.


I actually get a chance to use the main 3 OS's. Our servers are all Linux, I do local development on the mac, and I use windows as there is a small MS Access program I maintain for a customer.


We have a mix of php and python for websites, and a mix of python and c for our internal libraries.

I've recently been working on smoothing out our (my) workflow here....been using virtualenv, pip, git via Github, and fabric.


We use PostgreSQL mainly but have a MySQL db and the aforementioned MS Access db. I guess I should mention that the MS Access is just a front end to a MySQL db via a plugin.


About ten years ago, Mark Pilgrim wrote up a "How I Work" blog post entitled "essentials".

I'd just started blogging myself a couple of months earlier and said of Mark's post:

I like reading posts like this. They're like a colophon for your digital life.

I then suggested someone should come up with a machine-readable schema for them that included:

  • what OS
  • what editor
  • what browser
  • what mail reader
  • what feed reader
  • what IM client
  • what media player
  • and so on...

Doesn't just have to be software - could include what cell phone, what portable music player, etc.

Despite suggesting this, I never actually got around to providing my own digital life colophon. That's what this stream is now for :-)


Since February, 2013, I've pretty much exclusively worked on a MacBook Pro 15" Retina with 16GB RAM and 512GB SSD.

I do have a 27" iMac from 2011 but given my 15" MBPr has higher resolution, I haven't had much motivation to use it.


I used to run linux directly, and use the console from there (xterm, tended to be the safe choice, coupled with tmux).

Now I run windows from a laptop, and remote into a linux VM. The gitbash console used to be nice for this, but I ended up going with cygwin for the extra programs it supported.

I also used putty (in the form of superputty - tabs and nice cut/paste support).

Having putty style keys (a gpg file of some sort) and gitbash-style ssh (a kind of virtual unix-like fs mapped to windows fs) was a pain, so I decided to just switch to one.

Given that I was going to use cygwin now, putty was out, so I figured on just using the cygwin console, which uses the same fs-mapping as gitbash. that said, it's not the same mapping (different directory), but I believe you can install a cygwin-based version of gitbash? In any case, I'd sooner get the same functionality by copying the gitbash config myself (so I know what's going on), so I figure on just customising the cygwin shell.

Except I discovered ConEmu, which seems better (managing to attach any other window is nice, now I can put my powershell in there, plus any repl I like). Now I can just ssh in to a certain 'dev/hack' workhorse server, from which I run a persistent tmux session (plus a load of other services) and connect to any other server from there.

Still thinking about the security implications of this though.

Also, hackpack is a nice idea.


Music? Grooveshark and YouTube now, too hard to maintain a music collection on an actual device, I'm always on the internet when I listen anyway.

On the YouTube front, I strongly reccommend ScottBradleeLovesYa.

I also found Focus@Will to be nice, not sure if it actually helps me focus though.