My journaling workflow has evolved a lot over the past few years. My very first entry in Day One is from June 21, 2012, but I didn’t start keeping a regular journal till early November 2015, shortly after I quit drinking. I turned to keeping a journal as a way to organize my thoughts and feelings in a place that I knew was private and non-judgmental. Since then, my usage has largely stayed the same, although I’ve been able to be much more consistent in the past year. I’ve also added a number of smaller semi-automated entries to my practice.
As of this writing, I have a grand total of 2,144 entries stored in Day One. Those entries are split up across a few different journals:
This is my “main” journal, and is where all of my free-form writing goes. I don’t have any hard and fast rules about this journal, and it’s littered with photos of graffiti I see while traveling, dumb jokes that I don’t feel like posting publicly, and longer form entries. I try to write at least one of those long-form entries in here every day.
The format for my daily long-form entries has gone through multiple revisions over time. When I first started keeping a journal, I wrote several entries each day, each with a specific topic. I wrote one about my workday, one for my personal thoughts/feelings, and one for each activity I did. That pace wasn’t maintainable, and it became exhausting. I eventually whittled that down to just writing a single large daily overview entry, but got a bit burned out on that as well.
More recently, I’ve settled into just writing something in here every day. I try hard to not judge myself on length or quality of the entry. Instead, I just focus on getting something written down. I’ve moved away from entries that are glorified lists of things I did during the day, and I focus more on writing about what I feel. One of the biggest benefits of journaling for me is being able to look back at where I was years ago and see how things have changed. The list-style entries have limited interest as time goes on, but the entries that center around my feelings and general outlook are evergreen.
When I started my journaling practice, one of the things I wanted to replicate the most was the Daily Q&A Journal that I bought for my wife nearly 4 years ago. It’s a 5 year journal, but the questions repeat every year on the same day. As you go through, you answer the question, but you can also look up to see your answers from the previous years. It’s an amazing way to watch your responses change over time. However, carrying around a physical book for that was a non-starter for me. Thankfully, Day One has an excellent “On This Day” feature, where it shows you all the entries you wrote on the current day of past years. So all that was left was to add prompts.
After painstakingly transcribing every question in the above physical book and translating them into JSON, I was able to publish a super small web app to spit them back out at me (the source is public if you’re interested). This lets me outsource the prompts, while using Day One’s own features for the yearly reviews.
I’ve managed to stay super consistent with this, and have gone 417 days now without missing a question. It’s interesting to see my answers from the previous year, and to see how they have changed. Also entertaining are the days when I think of an incredibly clever answer only to realize it’s the exact same thing I wrote in a previous year.
There are two types of entries that go into this journal: Daily and Weekly productivity entries. These entries are similar to my Q&A entries, except that they ask the same questions each time:
I’m prompted to write these as a part of my daily and weekly reviews. I have Workflows set up for guiding me through the prompts and adding them to the right journal with the right default tags:
This is the newest addition to my practice, and it’s one I’m still refining. I don’t remember what prompted me to start these, but I’m on my 4th month of writing them, and I’ve been enjoying it. Initially, these entries lived in my main journal, but once I decided that I wanted to make it a regular practice, I created a new journal to hold them.
Writing these has been a nice addition to my practice. The idea is akin to gratitude journaling, but calling it “Productivity” journaling helps me keep from getting all fluffy with the entries. It’s a nice way to regularly remind myself of the things I’m getting done and the things I’m enjoying. The weekly entries give me a chance to reflect on my successes/failures from the week and helps me come up with a plan to continue/fix them.
Every month I have a recurring task to take a screenshot of my home screens for my iPad, iPhone, and Apple Watch and dump them in here (with an appropriate tag). I love the idea of keeping a monthly record of what apps I’ve allowed to live on my home screen. It’s also nice to relive these old setups on the first of each month, when “On This Day” surfaces them again.
The entry count here is artificially low because I still haven’t gotten around to importing my backlog, but this is essentially a local copy of my microblog. It’s currently being populated via an RSS trigger through IFTTT. I wish that Day One had an API so that I could hit this directly, but until that exists, this will have to do.
This is also populated via IFTTT, and is intended to be a sort of Commonplace Book, where all interesting quotes from things I read are kept. Unfortunately, it’s incomplete right now because I can only populate it via Instapaper. My Kindle notes/highlights are siloed away inside Amazon’s data centers, and they don’t seem to be particularly interested in letting them out. It’s a real shame, I’d love to be able to export those easily (and automatically).
As it stands, any time I make a highlight in Instapaper an IFTTT applet fires and an entry is added here.
One common point of confusion/contention with Day One seems to be when to use journals and when to use tags. The approach I’ve taken is to create journals when I’m posting about specific thing often enough that it begins to clutter my main Journal. So for example, I wrote my productivity entries inside Journal until I decided to do it every day. At that point, the entries started cluttering that journal and so I moved them all out into their own Productivity journal. This gave these entries a place to live while also removing the noise from my main Journal.
Tags, on the other hand, I’m fairly loose with. I create them almost at will.
I have some common ones that I add to larger topics (for example,
travel/2018/europe
or work/square
), but others are added arbitrarily. I
don’t put too much time into thinking about them, and don’t have a great
strategy for how to manage them.
You might have noticed that I’m using a number of tools to overcome some shortcomings of Day One itself. I’d love to reduce the number of external tools I use to make my practice work, but I’d first need some improvements to Day One:
The problem with side projects is that you can’t complete them. No matter what you think, side projects aren’t done1. You might be able to finish reading a book or watching a run of a TV show, but you’ll never finish that “small” tool you’ve been meaning to write. There will always be something to improve, something to tweak, something to fix.
I decided a while ago to write my own microblog. This “small” app was supposed to serve two different purposes:
My microblog is now 7 months old and has seen 133 commits to master (at the time of this writing) and isn’t close to being “finished”. And this isn’t even the thing I want to work on as my side project. I’ve spent so much time working on The Small Thing that I’ve barely even started on The Real Thing.
So, presented with infinite things to do, an infinite amount of time that those things will take up, and a spectacularly finite amount of time to do them: how the shit do I actually get things done?
The solution I’m going to experiment with is to explicitly set aside a part of my week that I tend to otherwise “waste”2, and dedicate it to working on a side project. For me, this means Sunday mornings (before noon). I expect most of that time to be spent working on my main side project (a workout tracking app I’m currently calling Swole), but I’m also not going to stop myself from working on projects like my microblog, my dotfiles, or any of my other open source projects if they should catch my interest that week. The important thing here is not necessarily the specific project I work on, but is instead to be strict with myself about stopping at noon and not letting that time spill over into the rest of the day, or the rest of the week. By limiting myself to this specific sliver of time, I hope to see myself be able to focus on my project when I need to, and ignore it during the rest of the week.
As an added bonus here, the short time frame should present itself well to learning (or implementing) small, specific bits of functionality. My hope is that these weekly experiments will easily translate into blog posts on the subject, which will help me improve my writing habits.
See this post by Good Friend And Awesome Person Gabe Berke-Williams: Move Your Goalposts ↩
I firmly believe there’s no such thing as “wasted” time, just time that’s spent with a different set of priorities. See the venerable Merlin Mann’s post Mud Rooms, Red Letters, and Real Priorities for more on “priorities”. ↩
master
, and then deployed to GitHub Pages. It’s a fairly complex process, but it’s a fun side project, and it’s automated enough to fit my needs.
However, because of all these moving parts, I never really nailed down a workflow for writing blog posts on the go. At the very least, I need access to Git in order to publish new posts. So I end up writing and publishing exclusively on my laptop, where I have access to git and vim and my usual dev environment. This deficiency has (I believe) led to the low level of activity on this blog. I only really write things when I have a lot of time and am actively sitting in front of a computer. This means that if inspiration somehow strikes, I tend to not follow up on it. It also means that I’ll start posts, but never finish them because I walk away from my computer.
I’ve been thinking about this deficiency a lot lately, because I’ve been spending a lot of time working on my microblog, where I see mobile posting as being a Must Have feature. I’m probably going to be using the micro.blog iOS app for posting to that (once I write an API), but it got me wondering if there was a good app/reasonable workflow I was missing that would help me to be able to write longer form content on iOS.
Let’s start with what I need from an iOS blogging solution. Turns out, they are fairly minimal:
This is should be obvious. All of my posts are written in Markdown, so I need some basic ability to write/edit markdown. This requirement basically boils down to “can write text in it”, because markdown is designed to be easy to write in plain text.
I need to be able to create new files, in addition to being able to edit existing ones. If I can’t start writing when I have that thought “I should write something about this”, the odds of me never writing that post go up dramatically. In addition, I’ll need to be able to create posts in a very specific location (web/posts
, for my repo). I’ll also want to be able to create files with a specific format (downcased, normalized version of the title, with a prefix of the date). There’s a lot to consider here.
This is clearly the big one. If I can’t push to GitHub, I can’t publish. If I can’t publish, then what’s the point (other than, I suppose, getting my thoughts out of my head to publish later)? This is definitely going to be the sticking point for me.
In addition to the bare minimum things I know I need, there are some things that would be super nice to have if possible:
I think my ideal here is a full-screen interface with as little chrome as possible. Some markdown helpers are fine, but probably not too many.
Sometimes, I don’t want to just post to master
, and would instead rather push to a branch so that I can open a PR for other people to review. I don’t do this super often (I don’t blog super often), but I’d like to have the option if I can.
I don’t know that I care too much about how drafts are handled, but I definitely want some way to handle them. I’d like to then be able to “promote” drafts to a “published” state. At that point, I’d want to either prepend today’s date to the file name, or update the date that the file name already had.
I’d like to be able to use one workflow for my blogging, no matter what blog I’m writing for. For example, the thoughtbot blog source code is also hosted on GitHub, and works in largely the same way that this one does. If I could re-use my workflow/app to post to that blog, I might contribute there more frequently as well.
I need a pretty specific format for my YAML frontmatter for my posts. It’s not a complex format, but I do forget what the format is literally every time I go to write a post. Automating that away would be a huge time saver for me.
The first thing I did was look for an existing application that fit my needs. Unfortunately, this is all pretty hard to search for, so I didn’t turn up much. But I did find OctoPage. It’s an iOS app that authenticates with GitHub and lets you write/publish new files. It even lets you choose a different repo to look at, although the UI around this is pretty clunky.
However, it’s actually impossible for me to give OctoPage a fair shot. The developers decided to hardcode the paths for drafts and posts according to Jekyll’s conventions. And since I’m not following those conventions, it can’t find my posts or my drafts. Bummer. There’s almost definitely a market here for this exact app, but with configurable paths.
I think that, given unlimited time, I would probably build a solution that hits all of the points above. But I have very little time as is, so instead of spending untold hours building something completely custom, let’s see if there are existing pieces that I can use to make up the whole.
The first step is the most important. I need to be able to push commits up to my repo. After some looking, I’ve settled on Git2Go as a GitHub app. The UI is really nice, it will allow me to jump around between repos/branches at will, and even do some light editing if needed. Critically, it also has pretty robust URL scheme support, that I’ll be able to use with a markdown editor in order to be able to publish posts.
Since this is doing so little, there’s not really too much setup that needs to happen here. Once I’m authenticated with GitHub, I just pull down my website-source
repo and I’m ready to go.
I looked at a few apps for this, and ended up with a bit of a compromise between power and usability. What I’m looking for at this level is a nice editor that makes it easy to quickly create posts, not too painful to edit them, and simple to send them over to Git2Go for publishing.
My first stop was to check out 1Writer. It has a really nice distraction-free UI and you can create custom actions to perform with/on your documents. To top things off, you can even set Git2Go as a file location, which lets you open up files from your git repo directly in 1Writer.
I was able to create a neat URL scheme action for 1Writer that would let me send the current file to my posts directory in Git2Go. They also allow people to publish/share their actions, so here you go. You’ll almost definitely want to modify the path if you choose to use it, but its a reasonable starting point.
I really wanted to stop there. It was almost perfect. I wish I could use 1Writer. But ultimately, it wasn’t quite powerful enough. So in the end, I settled on Editorial.
Editorial is almost absurdly powerful. Instead of single actions you can perform (like 1Writer has), Editorial can handle workflows built from any number of arbitrary actions. And where the actions in 1Writer are fairly simplistic (consisting of a single input and a single output), Editorial workflows can contain variables, loops, conditionals, you name it. They can use editor commands, URL schemes, or even arbitrary python code (1Writer has JavaScript actions). This means we can do things like formatting today’s date and prepending it to the blog post file name before we send it to Git2Go so that the publish date is set properly.
As with 1Writer, Editorial has a website set up to share these workflows, so here’s mine.
In addition, these workflows can be used to create custom file templates. We can actually use custom text input to get the name of the blog post, then use that name to generate a downcased, normalized file name. Then we can add that original name to the yaml frontmatter for the post. Really crazy stuff. Unfortunately, I can’t for the life of me figure out how to share these templates, so you’ll just have to take my word for it.
Finally, Editorial’s preview feature lets you custom the HTML, and you can even link external CSS. So I’ve actually set up my preview theme to pull the CSS directly from my website, while also using the same basic HTML architecture. When I preview a post now, it almost looks exactly like it will on my blog.
I’d like a nicer editing interface. 1Writer is beautiful. I’d love it if either 1Writer got more powerful workflows, or if Editorial got a bit of a UI makeover. Either way, I’d be happy.
I’m also not crazy about the fact that my drafts live outside my blog repo. Even worse, drafts continue to live outside the context of my blog repo after I publish them. I’ll have to do some continual maintinence to keep my Editorial Dropbox folder clear of published drafts. It’d be nice if publishing a post would remove it from Editorial as well.
All in all, I think this is going to be really nice. I wrote (and published) this post using this workflow, and I’m super happy with it.
]]>My relationship with alcohol on the other hand, is a bit more… complicated.
Growing up, I was never a drinker. I dropped/got kicked out of college (a story for another time maybe), but not because I was partying (I wasn’t), I just wasn’t good at doing school. It actually wasn’t till I was out of school that I started drinking. But even then, I didn’t really like drinking, I just did it because other people did.
I moved from Texas to Massachusetts the week before my 21st birthday. Being in an unfamiliar environment, trying to meet new friends, alcohol became a way for me to socialize and meet people. I made some good friends, and drinking was just the thing we did. We’d get 40s of St. Ides Malt Liquor, get shitfaced, and watch Lost. We’d drink bottles of wine and watch foreign films. We’d drag my little brother (18 at the time) to the sketchy bar down the street and get plastered on Miller High Life (still maybe the worst hangover I’ve ever had). But that was OK, because hey, we were in school and young and partying out of control was the thing to do.
And holy shit, the drunk stories I acquired during that time. For example: I accidentally ran from the cops once. I was walking home drunk and they had reports of someone looking in cars with a flashlight. They stopped me, and when they went to their car I thought they left, so kept walking. About a block later I was surrounded by cop cars and having to answer questions. The cop in charge commented on my “thick Irish accent”, an obviously racist joke I didn’t actually get till like a week later.
Fast forward a few years, and I’ve fully embraced craft beer. I am drinking, and I enjoy it. I’ve become a hop-head and start looking for the hoppiest beers I can find. I collect beers, brew beers, read about beers. I’m a full blown beer snob. My love for craft beers even led me down my current career path.
And still I acquired stories. Turns out, I’m a fun drunk. I’m an extrovert where I’m normally introverted. I’m funny and I want to talk to people. People like me when I’m drunk. And I can drink, too. I can drink a lot. And so I don’t ever have to be the wet towel that has had enough, the one that needs to go home, the one that ends the night. I can be the last one standing every night.
A few years later and now I’m drinking bourbon. I love bourbon. All bourbon. I drink it straight, or maybe with a single ice cube. I love the bite of the bourbon, the smell, the sweetness. But, it hits me hard. Harder than beer. So something starts to change for me. I’m not just staying out all night anymore, I’m getting much drunker. I’m starting to act erratically, I’m starting to black out fairly regularly.
But hey, I’m still so much fun when I’m drunk. I’ve taken to stealing things when I’m drunk. Not anything serious, but I pick up things that are lying around me. Road cones, signs from hotel lobbies, that kind of thing. Everyone laughs, it’s hilarious, Gordon got drunk and stole another sign from the lobby, great stories.
A couple of years ago I started noticing something that really bothered me. I had developed a reputation as a drinker. As the drinker. People make jokes and they mean well, but it starts to land differently. I have a slack notification set up for “beer” and people are using it to get my attention. We have “too much beer” in the office and I’m being counted on to get rid of it. These kinds of things become more and more frequent. Drinking has somehow become part of my identity. And that starts to make me wonder: am I in control here?
I push those questions down, as you do, and move forward. I keep drinking, I keep having fun, people keep liking me. But I’m also fighting with my wife about it more. I come home drunk, sometimes blackout drunk, she gets mad, I apologize, say it won’t happen again, rinse, repeat. I know I’m in control. I have to be in control. How could I not be in control?
So I decide to prove it to myself. I take a month off drinking. It surprises people. They can’t believe that I‘m not drinking. But I just say things like “yeah, just taking a break for a while”. No big deal.
At the end of the month, I go back to drinking. I’m fun again. I’m the life of the party again. I’m blacking out again. I’m fighting with my wife again. I’m putting myself in danger again. I’m out of control again.
So I take a break again. See? I’m in control. No big deal. I don’t have to drink. Month ends, back on that horse. Getting blackout drunk and getting lost in New Orleans, missing a night of one of my best friend’s bachelor party. Getting blackout drunk and being too hungover to attend the end of a conference. Getting blackout drunk and stumbling a mile home in the dark and in the snow and sticking a good friend with an $80 Uber bill. Getting blackout drunk and causing my wife to stay up all night to make sure I’m still breathing.
This isn’t fun anymore. These stories aren’t funny anymore. This doesn’t work anymore.
I don’t have a drinking problem the way most people think about drinking problems. I don’t get the shakes. I haven’t lost any jobs because I’ve shown up drunk. I’m not struggling keep away from the bottle. I don’t feel the need to avoid alcohol in every form at the risk of going on a bender.
But that doesn’t mean I don’t have a drinking problem. I’m incapable of saying no. I’m completely unable to walk away from drinking once it’s started. If I have 2 beers, I have 20. If I have one glass of bourbon, I have 10. That is my drinking problem.
So I’m not going to do it anymore. I’m not going to be the funny guy. I’m not going to be the life of the party. I’m not going to be the guy with the stories. But I’m also not going to be the guy apologizing to the people he loves. I’m not going to be the guy that misses things because he’s too hung over. I’m not going to be the guy that puts his life in danger. I’m not going to be the guy out of control.
At the end of the day, this is a relief for me. This is something that I don’t have to worry about anymore. It’s not a question that’s going to plague me every time I wake up after drinking too much.
Am I in control of alcohol? No.
If you want to talk about this (or if you need a DD) feel free to shoot me a line.
]]>Week 9:
Whole bunch of milestones this week.
First up, I finally hit 135 on my overhead press, which means I’m up north of a full plate (45lbs on each side). This lift is really starting to push it for me. I’m happy that I’m finally over a full plate for all of my lifts, but I think I’ll start failing here before too long.
I also crossed the 300lb mark for Deadlift. I didn’t cross into 3 plates (315lbs) until the next week, but crossing over 300lbs means that I cross the arbitrary mark that I set for myself where I start using a switch grip instead of a double overhand grip for deadlifts. Next stop: 405.
Maybe the biggest victory for me this week was breaking the 250lb mark that I used as my 5 rep max back in week one. So that feels fairly major. I can’t say if my one rep max has jumped over the course of this program, but I feel like I have a lot left in the tank, even after crossing this milestone. So that’s probably a good sign. I think I should test my one rep max after these initial 12 weeks are over.
On the flip side of the coin, I started experiencing some knee pain in my right knee this week. I have horrible mobility in my hips and ankles. Always have. It’s something that I’ve been fighting against basically my entire life. On that 300lb deadlift, I noticed that my right knee was far from stable. Getting down into the starting position felt really shaky. I’ll come back to this in a bit.
This marks the (recorded) high watermark thus far, even though I’ve done another week since. I actually did another workout the following Tuesday, hitting 265 in my squat, but I missed the rest of the week, and so I ended up tossing the workout. Following the StrongLifts plan, I deloaded 10%, and came back for week 10:
Ok, so I didn’t deload everything. I didn’t want to drop back below 300 on deadlift. So there’s actually no record of me hitting 3 plates, instead it looks like I just jumped past 315 and went straight to 325. I still have enough room with this lift that I feel comfortable forging ahead.
The StrongLifts iOS app also added arm work this week. They… didn’t update their layout code unfortunately. The fact that those boxes are cropped in the screenshot wasn’t a mistake on my end, that’s just what it looks like on the device. Super fun.
The arm work adds 3x10 dips to the A workout (squat, bench, row), and 3x10 chinups to the B workout (squat, press, deadlift). The way you’re supposed to do it is max unbroken sets, up to 10 reps. Rest and repeat. I’ve been doing all 10 reps each set, but only scoring the unbroken ones. So for example, that 10/8/5 score on Thursday means I hit 10 unbroken, then 8, then
The arm work is a real ego buster. I realized how much I suck at chinups today. It’ll be nice to watch this progress.
Following up my knee issues from earlier, I had a minor breakthrough with my squat stance on Thursday. I finally let myself widen my stance about another inch. This puts my feet just outside shoulder width, but also means that my feet don’t get knocked out to the side because of my poor mobility. That keeps my arches from collapsing, and prevents me from putting as much stress on my knees. It’s probably the most stable I’ve ever felt squatting before. I’m still going to fight for better mobility, but it’s nice to know that I don’t have to injure myself to keep progressing.
Like I said, with the exception of deadlifts, I deloaded everything by 10% for this week, so there aren’t really any big milestones here. Week 11 will look a lot like week 9 did, and then we’ll hit some new milestones during week 12.
]]>Things are heating up. I’m now 10lbs under what I started with as my 5 rep max for Squat. Still haven’t failed a rep. That’s almost certainly coming soon, though. The squats, and OH Press specifically are getting really spicy. I’ll hit 145 (full plates) on the OH Press tomorrow, actually, which will be a significant milestone.
Notice that I jumped 10lbs on squat between Wed and Sat, instead of the normal 5. That’s because I was at a new gym over Thanksgiving break, and could not for the life of me find 2.5lb plates. Finally found them because I wasn’t willing to jump that much for OH Press. One was on a random machine, and another was under a machine on the other side of the room. When I got home, I looked up how much a pair of 2.5lb plates from Rogue would cost. Seems like it might be worth the $8.
]]>