Red Green Repeat Adventures of a Spec Driven Junkie

Getting Things Done: Emacs

I want to share a frustration of not being able to debug a problem with a key tool I have.

I walk through my Getting Things Done journey from OneNote (back) to Emacs.

You will learn how I put together a system that I can edit using Emacs on multiple platforms.

This article will take you less than four minutes to read.

Writing Board source and more information

Introduction

I read Getting Things Done by David Allen and started the filing system, physical and digital. If you don’t know the whole system, check out the book. It’s KonMari for information, which closed up an essential loop in the whole KonMari method.

A key part of Getting Things Done was having the best tools. At the time, I figured the best tool would be: OneNote for the following reasons:

  • The program runs on all the platforms I use (and more).
    • Mobile
    • Desktops
    • Web
  • Inline image support
  • Expand/Close lists

I was all in on OneNote for my information. Images, text, tables, etc. Everything was in there. I was in a good flow.

Honeymoon Over

One day, I noticed pages I made on one computer didn’t show up on another one. I checked my phone, nope, not there either. How about the web version of OneNote?

Nope - that page created in OneNote in that one computer was not anywhere else.

When I tried to “Sync Pages” through OneNote, I kept getting error:

OneNote can’t sync this page. (Error code: 0xE00001BB)

Really?! I restarted OneNote, same issue. I restarted my computer, then start OneNote, same issue.

Powerless

As a technically inclined person, not being able to solve this problem drove me nuts!

I tried everything. Were the versions of OneNote between the systems off, a version mismatch? Nope, same version, according to the “About” page. How about new pages? Was it a specific type of thing I was doing? I couldn’t see a pattern. Was it making pages on one system and then editing on another?

Syncing is a feature I want. Not syncing is a complete deal breaker for me.

Back to Emacs

Before reading Getting Things Done, I was using Emacs’ org-mode and loving it.

In addition to having the “best tool”, the Getting Things Done system advocates having a tool you love to use.

I thought I would love OneNote more because of the platform access that Emacs does not provide. I did love it until some of OneNote’s notes were not syncing and I couldn’t do anything.

At the same time, when I was using OneNote, I wished Emacs’ org-mode features were in there such as:

  • keyboard controls to expand/close lists
  • search
  • markdown support
  • basically, more keyboard controls

Well, the main problem of Emacs was the platform access.

That’s when I remember: Dropbox has multi-platform support, even mobile. On mobile, it can view basic files, like text and markdown.

What does org-mode use? Basically text, which is universal!

The Setup

The configuration I have:

  • On computers: use Emacs to read/edit/search
  • On mobile: use the Dropbox client to read/edit

The glue holding everything together: Dropbox

Done!

Not So Fast

As easy as that sounds, there’s still some work around:

Dropbox handles syncing files, if the file is saved. If I leave a file unsaved on system A and I edit with Emacs on system B, Emacs notices system A is editing.

  • To work around this, I need to save the file on system A so I can edit cleanly on system B.

Dropbox determines if a file is a text file based on the file ending. Files ending as .txt or .md are viewable on the Dropbox mobile client. Emacs’ org-mode files usually uses .org for its files, so Dropbox won’t open it, even though the contents are just text.

  • To work around this, I can make all the files end with .txt so it’s manageable by Dropbox.
  • To make Emacs recognize .txt files are org-mode files, I would add the following to the top of the file: -*- mode: org -*- to set the file’s major mode when opening it in Emacs. source

The great thing about this setup is that basically, when things go wrong, I know what the issue is. I can fix the problem myself. Each component: Emacs and Dropbox are doing one thing and doing it simply.

Things Missing

There are things I do miss from the OneNote setup:

  • Inline images - seeing images in the note is nice. I haven’t done as much with images since switching to Emacs + Dropbox. There’s a way to get the setup with Emacs, alas, I run Emacs in terminal mode the majority of the time.

Hmm, I guess I don’t miss OneNote as much as I thought 🤔

Things I Love

If you thought Emacs was an operating system that manages text, org-mode is another layer of text management within Emacs. Calendar dates, list manipulations, and tables.

I haven’t even scratched the surface of org-mode. There’s a spreadsheet function, TODOs, agendas, etc. There’s a whole book just on org-mode

Oh yeah, there’s a whole (emacs flavored) Lisp interpreter that I am starting touch because I am too entrenched to switch out to another application. Yes, Emacs is an operating system itself.

Conclusion

On my Getting Things Done journey, I thought OneNote would be the tool I would fall in love with.

Yet, not being able to debug problems with syncing myself forced me back to my previous love: Emacs.

I overcame Emacs multi-platform issue with Dropbox and simple workarounds.

Now I’m diving even more into Emacs thanks to org-mode and Lisp.

Am I getting more things done? Yes, because I don’t have to debug problems I can’t solve.

Stick with tools you love (to debug)!