I’ve finally found a solution to my personal knowledge base. I’ve tried: Evernote, Trello, tiddlywiki, org-mode, vim with folding, Journler, Wunderlist, Google Sheets, PlainText, and probably some others I’m forgetting.

Workflowy ticks most of my boxes, enough to make me switch completely, and more than any other product I’ve tried before.

Those boxes are:

  • Zoomable – Any item can be ‘zoomed into’ to become the top level. This makes for very effective infinite nesting. My top level is just a list of ‘folders’, within each folder is projects or items, within each of those is a list of categories, like To Do, Reference, or Ideas. Within each of THOSE are actual data points, and under the data points potentially notes or further descriptions. The item I’m writing this paragraph in right now in Workflowy is nested four levels deep. Writing -> Blog Posts -> Workflowy -> Draft.
  • Future proof – By exporting a plain text version of my entire document tree to my Dropbox each night, the service could disappear tomorrow and my data would be safe.
  • Multiple platform – the iOS apps work great, the Webapp is even better, and offline syncing works great.
  • Fast – Really, really fast
  • Easy – Doesn’t get much easier.
  • Tags – Tagging let’s me replace several other apps. With tags like #daily-exercise in my daily log section I duplicate and edit each day, I can mark it as complete or not, click the hashtag and see a record of what days I completed the goal and which I didn’t.

So far the only things it doesn’t do that I wish it would are¬†Photo upload and Item to item¬†linking.
But rather than complain about that, I wrote a user script to add these, and many other features! Workflowier

Also it supports Unicode so I have nifty icons for my lists!

Obviously I wrote this post in it as well. Give it a shot.

And here’s what the draft for this post looked like in Workflowy:

jQuery Date Select Boxes Plugin

View Demo

Get the plugin: Date Select Boxes

A simple way to implement smart date select boxes. Given month, day, and year select boxes, this plugin will automatically populate the day select box with the proper amount of days for a given year and month combination, taking leap years into account. Includes and uses jQuery Select Box Manipulation plugin.

Usage: $().dateSelectBoxes($(‘#birthMonth’),$(‘#birthDay’),$(‘#birthYear’), keepDayLabel);

Where keepDayLabel is a boolean to say whether or not you want to preserve the first element in the select (e.g., a value-less, descriptive option used as a label (e.g., ‘day’))

View Demo

How to Undelete files over SSH with Foremost

We’ve all been there. You’re SSH’d into a remote server, trying to delete a folder.

$ pwd


Ok, I’m in the right folder.

$ ls -al to_delete/

total 12
drwxr-xr-x 3 ubuntu ubuntu 4096 2010-11-23 09:09 .
drwxr-xr-x 3 root root 4096 2010-07-15 17:31 ..
drwxr-xr-x 5 ubuntu ubuntu 4096 2010-04-09 15:11 source

Ok, that’s what I want to delete. I’m positive I want this thing gone, I’m going to replace it immediately.

$ rm -rf to_delete


(three seconds later)

SHIT! I needed that!
Continue reading