Jump to content
Sign in to follow this  
RedUK

(Archived) Evernote as a GTD (Getting Things Done) tool

Recommended Posts

I can see there are a few references to GTD on this forum (although the search feature here won't accept 3-letter search terms so hard to be sure how much) so I thought I'd suggest we collect those discussions here. My current position : I like Evernote as the core of GTD. I think I'm resigned to having to manually transfer certain things to a calendar for reminders (eg manually paste in to a GCal or Outlook item) so accepting that I think it's pretty much there - it's all about how you manage your Tags and/or notebooks and/or note attributes.

For me:

My top 2 Tags in my list are :

*

**

"*" is basically my "Next Action" tag. Selecting that tag shows me all my next actions - if I have All Notebooks selected I get the lot, otherwise I have a Notebook per major activity (Currently One each for a couple of work roles, another for a large programm of sub-projects I'm working on - if I want only NAs for one of those sub projects for example, I just Ctrl-Click on the tag for that sub-project too, so I have * and selected and I see just that/those NA.

"**" is just an action - something that I want to tag as needing acting upon later - if something changes from Action to Next Action I just need to remove one of the * symbols in the tag field for that note - neat. (NB I'm tpying with using the "Contains finished to-do, contains unfinished to-do items attributes for this too - but they are a bit clumsy to get to so I'm trying this for now)

I have created a "Tickler" tag, with 43 sub-tags (so I can collapse the view in the Desktop client) - I may not use these though - the Tickler concept seems (to me) as an old-fashioned way around what any computer- or online-based Calendar will now do so I may just manually drop things in to either Outlook (I have to use Outlook for some of my work roles) or GCal (I have Outlook and GCal synced so if anyone automates a way to throw notes in to an appointment on either let me know :) )

So : Notebook per major role, Tag for major sub-projects, * and ** tags for NAs and Future Actions, and the usual gamut of context tags. Plus I have lots of technical and procedural tags which are specific to some things I do (eg to easiy find all teh notes/emails-turned-in-to-notes on certain technical topics)

Lets hear your experiences or ideas.

Share this post


Link to post

Posted my system here:

viewtopic.php?f=30&t=8043#p30579

In general, the iPhone, regardless of software, won't cut it as my portable GTD system. Why? 2 main reasons:

1) I hate using iPhone keyboard to enter data.

2) Evernote for iPhone takes too long to open, and entering/changing data is too cumbersome

So I'm using a paper journal and Evernote to capture my projects, next actions, etc.

Share this post


Link to post

1) I hate using iPhone keyboard to enter data.

Same here. I use it mostly for reference/reminders on the move

Share this post


Link to post

1) I hate using iPhone keyboard to enter data.

Same here. I use it mostly for reference/reminders on the move

In time, an article will appear poking fun at the inefficiencies of using smart-phones. The hoops people jump through (and the justifications they offer) to use these tools are incredible. However some companies are turning these liabilities into assets a la Google's Voice Recognition. Along with GPS, one begins to appreciate how the iPhone IMPROVES upon using a keyboard.

I've been using Dail2DO with Evernote are receiving similar results. I can't wait for Apple to introduce a system-wide Voice Recognition/Text transcribing function. The sooner I can avoid using the keyboard, the better.

Share this post


Link to post

These are the tags I use for my GTD system:

post-13672-131906063222_thumb.pngI'm using RedUKs idea of one and two character tags for Next Actions and Actions, but I've used #/##. The thing I like about this system is that I can then search for [tag] to find all actions. I use this in some of my saved searches, see below. (I couldn't do that with */** as [tag] is a shorthand for notes with any tag, and although you can search for [tag] you can't search for all actions: * OR ** notes. I tried [tag] but it is invalid search syntax.)

I often group a lot of related actions under one note but for my biggest projects I create a tag under the Project tag starting with a full stop "." to allow me to include or exclude project notes in saves searches and also as a reminder list of what my projects are. The Project tag itself is used for project plans. Not every project gets a plan, just the biggest ones.

