I love command line tools. It's kind of funny, because there was a time
when I was really getting into making JS front-ends for my Python back-end
apps, but that was before I realized how much distraction comes with pretty
GUIs.
It's very easy for me to get distracted by irrelevant details when I'm
presented with something like, say the browser. I end out with so many tabs
open that it's ridiculous - most of the time my browser tabs are only favicons.
And there has been more than once where I've not even had that.
I think the main reason that I do such things is the same reason some people
have a messy desk - they're not done with those things and so they want to keep
them in front of them to remind them that they actually need to do that thing.
In my case, though, it's usually several weeks before I decide whether or not
I'm going to do something with a tab. Or I keep it open because there was some
information found on the page that I think I will want to reference later in
regards to something I'm working on. It's not uncommon for me to have 5-10 tabs
open to different places in the API docs for some project that I'm looking at.
I think that's mostly fine. But it's really easy to get sucked into YouTube,
or Twitter, or Facebook, or something else. At least it is when these companies
have their full-fledged gamification/habit looping tools brought to bear down
on me.
But I've started fighting back. I want to take my control of my life, not
what these companies most want for me.
I've always been into the command line for most things (which shouldn't be much
of a surprise, given the fact that I'm currently using Pelican to generate my
blog), but lately I've been able to get a lot of nice things going on.
For instance, I use alpine as my email client. I can connect to Gmail, and my
work recently went to Outlook 365 or whatever that Microsoft product is called,
and it actually supports IMAP access, oh frabjuous day, calloo callay!
Seriously, it's way better than mucking with WebDAV to try and interact with
scraping the Exchange OWA site. That was such a pain.
So I've got my mail client.
Google Reader was probably the saddest shutdown that I've ever experienced.
Just a little more disappointing than Google Wave (as an aside: Google Wave was
amazing! I absolutely loved chatting at the speed of thought - or typing
anyway). But I found a substitute that actually works well enough for me:
Newsbeuter. It works great and lets me read my
RSS in the command line, which is so lovely. To subscribe to a feed I just add
the feed URL to a text file. They also have the ability to export a list or
read URLs, which would be handy if you wanted to run it on multiple different
machines. Of course, if you know how much I enjoy webcomics you might be
wondering how that works. Actually it's way better than I used to think,
largely because of ITerm2 and terminology. Both of these browsers allow you to
click on URLs in the window (even connectbot on my Android phone lets me scan
for URLs), which will then pop up the comic in the browser. So that's pretty
awesome. I used to spend kind of a silly amount of time refreshing comics in
the morning to see if there was anything new from my favorites, but now that
I'm subscribing to their RSS feeds again, it's pretty awesome.
I read a neat article recently that led me to this approach to GTD called The
Secret Weapon. I really enjoyed the approach,
but there's one problem: the focus is using Evernote, which is a browser/native
app. In the past I had come across this tool called
TagSpaces, which basically is just an approach to
organize your files by putting the metadata information about the file into the
name of the file itself, so do-this-thing[work].txt
would be a file that's
been tagged "work".
So I started just kind of manually creating my files with the right filenames.
That didn't last very long because it was super annoying. So in true
scratch-your-itch fashion, I created
shibboleth, a tagspaces+TSW approach to
the problem. It basically is just a little command line app that lets you list
your stuff by priority, and easily see the contents/edit the files. That's
about it. Oh, and you can "select" your active task. Right now it's very very
basic, and just takes care of the specific needs that I have, but it works
great for that.
Anyway, the command line is awesome. I've found that I tend to be a lot more
productive the more focus I can have in operating on the command line.
Oh, yeah, and I do use tmux (and tmate for pairing), and though I do tend to
have several windows and panes open I think I'm doing a pretty good job at
keeping them managed and having a specific purpose, like one for my database
connection, and one for my email. It makes things a bit more segregated.
I also use something called termdown,
which is just a stopwatch/timer. So I typically will use termdown -b 25m
to
run my pomodorii throughout the day. The -b
makes it blink so I know when I
need to take a break.