zzamboni.org
Ideally Blue

zzamboni.org
Ideally Blue

These are the things I have written about

windows

See all posts on posterous with this tag ยป
Mar 14 / 12:09am

Overhauling my GTD system under Windows

As you may know, I'm a reluctant switcher from Mac to Windows. I am also a fan of GTD. I had been using Jello Dashboard (JD) to implement GTD under Outlook. JD is a very nice system, the developer is friendly and responsive, and I had even written several patches to adapt it to my way of working. I was even in the process of drafting a series of blog posts titled "My GTD under Outlook setup".

However, a couple of months ago JD stopped working for me. Not in the technical sense, mind you, but in the GTD sense. I stopped processing my Inbox, I stopped updating my lists, and of course I stopped checking them for getting my next actions. It didn't happen all at once, but over time I stopped having confidence in my system.

What happened?

I have come to the conclusion that the main reason I stopped using and trusting JD was what David Allen calls "friction". A system that has a lot of friction, Allen says, will eventually become unused and untrusted (I am paraphrasing, but the message is there in his books and articles). JD, as nice as it is, requires you to switch to a different "mode" within Outlook to use it, since it is essentially a web application that runs inside Outlook (it is all written in Javascript). This means that as I am processing my mailbox, for example, and encounter an actionable email, I cannot simply create an actionable task at that point. I have to (1) switch to JD, (2) find the email in JD's view of my Inbox, which is different than the one in Outlook Mail, (3) mark it as actionable, tag it and file it, and (4) go back to my Outlook Inbox to continue processing it. Friction.

What is supposed to happen, I guess, is that you do all the processing from inside JD. But JD's mail viewer is not nearly as nice as the native Outlook one (for example, it shows all messages as plain text), it is slower, and does not have a threaded message view, among many other differences. The result was that my mode of operation, while I was still using JD, was to read my mail in Outlook, archive or delete non-actionable messages, and then switch to JD just to file the remaining ones as actions. Of course, as my workload increased, I stopped doing the switch as frequently, due to the mental friction of having to deal with the "not as nice" environment and losing time and momentum in the process.

And slowly, over time, I fell back into old bad habits: keeping things in my Inbox because I would need them later, and working off it. As a years-old GTD practitioner, I can tell you that the difference was noticeable. I started missing commitments and forgetting things, I became crankier and more stressed, and both my personal and professional lives suffered.

But the nice thing about GTD is that it is very forgiving. If you "fall off the wagon", all you have to do is do a good mind sweep and review, start recapturing stuff, and be on your way.

But first, I had to overhaul my system. I was sure that if I started capturing stuff into JD again, I would eventually encounter the same problem. So I went back to the basics: I signed up for a free GTD Connect trial (GTD Connect is an amazing resource, too bad I cannot at the moment spend USD$50-a-month on it), downloaded the "GTD and Outlook 2007" guide and the Outlook 2010 supplement, and got to work. Followed the instructions, removed all my categories (JD uses categories for projects as well and for all its tags, so I had over a hundred of them), set it up with the minimum recommended set, and got to work on processing all my accumulated stuff.

I am not done yet, mind you, since I have literally hundreds of old tasks and emails, but I am making steady progress. I feel calmer than I was only a few days ago, because I am again slowly capturing all my stuff in a system that I hope can become trusted. For the first time in months I am decreasing my pile instead of increasing it constantly. The amount of things to do remains the same, but the pile of amorphous "stuff" that is there giving me the creeps has decreased. Eventually I need to get to the point where I can continue maintaining my system in cruise control, keeping things under control. I will blog more details about my specific setup later.

My conclusion is this: if you fall off the GTD wagon, just get back in! And don't be afraid to throw away your old system if you realize it is not working for you. The beauty of GTD is that it is not tied to a specific toolset, and if the tools you use do not support your good habits, you can easily switch them for others that do.

Reduce the friction, and it will improve your life.

Filed under  //  friction   gtd   jello   outlook   productivity   windows  
Jan 19 / 3:28pm

Installing latex2html under Win7 with cygwin

I got latex2html to install on the latest cygwin, however to get the configure to pass I had to alter the configure to recognize cygwin as a UNIX.

Using this patch I was able to properly configure and install latex2html under cygwin in Windows 7.

Filed under  //  cygwin   latex   latex2html   tips   windows  
Jan 19 / 12:33pm

