2024.04.11.

2024.03.17.

Playing around with Tailscale

I’m playing around with Tailscale, but I’m not sure about the privacy aspect of being on a VPN all the time. I want to sync DEVONthink and OmniFocus using a WebDAV server on my Mac mini, but running Tailscale 24/7 raises some questions.

  1. Is it really end-to-end encrypted?
  2. Does all traffic go through the VPN?
  3. What about network issues when using a VPN? I’ve seen some connection drops in the OmniFocus sync logs when I used my Mac mini as a sync server.

I love the idea of having my private network of devices available everywhere. But I don’t trust random companies with my data, so I want to do my research before I start to use Tailscale with all my devices.

2024.03.05.

2024.02.20.

2024.01.19.

2024.01.06.

2024.01.05.

Texting yourself for capturing ideas

  • A couple of months ago I started to use Messages for talking to myself.

  • Why do I want to do that?

    • When I want to figure something out, I noticed that the best way to do it is to start writing in freeform text.

    • It feels like talking to myself, which helps me to externalize my ideas, and find solutions quickly to problems. It’s like a pre-thinking phase for capturing ideas in a timeline format, then organizing them later in a mindmap or an outline.

    • Slack has a similar idea of why you should start to message yourself. When you open your profile and press the Direct Message button, the following message appears on the top.

      • This is your space. Draft messages, list your to-dos, or keep links and files handy. You can also talk to yourself here, but please bear in mind you’ll have to supply both sides of the conversation.

    • Others also wrote about this idea in more detail. It is the modern version of emailing ourselves.

    • Messages is actually a pretty cool candidate for this workflow. It is available on all my devices, I can pin messages for reviewing them later, and it is still the best way to share information between my devices when AirDrop and Handoff farts themselves.

  • How to set it up?

    • Texting with ourselves in Messages is a bit weird since every message will be sent back in the same thread duplicating everything. We can avoid that by registering a new iCloud account and sending messages to there.

    • I have a sparse iCloud sandbox account which I use for testing. I logged in from my old MacBook Air, then I started to write thoughts for myself over iMessage.

      • We have to log into a separate iCloud account at least once, otherwise, Messages won’t pick up the account as a proper recipient.

  • This is yet another version of the capture step in GTD

    • This idea was cool, but for me it quickly fell apart. People get the idea of writing stuff down, but they forget that it needs to be processed later.

    • When I had to pull out data from Messages, it was hard to mark my processed position in the timeline.

    • I started to use a marker message by typing 5 equal signs which is similar to how I mark my processed position in my notebook using a double line.

    • When I process, I usually reference information between apps, which means that I like to link to the source or at least copy the text out into a place that I can link to.

      • There is a hidden URL scheme in Messages, but it is really hard to link to messages.

        • sms://open?message-guid=UUID

        • If there is a data detector visible in your message (like the text of “tomorrow 9:00am”), Messages will underline it, and you can create a new event or a reminder by clicking on it. Creating a new reminder will also add the link to the message which you can copy.

    • Getting links or text out of Messages is actually bit convoluted.

  • Strflow, an actual app made for texting yourself

    • I just found a unique new app today called Strflow, which mixes note-taking with a messaging interface. It works exactly like I wanted to use Messages.

    • Why it is better than Messages?

      • There is a “Copy Note Link” command for every note.

      • Notes can be edited after they are created.

      • There is a minimal Markdown-like syntax available, which lets me have the right amount of formatting for quick notes like these.

    • I love unique apps like this one – that’s one the reasons I love the Mac, since you can always find interesting tools like this – although it still has some missing pieces.

      • iOS version (the developer mentioned that he’s working on it).

      • Spotlight integration: it just feels right to index and search snippets of information in Spotlight.

      • Better export: we get a JSON file on export, but since the app uses Markdown for formatting, why not export proper Markdown notes?

        • It would be even better if I could define a date range for exporting, so processing information can be done outside of Strflow.

      • Although there are unique links for each note, getting them is a bit hard. I have to ⌃Click and choose the “Copy Link to Note” command from the context menu which is not available in the app’s menubar.

        • strflow://show-note?id=UUID

      • Selecting notes can be done using the trackpad, but having keyboard shortcuts for navigating up and down would be useful to select one or multiple notes.

  • So what am I using Strflow for?

    • As I mentioned, I mostly use this app for talking with myself to figure out something by writing.

      • I started the draft of this post there.

      • I saved couple of links which I want to revisit later.

      • It is like a private version of Mastodon.

    • It is going to be another inbox/journal/status update tool next to my interstitial journal in TaskPaper.

2024.01.01.

Bookmarked “Tofu · Amar Sagoo”

Tofu was designed to help you read text on your Mac.

Text is often very wide, making it hard for your eyes to jump from the end of one line to the beginning of the next. That’s why newspapers have narrow columns: it makes them faster to read. Another problem is that vertical scrolling can be disorienting, as lines of text all look pretty much the same and are hard to track as they move.

