I think what the author is trying to say is two things:

1) It's a bad idea to have a "Do this now or you're a bad person" list. I have to admit I've tried that many times, and it never had the effect I hoped for. It's also bad to keep an "ARRRRGH I WILL DO THIS I ABSOLUTELY WILL I COMMIT MY LIFE TO THIS" list, because at some point you fail to live up to the title, and then you just feel silly. I learned that through bitter experience.

2) TODO lists don't solve all the problems that might prevent you from doing the things on your list. To me, saying TODO lists don't "work" for this reason is a little bit like saying that taking a GPS and a first aid kit when you go backpacking doesn't "work" at preventing you from dying in the woods. I mean, how much can you expect? The Chinese general Han Xin used geography as a commitment device: he positioned his soldiers with their backs to a river so they couldn't run away from the enemy. Oh, wow, I guess you can expect a lot. Hmmm... maybe Perl has a command for threatening the user with death. Actually, I'd be amazed if it didn't. It's probably one of those default behaviors I'm always suppressing. I'll have to work out the details, but some kind of cron job approach seems promising.

Personally, I find that TODO lists work well as a small tool in the UNIX environment of life. It works well with other simple tools. For example, when I get in the car leaving work, I need to combine sex different kinds of information. There may be a seventh, but I can't remember what it was, so I'll just keep things moving.

1. I need to know how tired I am -- I basically just ask myself. If I'm too tired to answer, I take a nap in the parking lot and ask again when I wake up.

2. I need to know if I have any plans for the evening -- my calendar tells me that.

3. I need to know how good a case I can make for slacking off that evening, i.e., how much I have worked out, studied, read, and kicked ass at work that day and earlier that week -- for that I consult my memory. (I find it gives more desirable answers than other devices.)

4. I need to know what kind of things I can or need to get done. That's the TODO list! When I start to think my TODO list is so large and complex that it seems to need some kind of data model of its own, then that means I spend a few minutes a day reviewing it and tidying it up. It isn't wasted time. There are some things I write off and say, "Screw it, if I need to know this I'll look it up in some kind of information system." My TODO list is more important than that. I want to review what's on it on a regular basis, because that stuff needs to be in my brain. Maybe not completely and precisely, but at least a quick scan every day. When it gets too big to scan over quickly in five minutes and completely rework in twenty, then I know I'm making plans that are much too elaborate to ever correspond with reality. "Plans are useless; planning is essential." Your TODO list is a "plan" and is therefore constrained to be very modest in scope. Artifacts produced during "planning" should be immediately thrown away, since 1) they have already served their purpose, and 2) they should be recreated from scratch every time.

5. I need to know where the things on my calendar and my TODO list are so I can estimate driving distances and aggravation. For that, I use (in descending order of priority) my memory, map links in my calendar, Yelp, and Google search. I may also need to know what time various stores close (memory, Yelp, Google.)

6. I need to know what time it is. My phone tells me this.

Trying to keep all of these things in a single place seems both challenging and pointless. Also, there are also many subtleties.

For example, on some days, working out is slacking off, because I use it as a way to put off some coding I planned to do. Clearly, though, if I've been working out a lot, then I've earned the right to slack off, but not the right to slack off by working out, because that can lead to injury. This is a difficult problem to systematize. I have an elegant proof that an org mode solution exists, but constructing a concrete instance has defeated me thus far. At the moment, I'm trying to devise a solution using ruled and unruled index cards, paperclips, and color-coded rubber bands. Suggestions would be welcome.

On other days, I don't have the discipline to work out, so I'm lazy and write code instead. It even happens that I can't face the prospect of going to the gym like I planned, so I give myself the night off, and feeling freed from the boring, mundane obligations of middle class life, I find that what I really want to do is go to the gym.

(If you've followed along this far, then I hope you are starting to suspect that there is only one information processing device known to humankind that is intelligent, sophisticated, and irrational enough to model this behavior.)

Some days I just open a bottle of wine and order a pizza, and I earn this indulgence by going to bed at 10pm and getting up at six to study. That seems easy enough to plan out in a calendar, but what if my girlfriend calls me at 9:55pm and asks me what I'm doing? My calendar will be invalidated, and I will be too distracted to correct it. This situation also raises the question of what kind of list or other device I should use to decide what to do the morning after a night of drinking, because I usually wake up at 5am with not much intelligence or physical stamina but with infinite patience, which sometimes results in me cleaning my apartment for three hours, which is, like, three month's worth of cleaning for me. What would Han Xin make of that, eh?

Seriously -- not that any of the foregoing was false, because it's actually all true, except for the part about index cards -- life is too complicated to make anything but the roughest plans. This is as much true of buying groceries as it is of personal development as it is of software development. Motivation, discipline, and all such things cannot be handled by lists and calendars. They are handled by 1) recognizing what they are and reflecting on them, and 2) if necessary stopping, closing your eyes almost all the way, and calming yourself until you are able to reflect on them. At least, that's what works for me. And if that fails, I give myself the night off. If your decision-making is still consistently wrong even after you've made a strong effort to put yourself in a calm and open frame of mind, then it's because you're tired, sick, or mentally conflicted; tend to your physical and mental health first, and the rest will follow.

Or maybe you really, honestly, with your best heart, do not want to do what you are trying to make yourself do. „Der Mensch kann zwar tun, was er will, aber er kann nicht wollen, was er will.“ You can do what you want, but you can't want what you want. I.e., saying that you consistently fail to do what you want, even when you take care of your physical and mental health, is like saying select is broken. When you think you're having problems doing what you want, it's more likely that you don't really want what you wish you wanted. Not that you have to accept that -- I think it's overblown to say you can't want what you want. It's just another thing that requires work. And if you don't really want to want it, my advice is just to forget it, but you can go all Inception on your motivations if you want (... to want... to want....)

If it still matters, I keep three TODO lists. I have an Evernote note which contains (at the bottom) my long-term shopping and TODO list and (at the top) my daily shopping and TODO list. It's in Evernote so it's always just a few seconds away. Every day, I copy (NOT move) a few items (or none) from the long-term TODO to the daily TODO, taking into account various due dates, business hours, driving constraints, and how much time and energy I expect to have. (This is a pretty easy problem for the human brain to generate a reasonable solution for, and I defy anyone to produce a system or computer program that can do it.) Often the "daily" version of a long task says "start X" or "continue X" or "spend twenty minutes on X." If an item from the long-term list gets completed during the day, I remove it from the long-term list later. (I rarely forget to remove an item from the long-term list, and when I do, it's AWESOME.) My work TODOs are handled in org mode. They sit at the bottom of my work log, and I touch them every day, reworking and reordering them as necessary. They're much simpler to handle: I just do them in order, modulo dependencies. Yet even at work I make occasional concessions to enthusiasm or the lack thereof.