I also use the usual @Context tags, as well as :Someday for someday/maybe notes, and :Future for tickler notes. The use of : at the start allows these tags to be easily ignored in searches using [-tags::*]. If I ever had to delegate something I'd also have a :Delegated tag. I also picked : because it sorts well in both the tag list and the notes list. If I sort the notes list by tags then :Future and :Someday notes are placed out the way at the bottom of the list. It also sorts after the project "." tags in the list of tags for one note:

post-13672-131906063253_thumb.png

The only nit-pick I have with this sort order is that "##" Action notes are sorted before "#" Next Action notes, although that's not a major problem.

Tickler notes that I want to be reminded of at specific dates are tagged :Future, and I edit their attributes and set the Subject Date to the date I want to be reminded of them. I then extract these using ENScript.exe and merge them with an extract of upcoming events in my Google Calendars, and use a Samurize script I have written to place them on my desktop.

I also use another script to extract all my next actions and use Samurize to place them on the desktop:

post-13672-131906063255_thumb.png

I only use my Google Calendars for events that will happen on specific dates so the calendar data I grab is only for future events. However, the Evernote tickers export will grab all ticklers, even ones with an elapsed subject date, so that I force myself to go and edit the note to get it off the bottom of the calendar.

My next actions appear under the calendar (scroll the above image to see them). Tags for projects are placed in the first column (with the preceding "." removed), @Context tags in the second column, the third column contains any other tags and the fourth column is the title of the note. I haven't applied any sorting to the list, thinking it's better to review the whole list before picking an action to do next (at least that's the theory) but I may use priority tags in future or at least sort the project notes together.

I've created a set of saved searches for easily narrowing down on specific kinds of notes (although my system is relatively new so I can't say how useful these searches are yet):

post-13672-131906063251_thumb.png

I'm using a tip from a Lifehacker.com article (Customize Your Gmail Labels with Unicode Characters) to change the sort order of my saved searches using unicode characters.

Here's what the searches do:

# w/ no @ [tag] Actions should always have a context, anything in here needs an @Context tag added.

@ w/ no action [tag] Any note with an @Context tag should have an "##" action or "#" next action tag, unless it has a :Someday or :Future tag.

