Of sorts, although things aren’t that bad.

I somewhat recently dropped my (now old) new old phone and cracked the screen. It was still usable, but I’d been toying with getting the battery replaced via a third party since it was at 45% battery health, but with the screen broken I’d have to replace that first and at that price might I might as well get a second hand SE 2020 instead. If I had that much money. Which I don’t. So I switched back to my original iPhone SE (85% battery health). I was amazed at how much better and brighter the screen is. I can use Apple Pay without it freezing the screen. It’s so light and small I don’t even notice it in my pocket. The A9 processor is still fast enough. This was the peak of phone technology.

In hindsight I would have not bothered with the iPhone 8, I got that because I anticipated the iPhone SE going out of support, but it actually took a year longer than I thought it would until the latest iOS wouldn’t run on the SE, plus Apple pretty much do support the previous iOS for another year anyway (iOS 15 just got an update so really it’s only going to be right about now as iOS 17 is released that it is unsupported). I’ve decided it can last a little bit longer still and then maybe I’ll have to get something on contract - I’m paying £10 a month anyway for data/minutes/sms, if I got a contract at around £20 a month then that seems really quite reasonable.


My plan for one pair of running shoes a year is not going to work out. I’m not even at six months and I’ve had to re-glue the sole on one shoe and stitch a tear in the upper in the other (to be fair, the tear is exactly where I’ve removed the internal reinforcement cage, because it gave me a blister). I had not factored in all the dog walking, and what’s more the shoes getting constantly soaked from dewy grass which I’m sure has weakened the uppers. I hope they can keep going a bit longer (more glue, more sewing) and then I think I’m going to try some cheapish Decathlon trail shoes (£40 for the Evadict Easytrail to £60 for the Evadict TR2) which can do the combo of road, trail and dog walking; I slipped over at the weekend on a muddy trail run in my “road” shoes so it’s time for something with more grip.


And this was going to be a separate post, but actually there isn’t that much to say so it makes sense to be part three here. I’ve sadly given up using Teuxdeux (again) and have switched back to Taskwarrior. It’s going to save me a bit of cash and I wasn’t thrilled with the direction the preview was going in: Function over fashion, whereas I really appreciated the fashion of Teuxdeux, if I want pure functionality… well, there’s Taskwarrior. Since I last used Taskwarrior the bugs that impacted my reports have gone so I don’t need any wrapper scripts, etc and I can have simple reports like so:

#Custom report - Teuxdeux
report.teuxdeux.description=TeuxDeux style
report.teuxdeux.sort=due+/,tags-,description+
report.teuxdeux.filter=(status:completed or status:pending) and due.after:sow-1min and due.before:eow and -BLOCKED
report.teuxdeux.columns=id,uuid.short,tags,due,description.truncated_count
report.teuxdeux.labels=ID,UUID,Context,Due,Description

#Custom report - Teuxdeux
report.roll.description=TeuxDeux rolling
report.roll.sort=due+/,tags-,description+
report.roll.filter=(status:completed or status:pending) and due.after:-2days and due.before:5days and -BLOCKED
report.roll.columns=id,uuid.short,tags,due,description.truncated_count
report.roll.labels=ID,UUID,Context,Due,Description

I am trying to use it mostly like Teuxdeux, but with:

  • annotations for links, etc instead of markdown in Teuxdeux
  • sometimes using tags instead of short prefixes like I would in Teuxdeux

I.e. just keeping it as simple as possible. I also resurrected my crontab entry for rolling over incomplete todos.

I never finished off updating Haskerdeux for the new Teuxdeux API, but using Taskwarrior means I could easily update my Apple Watch shortcuts so I can once again see and complete todos from my watch. I thought about setting up a sync server, but I might as well just have my home todos on my server and my work todos on my work laptop and separate things that way. Simple.


[EDIT: 2023-10-30] Turns out the daylight saving bug is still there in Taskwarrior. Almost nine years since I provided a patch. For now I’m not going to update my patch and rebuild from source because I’m using on my work macOS machine and my NetBSD server so it’s easier just to use the binary. I’ll just modify tasks after daylight savings occur using task $(task +TEMPLATE -DELETED uuids) modify due:'due + 1 hours', etc; At least I just use recurrence.limit=1 now; I did think about just setting my recurring tasks to midday, but this other old bug screws up my report grouping.

[EDIT: 2024-04-01] Can also do task $(task +INSTANCE -COMPLETED -DELETED ids) modify due:'due - 1 hours', etc to modify the child tasks. I would reapply my patch, but 1) Lazy / no time and 2) Just that really.

[EDIT: 2024-11-15] Added in -DELETED and -COMPLETED. Noodling on doing something like for when I have a mixed bag of due dates on tasks:

for tuuid in $(task +INSTANCE -COMPLETED -DELETED uuids)
do
    hour=$(task _get $tuuid.due.hour)
    if [ $hour -eq 1 ]
    then
        task $tuuid modify due:'due - 1 hour'
    fi
done