LogParser, Event Logs, and Vista - Neil Carpenter's Blog - Site Home - TechNet Blogs

The only workaround to this is to convert the logfile to the new evtx format prior to parsing it.  You can do this in the event log viewer GUI by doing a Save As... but I find it easier to do this at the command prompt:

wevtutil epl application.evt application.evtx /lf:true

I'm trying to process Windows Event Viewer files (.evt) from some servers on my Win7 machine, which kept me giving a "log file is corrupt" error message. The trick is to convert it to the newer .evtx format before processing. Thankfully this can also be easily done using a command-line utility.

Filed under  //  eventviewer   logparser   tips   windows  
Dec 23 / 12:14pm

Setting up a global hotkey to add tasks to Outlook

One thing I missed since I moved from a Mac (using The Hit List for GTD) to Outlook (using Jello Dashboard for GTD) was the availability of a global hot key that I could use to bring up a text entry box which I could use to quickly add things into my electronic Inbox, for later processing.

I have found a way to achieve this, and here is the setup I am using now:

The first component is this PowerShell script written by Lee Holmes, which takes as arguments the title of the task to add, and adds it to Outlook. I saved it as Documents/Add-OutlookTask.ps1 in my home directory.

The second component is the ever-useful and amazing AutoHotkey. I added the following lines to my Documents/AutoHotKey.ahk file:

This snippet assigns Win-space to open an input box, and uses whatever is typed in it as the task title to the Add-OutlookTask script. The task will be placed without any categories in the task list, so it appears automatically the next time I open my Jello Dashboard inbox. Here it is in action:

Addtask

I find this extremely useful, since I can press Win-space to add new tasks from any application, without having to switch to Outlook first. At some point I would like to explore the idea of making it smarter, like the quick-add keys in Things or THL for the Mac. This would include, for example, using some information from the currently-active application to prefill the task information. Examples would include using the subject line if an Outlook email is selected or the title of the current web page if a browser is open. Also nice would be to include any selected text automatically in the notes for the task, and maybe a link to the original item.

 

 

Filed under  //  autohotkey   gtd   outlook   productivity   tips   windows  
Sep 28 / 9:39am

Making cygwin, Windows and emacs understand the same symlinks

Today I ran into the problem that symlinks created under cygwin using "ln -s" are not understood by Windows, and of course Windows shortcuts are seen by cygwin as regular files. Happily, this is a (semi-)solved problem. For reference, this is what needs to be done:

  1. Add "winsymlinks" to your CYGWIN environment variable. For example, in my .bashrc I have the following:

    export CYGWIN="nodosfilewarning winsymlinks"

    This makes cygwin create symlinks differently, in a form that is understood both by it and by Windows.
    This is the main step, and the only one if you just need access from the shell and from the Windows explorer. However, emacs still sees those symlinks as regular .lnk files. To fix this, follow the next step.

  2. Install the w32-symlinks.el package, and add the following to your .emacs file:

    (require 'w32-symlinks)

  3. Run M-x customize-option and enter w32-symlinks-handle-shortcuts as the variable to customize. Turn it on, save it for future sessions, and you are all set. The new symlinks should be properly understood by the cygwin shell, Windows explorer, and emacs. Of course, you will have to re-create any symlinks or shortcuts that you created prior to setting the winsymlinks option, for them to be created in the new format.

    Update: so this doesn't quite work on my system. I am using Emacs 23.1, and apparently w32-symlinks does not work properly in this version. If you have an older version (I hear Emacs 21 works well), then this might work for you. 

Filed under  //  annoyances   cygwin   howto   symlink   tips   windows  
Sep 5 / 5:15pm

GTD Tip: one-key opening of INBOX notebook in OneNote

One of the most useful applications I have discovered since I had to switch to Windows as my main OS is OneNote, a really great note-taking application which I use for pretty much every data-storing and note-taking need. I use a OneNote notebook as part of my GTD inbox. Today's very simple tip is how to assign a keystroke for opening my Inbox notebook from anywhere in the system. Here are the steps:
  1. Download and install AutoHotKey, if you don't have it already (it's a really useful free application, well worth exploring).
  2. Add the following line to your default AutoHotKey.ahk file (normally in ~/Documents/AutoHotKey.ahk):

  3. Re-run AutoHotKey so it re-reads the config file.
