HACK / MAKE

Rain or Shine

We set ourselves up for success or failure by the commitments we make and follow through on. Failure is always an option but not always a choice—sometimes it’s inevitable. The choice you have is to show up, rain or shine.

Do you love baseball so much that you would keep playing in the rain if you could? Would you commit to running in the morning or biking to work everyday, rain or shine? Would you stick by your girlfriend, best friend, wife, coworker when everyone else has given up on them?

Some people commit to the wrong things and they’ll be greedy and hurtful all the time. They’ve trained themselves to do this by being that way on the best and worst of days.

Train yourself to behave, do, create, meet, and explore the way you want to by doing it no matter what. Being committed means showing up regardless of how tired you are, how messed up things are, or how little you feel you have to offer. You can’t just say you’ll be a good leader, husband, friend, father, boss, and then pull it off when the time comes. You have to practice and commit to the lifestyle, attitude, and behavior, rain or shine, so that when the hard parts of it comes along, you’re better prepared to ride out the storm.

What is it you will do rain or shine?

Markdown Language Setting for New BBEdit Documents

Here’s a great defaults write option for setting Markdown as the default language for any newly created BBEdit documents.

defaults write com.barebones.bbedit DefaultLanguageNameForNewDocuments -string "Markdown"

Whether you go File > New > Text Document, or have a scripted hotkey, by setting this you won’t have to change the language manually to get pretty syntax highlighting for you Markdown files.

You can find more of these options in BBEdit by going to Help > BBEdit Help > Expert Preferences.

Text File Notes in Things.app Repeating Task and Projects

Cultured Code’s Things has been my go to to-do app for years. It has the simplicity I want while having a full feature set. Recently, I’ve been working more with repeating scheduled tasks and projects and have found that the notes system for it isn’t as robust as I need.

I’ve created a multi-step project called “QA & Deploy” that repeats on Tuesdays and Thursdays. Throughout the week, we will have git branches that need to be QA’d, merged, and deployed to production and I’ve been keeping track of these in Things project notes. The problem is that if it’s not the day that the project has moved from scheduled into today, any notes I add to the project are actually made in the project template rather than Tuesday’s instance. Ideally, Things would create instances for this weeks recurring projects in Next which are separate from the template, but knowing Cultured Code’s history with updates, I’m not holding my breath.

I created a workaround using flat text files and Alfred. I used a really basic shell script to create a new .txt file in an arbitrary directory (~/Dropbox/Library/Things/documents) with the filename being the query in Alfred.

This makes it simple to pop open Alfred, hit the command to create a new Things document, and type in the filename I want. This document will then open in whatever application you set in the script, for me BBEdit, and you’re ready to add your notes, save, and drag the file thumb from the title bar into the Things project note area. You’ve always been able to add file references to Things tasks but this system makes it simple to create and puts the file in a place that won’t ever get deleted or moved, so the reference is always active.

What you gain from this is being able to have better project templates where you have more control over the notes. Your repeating tasks and projects will always reference this file so you can have consistent notes if you want or if you don’t, still have a better way to manage them. You get to have your notes in your favorite text editor, with all of the advantages that has rather than the simple text field in Things.app. The downside to this method is that you won’t be able to edit your project and task notes directly in Things for iPhone and iPad, but if you put these documents in Dropbox—which you should—you can edit them in a better text editor there too.

I use this script for Things notes, but all the script does is create a file with whatever extension you designate in the script, in a specified directory with the filename you give it in the Alfred query, so you can let your flat-text-file-imagination run wild and use the script for whatever .txt needs you have.

Download the Alfred extension

Bonus: With both this system, and the one I created for scratchpads, I wanted the new text files I created to open with Markdown syntax highlighting. To do this in BBEdit, go Preferences > Languages > Custom Extension Mappings and add a new mapping for .txt to the Markdown language.

Jotting Notes and Stealing Ideas

I don’t read back through my Field Notes often enough and it’s 48 pages don’t get filled quickly enough. But as I sat down and flipped through the last few months of scribbling, I noticed something; it’s full of great stuff. The best ideas aren’t mine, though. There’s wisdom from books I’m reading, things from sermons and podcasts, and conversations I’ve overheard. There’s the odd good thing that I can claim ownership of, though it’s probably nothing that hasn’t been thought of before. There’s also lots of crap—doodles and bad math, rhymes and prose that aren’t worthy of any place other than getting shoved back into my pocket.

Paging through the little book, I found that even though the ideas weren’t all novel or penned by me they became mine in the way they were threaded—connected—page by page, in the same messy scribbles, in the same voice and shorthand, all working together towards the same goal. They’re just as much mine, now that I pulled out a pen and made a mark, as the person who first put them to paper. Writing that idea down made it real for me and put it into existance while not taking anything away from anyone else. It’s a positive transaction. Steal as many ideas as you can. Piece together the things other smart people do and say and build them into your platform.

When you capture an idea it’s just a small piece of something bigger. Something you can’t really picture or describe yet. But when you look back through the pages you start to see how the ideas connect and the shape of that something begins to come together.

Cultivate that. Put back into it. Keep stealing so it can keep growing. Then give it all away so someone else can steal.

Appetite and Limiting Hunger

“It is necessary to handle yourself better when you have to cut down on food so you will not get too much hunger-thinking. Hunger is good discipline and you learn from it.”

