This is something I wanted to get off of my chest for some time: the given fact that most GTD software applications are pretty much unusable in life scenarios. I know that’s a bold statement, but I based it on my years long experience with several of those applications. It basically comes down to the inability to handle large amounts of information. Most GTD applications (both laptop/desktop aimed and mobile apps) seems like an exercise in implementing a GTD-model in software, instead of being aimed at building a tool that actually works in real life applications.
So what’s wrong
Screens have beautiful layouts, clearly for showing the developers great taste in UI-design, instead of aiming at handling a vast amount of information in an efficient and handy way to work with. Not all available tools have this problem, but most do. And although I do like a nice UI like most of us, I want a functional UI first. The golden rule ‘form follows function’ seems almost absent in today’s software development practices, at least when it comes to public web portals and mobile apps.
The second issue is that many tools don’t even use a ‘real’ database to store all the related data, going for a one-file storage model that needs to get loaded into memory. Seriously, an XML-file is no substitute for a real database engine unless it’s handled like a database engine (i.e. pointer-based record access), and most XML-engines don’t work that way. Building an indexed array in-memory (which is easy, reason why it’s used so often) still means -all- data needs to be loaded first, so that doesn’t fix it.
The final outcome is that most GTD software applications seems more of a ‘proof of concept’, showing how such an application might work, but not able to handle more than just a few to-dos and/or projects. For any person working a day job that is at least slightly demanding and having an active personal life besides that, it’s not uncommon to have a hundred or more (small) projects going and over a thousand to-dos, which averages to just ten per project, not counting ‘stand-alone’ tasks. Try those amounts in any GTD application and you see what I mean. As long as you have ten to twenty tasks and about five or so projects, everything is fine. But that amount is obviously only what is minimally needed to demo such an application, the ‘falling down’ comes later when there is a load of time invested in using the application (as I experienced many times).
Why do developers build unusable (GTD) software
Well, this goes for almost any software project: the developers are NOT the users! This is one of the main problems in software development and will remain to be for the unforseeable future. The disconnect between the perception of a developer and the user experience, will always simply ‘be there’. But, I hear you say, developers use GTD as well, so they ARE in fact the user. That is true, but they are a special breed of users: developers are rarely also the company executive and if they are, it’s a very small company. There are probably not that many projects running concurrently and they will be fairly small projects in most cases. Besides that, software developers are NOT known for their very active social lives 😉 . So most developers that are actually using GTD (and building their own GTD software), do have a different use case then the average GTD user. So the disconnect is still there.
Some software examples
I’ve used several GTD applications over the years, with varying success and even more varying personal issues with each of them. Over the next few weeks I will post reviews of most applications I have used, and my personal experience with them. Finally, the last installment of this upcoming series of articles will be my current solution, and how I came to that.
So, if you’re interested in GTD and specifically in using a software application to support your own system, stay tuned 😉
Why most GTD-software is useless by HansPeterWillems.eu is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
I don’t know much about GTD software, since it is still the human who decides and takes action, unless the particular instance of the software learns how its particular user (master, teacher) wants things to be done.
What I like in your statement is the praise of the (abstract, virtual) table :))
Hi Hans – This is a very interesting post. Especially as a co-founder of a new GTD task management app! 🙂 I have worked in many different roles within high tech for the past 20 years, most of that time I spent searching for the perfect (for me) task management app. I finally decided to partner with a developer and create my own. Please check it out when you get some time at http://gtdnext.com
I agree with you that much of the time too much emphasis is placed on pretty UI vs functional UI. This often creates too many clicks and too much time spent creating your task list and not enough time doing it. Don’t get me wrong, it has to look nice or people won’t want to use it, but it also needs to function quickly with minimal effort. We have gone with an outline style – which has the advantage of being very fast. You can create a new task just by clicking enter and start typing. No dialog box where you need to select 4 or 5 settings before completing the task. Outlines also have the advantage of providing an unlimited number of sub-projects and task. All that power is easily available, but not required. We will review your post from time to time to make sure we think through some of the other issues you raised as well. Thanks J
Hi James,
Thanks for the kind remarks. I took a quick peek at one of the videos on your blog and I like it. It does remind me a bit of GTD-PHP (although GTDnext looks more polished). I will review GTD-PHP for this review cycle, so you might like to keep up especially for that upcoming review 😉