(Note the # and @ characters sort these to the top of the list where I can keep an eye on them)

Searches for specific notes that I want to have quick access to are preceded by the ▶ character.

● Active Project Plans [tag] Project plans that aren't :Future (tickler) or :Someday projects.

● Project Notes [tag]

✦ Actionable [tag]

✦ Project Actions [tag]

✦ Single Actions [tag] (non-project actions)

✧ Non-Actionable [-tag:#*]

Reference [-tag:#* -tag::*] (Notes that aren't action, tickler or Someday/Maybe)

Along with Trash these tags and saved searches mean that I can easily view which notes are in the 8 categories that GTD organises "stuff" into.

I don't use the checkboxes as there are no keyboard shortcuts for checking/unchecking them. If I have a note where I want to have several actions I use bullet lists (Ctrl+Shift+B) and strikethrough (Ctrl+T) to indicate done items (and remove the # tag when all are done). Using Home, Shift+End, Ctrl+T or even Home, Shift+Down/Up Arrow, Ctrl+T it's easy to mark items in the list as done while navigating it.

Share this post


Link to post

wow. I bow down before you - you've given me a whole new way of thinking about EN, again.

And I love the lifehacker hack - I just started using in my gmail, but never thought of applying it to EN.

Share this post


Link to post

I'm doing paper but when I did EN for GTD I much appreciated the saved searches. Did intersections with todo states, specific notebook(s), tag(s). The thing was more or less automated this way.

But reason I respond is the smile of recognition you brought to my face, Sam: "reduce capture / archive locations"

Ah yes :)

Share this post


Link to post
I then extract these using ENScript.exe and merge them with an extract of upcoming events in my Google Calendars, and use a Samurize script I have written to place them on my desktop.

Would you mind sharing your Samurize script? I'm not familiar with Samurize coding, but I'm pretty sure I could adjust it to my needs. It sounds like a great idea!

Thanks!

Share this post


Link to post
Would you mind sharing your Samurize script? I'm not familiar with Samurize coding, but I'm pretty sure I could adjust it to my needs.

It's actually a perl script.

Usage with Samurize

It's been a while since I wrote it but if you're using it with Samurize I think that as well as installing ActivePerl you will have to install the Date::Simple perl module. Use the Perl Package Manager in ActivePerl's Start Menu folder to install any modules you are missing.

Once you've added the script as a meter you need to add your calendars to the parameter list. For each calendar there are two parameters: the first is a name for the calendar (e.g. Personal, Work, Holidays, etc.), and the second is the http://www.google.com/calendar/feeds/.../basic url from the calendar's settings. Just leave any parameters that you don't want to use blank.

You will also want to set the Tab Size in the Display settings to something large. I use 110

Usage outside Samurize

if you're using something other than samurize to display it you'll probably want to replace the start of the script with something like this:

sub Calendars {

my @output ;

my %calendars = ( "Personal ", "http://www.google.com/calendar/feeds/.../basic"
, "Family ", "http://www.google.com/calendar/feeds/.../basic"
, "Work ", "http://www.google.com/calendar/feeds/.../basic"
, "etc ", "etc"
);

The Script

#!c:\cygwin\bin\perl.exe -w
use strict;

use LWP::Simple qw(get);
use Date::Simple ('date', 'today');
use Date::Calc qw(Day_of_Week);
use HTML::Entities;

sub Calendars ($cal_1_name, $cal_1_url, $cal_2_name, $cal_2_url, $cal_3_name, $cal_3_url, $cal_4_name, $cal_4_url, $cal_5_name, $cal_5_url, $cal_6_name, $cal_6_url){

my @output;

my %calendars = @_;

my $params = "?futureevents=true&orderby=starttime&sortorder=ascending&singleevents=true";

my %months = ( "Jan", "01", "Feb", "02", "Mar", "03", "Apr", "04", "May", "05", "Jun", "06"
, "Jul", "07", "Aug", "08", "Sep", "09", "Oct", "10", "Nov", "11", "Dec", "12");
my %days = ("0", "Sun", "1", "Mon", "2", "Tue", "3", "Wed", "4", "Thu", "5", "Fri", "6", "Sat");

my $calendar_name;
my $calendar_url;
my @lines;

my $setunits = sub {
$main::unit = " days ";
if ($main::duration > 30) {$main::unit = " months "; $main::duration = int(($main::duration / 30) + .5);}
elsif ($main::duration > 10) {$main::unit = " weeks "; $main::duration = int(($main::duration / 7) + .5);}
elsif ($main::duration == 1) {$main::unit = "Tomorrow "; $main::duration = "";}
elsif ($main::duration == 0) {$main::unit = "Today "; $main::duration = "";}
elsif ($main::duration < 0) {$main::unit = "Passed" ; $main::duration = "";}
};

while (($calendar_name, $calendar_url) = each(%calendars)){

next if '' eq $calendar_name;

my $calendar_data = get "$calendar_url$params";
@lines = split(/\n/, $calendar_data);

foreach (@lines) {
s/&/&/g;

if (/([\d\D]*)<\/title>When: (\S+) (\S+) (\S+) (\S+)<br>/
|| /([\d\D]*)<\/title>When: (\S+) (\S+) (\S+) (\S+) ([0-9]+:[0-9]+ to [0-9]+:[0-9]+) /)
{
my $event = decode_entities($1);
my $day = "$3";
if ($3 < 10 ) {
$day = "0$3";
}

$main::duration = date("$5-$months{$4}-$day") - today();
&$setunits();
if ($6) {$event = $event . " (" . $6 . ")"}
push @output, "$5 $months{$4} $day $2\t$main::duration$main::unit\t$calendar_name\t$event\n";
}
}

}

my @ticklers = split(/\n/, `getnotes_future`);
foreach (@ticklers) {
if (/(\d\d\d\d)(\d\d)(\d\d)T\d{6}Z\t(\S*)\t(\.*)\t(.*)/ )
{
$main::duration = date("$1-$2-$3") - today();
&$setunits();
my $dow = Day_of_Week($1,$2,$3);
# NB: $5 contains other tags, but we're not outputing it.
push @output, "$1 $2 $3 $days{$dow}\t$main::duration$main::unit\t$4\t$6\n";
} else {
push @output, "! NO DATE/TIME $_\n";
}
}



@output = sort (@output);
return join "", reverse @output[0..19];
}
print &Calendars();

Remove "reverse" near the end of the script if you want it sorted the other way.

Share this post


Link to post

Thanks! So am I correct in understanding that you use ENScript.exe to export the appropriate notes into Google Calendar, and then use the perl script to show the calendars in Samurize? If so, how are you using ENScript.exe? Are you using it in a batch file? Sorry for all the questions; I appreciate your help!

Share this post


Link to post
Thanks! So am I correct in understanding that you use ENScript.exe to export the appropriate notes into Google Calendar, and then use the perl script to show the calendars in Samurize? If so, how are you using ENScript.exe? Are you using it in a batch file? Sorry for all the questions; I appreciate your help!

Sorry, I forgot that the perl script calls a batch script to export my "tickler" notes from Evernote. I'm not exporting anything to Google calendar if that's what you want, sorry. The perl script is just fetching the google calendar feeds and then combining them with an export of Evernote notes tagged :Future that have their Subject Date set to the date I want to be reminded of them. (In the screenshot the Evernote items are the ones with @Context instead of calendar names.)

If you don't need the Evernote export you can just remove this section of the perl script:

   my @ticklers = split(/\n/, `getnotes_future`);
foreach (@ticklers) {
if (/(\d\d\d\d)(\d\d)(\d\d)T\d{6}Z\t(\S*)\t(\.*)\t(.*)/ )
{
$main::duration = date("$1-$2-$3") - today();
&$setunits();
my $dow = Day_of_Week($1,$2,$3);
# NB: $5 contains other tags, but we're not outputing it.
push @output, "$1 $2 $3 $days{$dow}\t$main::duration$main::unit\t$4\t$6\n";
} else {
push @output, "! NO DATE/TIME $_\n";
}
}

If you do want to combine Evernote notes with the Google Calendar feeds then you'll also need the getnotes_future.bat script that the perl script calls. Here it is:

@echo off
setlocal

set PATH=%PATH%;C:\Program Files\Applications\Evernote\Evernote3
set PATH=%PATH%;C:\Program Files\System Tools\xmlstarlet-1.0.1

set EXPORTFILE=evernoteexport_calendar.txt

set XPATH2=child::tag[text() != '#' and starts-with(text(), '@')]
set XPATH3=child::tag[text() != '#' and not(starts-with(text(), '.')) and not(starts-with(text(), '@')) and not(starts-with(text(), ':'))]

set XMLSELECT=sel --net -T -t -m "/en-export/note" -m "note-attributes/subject-date" -v "." -b -o "{tab}" -m "%XPATH2%" -v "concat('{',.,'}')" -b -o "{tab}" -m "%XPATH3%" -v "concat('{',.,'}')" -b -o "{tab}" -m "child::title" -v "." -n

REM & -> ^& -> ^^^& (Escape twice! once for the SET command, and again when used)
REM % -> %%

set SED2=s/{tab}/ /g
set SED3=s/}{/, /g
set SED4=s/ {/ /g
set SED5=s/} / /g
set SED6=s/\%%/\%% /g

cd %TEMP%
ENScript exportnotes /q "tag::Future" /f "%EXPORTFILE%"
xml %XMLSELECT% "%EXPORTFILE%" | sed '%SED1%;%SED2%;%SED3%;%SED4%;%SED5%;%SED6%;%SED7%'

del "%EXPORTFILE%"

Note that the batch script uses XMLStarlet to process Evernotes XML export, as well as the unix SED command which you can get by installing cygwin (which is the version I use) although the SED in GNU utilities for Win32 may be a simpler and smaller install, although I haven't tested the script with it.

Share this post


Link to post

Sorry to be such a newbie, but just exactly how to you insert unicode characters into a tag? I only get the little "I don't know what this character is so I'm going to display a box" box. I've used charmap and cut-and-paste to get a character for pasting. Thanks.

Alan

Share this post


Link to post
Sorry to be such a newbie, but just exactly how to you insert Unicode characters into a tag? I only get the little "I don't know what this character is so I'm going to display a box" box. I've used charmap and cut-and-paste to get a character for pasting.
It works for me with the latest Evernote Windows client. It's probably that the font your installation of Evernote is using for tags doesn't have Unicode characters, or at least not the ones you want to use. You could check what fonts your windows installation is configured to use in Control Panel.

Share this post


Link to post

Already using Tahoma for the font. I am not sure what to check in the control panel Font place, either, but it looks like I've got lots of them there. I was hoping that it was a simple thing I was missing but doesn't sound like it is. Thanks.

Alan

Share this post


Link to post

Sam,

I am new to GTD but have been a huge fan of EN for about a year. it really changed my life in a lot of ways. so i'm glad to see how GTD and EN can and is being used together. And your post is the best i've seen. I have one question and it's more to do about GTD. You are using # and ##. For Next Action and Action.

My question is, i don't know what the difference is between teh two. As i understand it, Allen doesn't differentiate the two. If you could just explain how you are using the two distinct categories, i'd greatly appreciate it.

Thanks,

Andrew

Share this post


Link to post
My question is, i don't know what the difference is between teh two. As i understand it, Allen doesn't differentiate the two. If you could just explain how you are using the two distinct categories, i'd greatly appreciate it.

For projects with more than one action an action ## is dependent on a next action # being performed first.

Share this post


Link to post
If it's not too much trouble could you just provide an example of the difference between # and ##.

I appreciate your time and help.

Andrew

I might have an action ## such as "Take car to garage" that would be dependent on a next action # "call Fred to get the phone number for the garage".

At least that was supposed to be the idea, although now I look through my notes I see that I've used it more for prioritisation than for ordering by dependency. I tend to keep most projects (multi-action tasks) as bullet lists in one note.

Share this post


Link to post

Ouch. All of this is not for the faint of heart. Even for the somewhat geeky like me.

How abouts one of you fellows consider combining the Evernote and Google Calendar APIs for easy syncing? Please? :D

I am unfamiliar with EN Script, and I may have missed it in my read through the thread, but do any of these scripted actions happen automatically, or is it a matter of pressing a couple shortcuts daily? I would love a walkthrough link of some sort so I can link it to my recent blog post on using Evernote for a GTD system (with only one notebook). The post is for the geeky and the wannabe geeky, but not necessarily the scripty, if you get my meaning.

Any help here would be great!

Share this post


Link to post

I am a total newbie and only started using it one day ago. I couldn't understand why the screenshots showed differently from what I was seeing. Evenutally realised I was using it 'online'. Downloaded onto my laptop and things improved. Couldn't understand why I wasn't seeing the 'icon' view or the shared view that everybody was talking about. Stumbled on a post that was only posted today asking the same question. The answer was, it was on the 3.5 version. Back to the drawing board! Now it seemed I had everything, but only being used to folders, I couldn't for the life of me work out how I was to keep track of everything using tags, they seemed illogical to me. Reading through this thread, I followed a link posted by 'Chilyn' to using Evernote for a GTD system (with only one notebook).

WOW! I get it, I really get it. Tags that is. I hadn't realised that you could subtag (and subtag the subtags). I played with it for a bit and realised that if I used a keyword as my main tag (folder) and listed anything related as a subtag (subfolder), I ended up with something totally resembling my windows folders, with a massive advantage. I could look for an item in the folder (collaspable and expandable) OR search using tag words. In fact, I had already opened several notebooks but have realised that I don't really need them! I love it! :D:D:D

ps. Realised what I have posted is not really relative to this thread, but posted here because it was this thread that really explained to me the possibilities of using tags and I love the action now and the next action ideas.

Share this post


Link to post

So glad I could provide you with some insight man! Warms me heart, it does!

Happy note-taking... :D

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  

×
×
  • Create New...