—Ernest Hemingway

Our bodies have natural needs and desires. When we need more our bodies start telling us. Our appetite defines what it is we seek to satisfy our hunger.

I have a regular dinner menu that is simple, healthy, and satisfies me. I’ve had the same thing for dinner three or four times a week for nearly the last six months. I’m intrigued by foodies but wonder about their appetite. Are they so driven to explore the palates of different recipes and cultures that they are unable to enjoy the simple staples anymore? I enjoy great food but it’s not something I depend upon. My hunger is elsewhere so I choose not to spend the time and money on searching for recipes, shopping, and cooking. I focus my appetite on other things.

What is it you’re hungry for? If it’s something broad like “success”, do you know what the next steps are for you to “succeed”? What if you’re hungry to make that clackity noise as much as you can? If that’s your hunger, it can be satisfied if you just keep on writing. Do you know what can satisfy your hunger?

It’s great to be hungry for big ideas, big change, and big successes but having an appetite for the simple staples that will lead you to something bigger helps focus what you pursue.

Patrick Rhone, in his book enough, puts it perfectly:

When one defines intention, values, and purpose, limitations create themselves.

When we define what we’re hungry for we recognize what other things matter less. Limits are created; not limits as to what we can attain, but limits on what we choose to pursue. Focus.

When we “get too much hunger-thinking”, as Hemingway puts it, we are distracted. We think about all the different things we want to do, most of which we never pursue. Learning how to suppress your hunger for things that don’t matter turns your hunger to the appetites that do matter.

Be hungry for things that are bigger than you. Be hungry for things that are true and good. Have such an appetite for them that you will suffer for and because of them. Suppress your appetite for anything else.

Find your hunger and stay hungry.

Daily Scratchpad Script Hack

I’ve been on a hunt for a reliable way to collect notes throughout the work day. I need a place that I can brain dump and use as an inbox. I use index cards a lot and like them, but they are not searchable or archivable. Text files are great for that but they can be a pain to manage. I like BBEdit’s use of scratchpads in projects and wanted to mold that into a system that’s easy to initiate, manage, and comes along with the benefits of flat text files.

For a while, I used BBEdit’s single Scratchpad.txt file and just set a hotkey in Alfred to open or display the little window. With this method I wouldn’t keep the text, just delete it and have a fresh Scratchpad.txt when I felt like it. I also played around manually creating a new scratchpad text file daily, but the point of a scratchpad is that it’s just always there when you need it, no fuss.

Today, I finally broke down and made an Applescript that is initiated by a hotkey via Alfred. I hope it will solve my problem. It does three things:

  1. Creates a new date-stamped text file for today, if one doesn’t exist
  2. Opens up today’s date-stamped text file, if the file already exists
  3. Sets the window size of your last scratchpad text file1.

This solves for a few issues. It makes management easy because I don’t have to manually create a new file and name it with today’s date stamp, scratchpad files are only created when I need them so I don’t have hundreds of empty text files, and the most important thing: it’s always where I need it to be, one keystroke away.

You can download the script if you’re interested. To use the 12-01-31 date format in the filenames2 you’ll have to change the format in System Preferences > Language & Text > Formats > Customize. The script is set up with my path and filename preference but you can obviously change it to anything you’d like. You’ll also be able to make it work with TextMate, TextEdit, or whatever editor you use by changing which application you tell.

I’d love to know what kind of Applescript/text file hacks you use. Tweet me or email me at the links below.


  1. BBEdit opens up new windows pretty large, especially on a Cinema Display. 

  2. This is the output of short date string of (current date)

Tools Are Just That

We’re lucky to have an abundance of tools—insanely great ones—to use in our daily life. Consider the technical feat of some of your tools. I use a MacBook Air that’s 0.68 of an inch thick and not even 3 pounds, an iPad that has the most incredible screen in a consumer device that didn’t even exist two years ago, and an iPhone that has more computing power than PCs from recent years in the palm of my hand. These devices run incredible software that are created, often, by independent developers that care about how people feel using the apps and have the accuracy of pixel-perfect design.

We’re spoiled. The quality of these tools makes it easy to be distracted from the fact that they are just tools. Yes, they make our lives and work easier, they can make it more meaningful, and can connect us together. Even with this, they are just the medium or method that we do and create.

You aren’t your tools or even the output of your tools. I see developers listing their choice of Textmate, the newest, most expensive Adobe suite, and whatever other dev tools they use on their website just as prominently as the work they’ve created, like somehow the apps they pick make them better at what they do. Clients don’t care about your tools, they care about your work. Don’t define your work by the tools you use. A great writer can sit down in front of any tool and write—paper and pen, Apple Extended Keyboard II, typewriter, or distraction-free whatever. Their tools are a method to create and what comes from their tools is a product of their genius, not some software.

Still care about your tools. Use the best that you can but understand that better tools don’t necessarily make you a better creator. Use them in ways that liberate you to create. Don’t let the fear of damaging your tools stop you from using them as they were intended. A wrench doesn’t get left in the toolbox just so it doesn’t get scratched up; yet it shouldn’t get left in the rain. See tools as the gear that equips you to create but not the sole thing that enables you.

Own your tools—know them and care for them—but don’t let them own you.