Make sure you change the path of the file you want to open, and also the key to which you bind it, if don't like Win-i.

Of course, this is useful for one-key opening of any file you want.

Filed under  //  autohotkey   gtd   onenote   windows  
Aug 23 / 12:14am

Installing cfengine on Windows 7 under cygwin

Update (2011/09/05): Updated the instructions for cfengine 3.2.0, cygwin 1.7.9, and tested them on a clean cygwin install.

Installing the cfengine community edition under Windows (the commercial version includes native Windows support) is fairly easy under cygwin, you just need to have the appropriate dependencies installed. Here’s how I did it.

Versions  

  • cfengine: 3.2.0
  • Windows 7 Enterprise SP1/64bit
  • cygwin: 1.7.9-1

Additional cygwin packages needed 

To install these, run cygwin’s setup.exe, search for each packages in turn, and install them. Make sure you agree to install any additional packages that are listed as dependencies (setup.exe will ask you about it).

  • make
  • gcc
  • libdb4.5
  • libdb4.5-devel
  • openssl-devel
  • libpcre-devel
  • bison (will install m4 as a dependency, say "Yes")
  • flex

How to compile and install

  1. Unpack cfengine-3.2.0.tar.gz: tar zxvf cfengine-3.2.0.tar.gz
  2. cd cfengine-3.2.0
  3. ./configure
  4. make
  5. make install

That should be it. Remember that there is some functionality missing in the community edition under Windows (for example, userexists() does not return correct results). If you want full Windows support (including native features like registry editing, etc.) you have to use the commercial edition of cfengine. But for most purposes, the community edition works just fine.

If you have different experiences, or with different versions of Windows, please let me know! I'll update these instructions as needed.

 

Filed under  //  cfengine   cygwin   howto   windows  
Aug 17 / 2:36am

Installing AucTeX on EmacsW32 on Win7/64bit

Today I had to install AucTeX to use on my Win7/64 machine under EmacsW32. I found the basic instructions here: http://www.sturmnet.org/blog/2007/09/01/installing-auctex-in-emacsw32, but I had to modify them a bit (in particular, I am using tetex installed from cygwin instead of MiKTeX). Here are the commands I used:

$  mkdir -p /usr/local/share/texmf
$ ./configure --prefix='c:/Program Files (x86)/Emacs/emacs' --with-texmf-dir='/usr/local/share/texmf' --with-lispdir='c:/Program Files (x86)/Emacs/emacs/site-lisp'
$  make
$  make install

I then added the following lines to my C:\Program Files (x86)\Emacs\site-lisp\site-start.el file:

(load "auctex.el" nil t t)
(load "preview-latex.el" nil t t)
(eval-after-load 'info
       '(add-to-list 'Info-directory-list "c:/Program Files/Emacs/share/info"))
(setq TeX-auto-save t)
(setq TeX-parse-self t)

Everything seems to be working properly, even preview-mode.

Filed under  //  emacs   latex   tips   windows  
Apr 22 / 2:01am

Know your tools

I recently had to copy a very large file (>4GB) from a remote Windows share to my Windows 7 machine, over a very finicky connection (frequently-failing VPN over a slow Internet connection). A GUI copy didn't work because the connection dropped frequently. I triedย Free Download Manager, which was the recommended tool for the download, but surprisingly, it wasn't always able to restart the download after connectivity dropped.

Then a colleague pointed me to the "copy /z" command:

ย ย /Z ย  ย  ย  ย  ย  Copies networked files in restartable mode.

And this simple, built-in tool turned out to be the thing I needed. It was, every time, able to restart the download properly, and after a few times, it downloaded the file correctly.

As you may know, I am a reluctant recent switcher to Windows, coming from Linux and Mac OS X. I confess I still have a condescending attitude to everything in Windows, but this teaches me a lesson: it pays to know the native tools of the system you are using.ย I had subconsciously dismissed the built-in DOS copy command as too primitive to work, but it turned out to have the capabilities I needed.

A couple of tips:
  • If you interrupt the command with Ctrl-C, it will delete the portion copied so far and you'll have to restart the copy from the beginning. If you must interrupt a copy, simply terminate the network connection (it will die with an error, but leave the copied-so-far file) or close the window where the command is running.
  • When you restart it and it asks if you want to overwrite, you must answer "yes". You can also use the /Y flag.

Filed under  //  networking   tools   windows