Fuck yeah, there is an update to Tofu!

2023.12.26.

2023.12.24.

2023.12.23.

2023.12.21.

2023.12.19.

It is more than funny (and sad) that Electron apps are so bloated now that they can’t even offer a proper universal binary. You have to pick the CPU family on download.

New Hookmark scripts for Reminders

I updated my Reminders/Hookmark integration script recently to make it faster on Sonoma. I also made sure that I have a “New Item” part too, so I can create reminders directly from Hookmark.

The “Get Address” script uses the backing SQLite database to find the ID of the selected reminder by title.

There are some caveats to keep in mind:

  1. We have to replace the remindersDatabasePath property with the proper database path which is different for everyone.
  2. Reminders are matched by title, so if we have multiple reminders with the same title, the script may fail to link the proper one.

Here are the scripts updated for Sonoma:

Get Address

use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions

-- Replace this with your Reminders database path.
property remindersDatabasePath : "/Users/yourusername/Library/Group Containers/group.com.apple.reminders/Container_v1/Stores/Data-some-UUID.sqlite"

tell application "System Events"
    tell its application process "Reminders"
        tell its window "Reminders"
            tell its splitter group 1
                tell its UI element 3
                    tell its UI element 2
                        tell its UI element 1
                            set reminderOutline to first UI element whose selected of UI element 1 is true
                            set theReminderName to value of UI element 2 of UI element 1 of UI element 1 of reminderOutline
                        end tell
                    end tell
                end tell
            end tell
        end tell
    end tell
end tell

set theSQLCommand to "/usr/bin/sqlite3 \"" & remindersDatabasePath & "\" \"SELECT ZCKIDENTIFIER from ZREMCDREMINDER WHERE ZTITLE = '" & theReminderName & "'\""
set theReminderIdentifier to do shell script theSQLCommand
set theURL to "x-apple-reminderkit://REMCDReminder/" & theReminderIdentifier
return "[" & theReminderName & "](" & theURL & ")"

New Item (this one can be a bit slow unfortunately)

tell application "Reminders"
    set theName to "$title"
    set theBody to "$user_link"
    set theReminder to make new reminder with properties {name:theName, body:theBody}
    set theReminderURL to the id of theReminder
    set theReminderURL to do shell script "echo \"" & theReminderURL & "\"|sed 's/x-apple-reminder:\\/\\//x-apple-reminderkit:\\/\\/REMCDReminder\\//g'"
    activate
end tell

theReminderURL

I haven’t tested these on earlier systems.

2023.12.17.

2023.12.12.

Follow-up on Apple and journaling:

I like the Journal app, even if it’s barebones as all 1.0 apps usually are. Since I mostly use default Apple apps, the recommendation feature works well for me.

It is a good base for more advanced features in the future (I guess we see nothing new until the next WWDC).

I’m going to keep Everlog around as an archive though.

2023.12.09.

2023.12.08.

Read “Michael Tsai – Blog – Mac Menu Bar Icons and the Notch”

On my 13” Intel MacBook Pro, the icons reached to about halfway across the screen. On the 14” M3 MacBook Pro, ironically a machine with a larger display, at least 3 icons get hidden.

This “design” (or lack thereof) is so dumb. It is utterly ridiculous to me that this is still how it “works” two years after the introduction of the redesigned MacBook Pro with a notch. How hard could it be to add an overflow menu with a “«” (or should it be “»”?) button that shows the remaining apps and icons that can’t be displayed? This entire situation with the notch is ironic, because the iPhone notch and “dynamic island” are so thoughtfully designed with zero compromises regarding the functionality of iOS. In fact, they actually provide a better user experience. Yet on the Mac, how the notch interacts with macOS is laughably incompetent. It is shockingly lazy regarding attention to detail, and results in an outright disruptive and confusing user experience.

Here’s my current menubar:

I try to keep my less frequently used icons (like Hookmark) on the left because I mostly invoke them from the keyboard anyway. But I hate when Docker gets stuck behind the notch, and I have to quit other apps on the right to get Docker back to the screen.

Apple should do something about this behavior because it’s really annoying. And no, I’m not going to install a 3rd-party app to fix these issues, even if I love its icon.

2023.12.06.

Read “Web Apps Are Better Than No Apps”

Since web apps can’t just use the components provided by the operating system, they have to recreate everything from scratch. And this creates a lot of burden for developers and, I think, lowers the quality floor. Creating beautiful, compelling apps is possible, but it requires so much work. People building native apps get it all “for free”. In fact, this could be one of the reasons Apple still has such a vibrant ecosystem of great artisanal apps since developers can build most things out of nice ready-made components.

Well, yeah!

2023.12.05.

2023.12.02.

2023.12.01.