opinion

Pure Mac

Posted in opinion on June 12th, 2009 by ben – Be the first to comment

This week, I’m a happy geek: I was able to persuade my boss to buy me a Mac as my new workstation. And although Apple freshened the notebook line in interval between the order being placed and it actually arriving at my house, I’m very happy with the 17″ MacBook Pro as-is. But the point of this is not to get into the specs or version envy, it’s about why I’m so passionate about it being a Mac.

High end, portable power. 32-bit windows has an upper limit on usable RAM at ~3G. Our development environment isn’t that fat yet, but it’s only getting bigger. Running Eclipse, Tomcat, MS Office, InDesign, MySQL, a couple web browsers, and it’s quickly approaching the point where you start taking a huge performance hit for paging your apps on/off disk.

The only answer is to get into a 64-bit OS to address more memory. I don’t want to fight with 64-bit windows, since I’m not confident in all the compatibility stuff (notably our VPN software). Apple has successfully made the switch between CPU architectures and OS architectures multiple times, so I’m confident there won’t be 64-bit issues with the software. The 17″ MPB can hold 8G, and I plan on using it.

The alternative is Linux, with the windows-specific stuff running in a virtual machine. That environment, however, would be even more “out there” in our company – at least the Mac has some core use the publishing areas.

Better productivity software. Your computer workstation is your main line to getting things done, and it should support you in that by getting out of your way. I haven’t seen anything in the Windows world that can rival the ecosystem around AppleScript and application interoperability that is designed into OS X. Specifically, I plan on becoming a Quicksilver ninja. Quicksilver is to computer productivity as J.S. Bach is to music: every time you sit down with it, you can find a new nuance that makes you appreciate it more. The best resource I’ve found, even though it’s completely dense,  is a PDF enumeration of all the features and plugins.

The other huge productivity win is Spotlight. Built-in full text and file search across the entire machine is like having a private Google. I admit, I never tried Google Desktop,but I’m more confident in Spotlight, since it’s built-in to the OS, and developers are encouraged to make their files compatible with its indexer. Entourage (aka Outlook for Mac) by default extracts copies of all attachments to a cache in your Documents folder, enabling Spotlight to pick them up. I’ve been able find attached file content in single-digit seconds this week, a task I’d often downgrade to a manual filename search, taking at least a minute.

And then there’s OmniFocus, with its rich iPhone integration. I’m just getting started there, so I’ll have to save that for a future post.

I’m also banking on OmniGraffle, an alternative to Visio. A picture is worth a thousand words, and the better looking your picture, the more it’s taken seriously. The defaults in Visio are just ugly, reminiscent of a 80’s flowchart stencil barfing on your paper. OmniGraffle, on the other hand, has gorgeous defaults, tasteful shadows and curves that let you create a picture worthy of your ideas. If the defaults aren’t enough, check out the user contributions at Graffletopia.

Honorable mention:

  • UNIX. The power to drop down into a command line and stitch together a series of commands for a complex search or file manipulation is unrivaled. Among geeks, this counts as productivity tools
  • Time Machine. How many people backup their laptop regularly, or go to the trouble of buying decent backup software? Now, I just plug in an external disk and forget about it.
  • Battery life. How much time is wasted in meetings crawling under the table to a power strip? I’m consciously going to leave power supplies back at the desk: walk in and flip open the lid, ready to start.

I’m not even going to try and debunk the “macs are more expensive” myth. Given all of the above, even if you thought there was a premium for the Apple brand and hardware sexiness, the delta can still be justified by all the other gains.

Pragmatic Bread

Posted in opinion on January 1st, 2009 by ben – Be the first to comment

According to Larry Wall, the first virtue of a programmer is laziness:

The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don’t have to answer so many questions about it

I attribute this virtue to Jeff Hertzberg and Zoë François, authors of Artisan Bread and Five Minutes a Day.  They went through all the tradition and legend of artisan bread baking, questioning everything, and reduced it to its essence, and then documented it for the rest of the world.  

Unlike all those Dummy books that promise to let you learn X in 24 hours, this book lives up to its title.  It really is 5 minutes a day, and you’ll always have amazing bread to go with your meals.

Amy and I are mere beginners in this endeavor, but nothing has come out less than excellent in our tries.  The folks we share with are all suitably impressed, too.  If you don’t have the book, we highly recommend it, and giving it a try.  

As disclosure, a co-worker of mine, Graham, is married to Zoë.  Other folks on the team have tried this and give equal reviews.  It’s fun to hear his stories of the runaway success of the book.  She also has a blog, covering more details and other delectable edibles.

Task-focused GTD systems

Posted in opinion on December 30th, 2008 by ben – 3 Comments

Abstract: A primary disconnect of GTD systems is that they are more interested in the data than the actions.  

As an analogy, let’s pretend you are are tasked with starting a new rocking chair manufacturing company. Would you rather have

  1. A pre-designed assembly line that had all the jigs and supplies for the steps involved in building your product, or
  2. Norm Abrams-style workshop (à la New Yankee Workshop) where you have every imaginable high-end tool needed to craft anything out of wood?
