September 2008 Archives

Two mac apps that I cannot live without

I do not like paper. It has a high latency seek time. Insertion time onto paper is slower than a keyboard. Insertion time of paper into a “filing system” is high latency – unless the filing system is well sorted. Sorting a filing system is high latency. Maintaining a filing system for paper is attrocious because it’s non-portable and difficult to replicate/backup.

There are so many reasons that I hate paper.

And that’s why I need my Mac

So, yes, I’m serious. These Mac apps enable my life. Without them, I would be forced to use paper.

So here they are and why:

  1. Devon Think Pro Office: It’s literally the database of my life. When I receive an evil piece of paper, I scan it (via Fujitsu Scansnap), OCR it, and store it in DevonThink. Within DevonThink, I can tag and easily search documents by both tags and OCR’d content.
  2. Things: Yes, I admit it: I’m a GTD freak. Until recently, I was an OmniFocus adherent. However, I found that OmniFocus resulted in a kind of cognitive overload for me. Things is far less structured and therefore less like the high maintenance paper filing system that I allude to above. Things does support tags (see a trend forming?) as well as the typical GTD Projects and Areas. An “Area” is not a GTD “Context”. That is, Projects do not go into Areas. They are more generalized than that. They’re a sort of catch-all for anything that doesn’t neatly fit in a Project.

Posted by evan on Sep 30, 2008

Plain Text Stories at DCRUG

I attended possibly my last DCRUG before my wife and I relocate to just outside of Ocean City, MD. Paul Barry gave a rehash of his Merb presentation from NoVaRUG from a few months ago. I presented on plain text stories.

I had initially planned to only talk about RSpec Plain Text Stories. However, I’d had researching Cucumber on my mental TODO list (shame on me for not having it in my trusted repository; GTD FAIL) so I took the opportunity to indulge.

And to excellent effect.

Cucumber seems to make up for most of the deficiencies in RSpec Plain Text Stories (see slides for more details). However, one seeming flaw that numerous members of the audience and I all found is that substitution points/arguments/parameters are specified in the code via regexp but not in the plain text.

For instance:

  Given a prerequisite of some kind
  When I do something
  Then some expectation should be met

  | prereq | action | test  |
  | Foo    | bar    | blech |

… does not indicate to the reader where Foo, bar, and blech will be substituted into the Scenario. Everyone homed in on this seeming weakness.

The general consensus at DCRUG seemed to be that something akin to the below would make more sense:

  Given a prerequisite prereq
  When I do action
  Then test should be met

  | prereq | action | test  |
  | Foo    | bar    | blech |

… seems a simpler alternative. Also that the Scenario, as described above, would only execute once using the FIT table at the bottom for parameters. The Scenario, as declared in the second example, becomes a template of sorts.

I hope to reach Aslak to discuss this. Cucumber looks like a huge step in the right direction in every other respect.

Plain Text Stories presentation

Posted by evan on Sep 11, 2008