Browsing the archives for the Productivity tag.

Always be Knolling – the joy of auto formatters

work safe

Knolling is the practice of aligning your tools in your work area so they are easy to grab, easy to place down, and out of the way. In many workshops where the focus is on creativity and the work, the phrase Always Be Knolling has become a mantra of working clean and fast with respect to your tools.

Small things matter. Until they don’t.

There is a pattern adopted by many self-considered elite thinkers. They wear a Personal Uniform instead of a wardrobe. Steve Jobs was iconic in his turtle neck, jeans, and New Balance sneakers. Likewise, Albert Einstein wore a Gray suit and white shirt every day. The modern productiva have latched on the the ‘Personal Wardrobe’ as both a productivity hack and as a personal brand. They reveled in the ability to reduce the ‘trivial’ choices that let them spend their time on more important things in life.

While I don’t find the same joy in sartorial pursuits as some folks do, this does feel like either the girl who only eats chicken nuggets or that one guy who build a personality around a band he liked at age 14. Why was it always Metallica? However, I do have one winter jacket. We each have things we care about and things we don’t find interesting.

And that’s why the number one code review comment I HATE and never want to see again is someone taking time out of their day to take time out of my day to tell me the indentation of a section of a code file is ‘a bit wonky. Could you be a sport and fix it?’, just because their tabs happen to be set differently to mine in an xml file we should be editing with a designer anyway, but it was just easier because designer tools often fall short.

The compiler don’t care, and some days neither do I.

In some ecosystems this is solved using a code formatter or linter. The Go language and Elm both have community wide standards they use with no configurability. This means the triviality of which line gets the bracket is never going to be argued over. Not once.

And it may not suit you perfectly, but having a house style is useful.

Long story short, all your code should be formatted before it’s committed. And you shouldn’t have to think about it. Either Format when Visual Studio Code saves, or Learn how to use git hooks to apply formatting.

It is always much easier to clean as you go. And the best cleaning is when you don’t even think of it was ‘work’.

Comments Off on Always be Knolling – the joy of auto formatters

Getting it done – across platforms

work safe

I’ve been trying for years to find the ‘one true way’ to capture all my todos and notes and stuff. I’ve tried a few systems that worked fairly well, but there were always some catches.

Using a Hipster PDA, I had to make sure I had it with me. I had to remember to pack it. It didn’t handle long notes, nor electronic notes.

I’ve used Things by cultured code. It’s great, because I always have my iPhone in my hand. It syncs with my Mac and my iPad. It has recurrence, long notes, and notifications. It is great. But it misses out because I can’t use it on my computer at work. Out of sight, out of mind.

I tried TaskPaper from HogBay software shortly after getting my first Mac. It was really cool, because it used a plain text file that is human readable and stupid easy to parse. I’ve even used it as an example in a DSL talk I once gave. I could use the same todo file both at work and at home. But I had to carry that file around on a thumb drive.

Until I came to a recent revelation. There is a TaskPaper for iOS that syncs to Dropbox. I use Dropbox. Taskpaper’s file format already has a Vim plugin at work. It works with task paper on my home Mac. It works on my phone and iPad. It is simple and easy to use. And flexible enough for just about anything.

Just for fun, here are some Taskpaper vim commands. And so I can find them again.

\td – Toggle Done – @done(2012-1-24)
\tx – Toggle Canceled – @cancelled(2012-1-24)
\tc – Show Context
\ta – Show All
\tp – Fold All Projects

What are the next steps?

  • It doesn’t give me reminder, so I need a helper app to find things due today and alert me. It’s easy to parse and just needs a command line app run by the OS scheduler that sends an email with today’s agenda.
  • It needs to quickly open my dropbox file and a work only file that doesn’t sync over Dropbox (google Export Controlled). This will most likely just be a shortcut on my desktop to vim and two files.
  • Vim isn’t the prettiest user interface, so I may get sucked back in to some side project WPF development.

I’ve only been doing this for, like, a day. Let’s see how it goes!

1 Comment