I’m hoping you’d choose #1 (since the question wasn’t whether you aspire to be a craftsman).  The key here is that choice #1 is a task-oriented solution, and #2 is focused on the materials and tools.
GTD focuses on the “next action,” driving you toward tasks that you can process through with less mental baggage than abstract project goals.  It is this decomposition of projects into the next actionable tasks that causes so many “ah hah” moments for new GTD disciples.  In hindsight, it’s obvious, but it’s a fundamental shift for most folks.
The trouble is that most GTD systems are based on the data you use to perform your next actions, rather than the actions themselves.  For instance, Microsoft Outlook has email, calendaring, todo items, notes, etc. – all the tools you’d need for a good GTD implementation.  But it doesn’t help you turn that new request from your boss in your inbox into a todo item that’s due by Friday.   There’s no easy way to take a message you just sent and create a tickler for following up 3 days from now.  I could go on…
I want a system that focuses on what to do with the data, rather than giving me arbitrary ways to organize it.  I want an assembly line that I walk up to in the morning and that enables me to crank through whatever work is on my plate and whatever comes at me.  I don’t need lots of customization of views and fields, as long as I can trust that the system isn’t going to let open loops get stale.
In order to make a new system that has a chance of success, it needs to build on a mental model that blends with what new users bring to the app.  What are other analogies for this action vs. data struggle? What other apps are more focused on the action than the data?
Feedback is welcome,
-benJ

Treating GTD links as first-class

Posted in opinion on November 29th, 2008 by ben – Be the first to comment

I’ve been thinking a lot about a wiki-like system to facilitate the habits of GTD.  It’s a wiki in the sense that everything is an item, and there is no explicit hierarchy.  There are no folders, and no binary parent/child relationships between projects and tasks.

But its not enough to depend on a simple wiki, since wikis don’t treat links as first-class objects.  Wikis automatically link outward from the item to other items referenced in the context, and if they’re good, they can also report which items are linking to items.

If a link were a first-class object, it would have other attributes, such as

 

  • Strength – think of the links that connect you to your friends in Facebook – some friendships are stronger than others, with the strongest being your spouse, weakening down to the point of the folks you added just to play Mob Wars
  • Directionality – if you’re using links to establish task sequencing, obviously one of the items is a prerequisite to the other
  • Why – the “link type”, possibly including
    • blocked by – for “waiting for” items, could be blocked by another person or task
    • revision of – when a newer item overrides the content of a previous item
    • reference – when two things are related just because they are part of the same project
    • source – where did the item come from
    • member of – for mimicking parent/child relationships

 

I have a few questions:

 

  1. What is the smallest set of link types that can suffice to map all the items used for system that captures all your GTD activity?
  2. Do links have “completeness” ? Can a link itself be marked as finished?  Or is it the item that is marked as finished?  (Think about when a task is delegated to someone.)
  3. Do links have age?  Like twine left in the rain, do links fade over time?

 

GTD suffers from the lack of an implementation

Posted in opinion on November 26th, 2008 by ben – Be the first to comment

Given the background about my use of GTD, now I get to into some new opinions.

I’ve been thinking a lot about personal productivity after getting a blast from the past and the emails it spawned about the persistent poor state of high volume email management.

In object oriented programming terms, GTD is an interface, and it doesn’t come with a reference implementation.  It is exactly this lack of an implementation that leaves people struggling with the use of the system and its habits.  

Each person implements GTD according to their primary constraint.  For instance, if you have a high email volume to balance, you tend to look for a system that deals with your inbox and sorting and categorizing the emails into projects and next actions.  If you’re highly nomadic, you might look for a more physical implementation such as as hipster PDA, so that you’re confident your system is always at hand.

Each of these systems needs to apologize for its underpinnings.  The hipster folks have techniques for dealing with email, and the email folks might make tickler emails for the voicemails that they need to return.  Or maybe they try a grander email system that integrates calendaring and todo items.  But every time you integrate with a pre-existing system or concept, you have to compromise to put your round peg into the square hole.

I contend that even GTD suffers from its underpinnings of trying to be all things to all people.  Because it lacks a system, it has introduced more elements than are necessary.  For instance:

  • The weekly review - It’s amazing how good this sounds, but it in practice its job is to patch up all the cracks resulting from a lack of an implementation.  Known as “closing the open loops,” it wouldn’t be necessary if your implementation prevented the loops from getting buried in a folder.  For example, if you have a high volume of next actions, you probably track those items per context.  So each weekly review you have to review the lists to make sure the fact that you haven’t gone to the store this week isn’t blocking the ingredients need for the cake for the party this weekend.
  • The project list - If I have faithfully made a folder for each project, why do I need to keep another piece of paper itemizing the folders in my stack?
  • Actions vs Projects - Allen defines a project as anything that takes more than one task to complete.  But since large projects aren’t a strict sequence of tasks, you end up with sub-projects.  Suddenly, the scope of an item is obscured,  and you lose the big view of your projects.  ”Should I make a folder for this smaller item?”
  • Hard edges –  We’re encouraged to keep hard edges between the categories of things to keep track of.  When the book lists the 7 primary types of things, they’re supposed to stay separate, or you’ll get really confused.  But today’s “waiting for” list is tomorrow’s reference for why the project is late.

I know the book addresses many of these points.  I’m not trying to throw out the whole system, or impugn the value of the habits and flow that GTD promotes.  But I want to build the case for a fresh implementation of something that doesn’t have to apologize for its roots.

Comments are welcome.  I’m actually hoping that this blog can become more of a discussion than just my soap box.