2024.01.13.

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.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.11.17.

The myth and reality of Mac OS X Snow Leopard

I agree with this. We would be better off with a more “natural” update cycle on the Mac. It’s a slower-moving platform these days anyway:

Regardless of the motivation, the annual updates are more of a burden than a blessing to many Apple customers, including myself. I wish that Apple would drop the artificial schedule and let the major updates come more naturally. This isn’t just the attitude of a developer and so-called “power user”. Many “normal” users”, the proverbial moms, feel the same way. Actually, my literal mom told me she doesn’t like the ceaseless annual major updates either. She’s learned from hard experience that they’re not necessarily safe to install. Major updates can be very disruptive, creating new problems and wrecking old workflows. The press is always excited by major updates, because they give the press a lot to write about, but the public is not as sanguine. We occasionally need a break of 23 months, or more, from computing disruption. That would be another Snow Leopard.

Related to this: The Mac, The Myth, The Legend: How Snow Leopard became synonymous with reliability

2023.10.27.

2023.03.16.

Of course, we need to merge the Mac and the iPad…

We’re entering the spring, and the Mac and iPad Pro are on a collision course.

How about, no?

Because Federico doesn’t like Stage Manager and iPadOS doesn’t have multi-channel audio capabilities currently, I don’t want my iPad to become a Mac, and I don’t want my Mac to have a touchscreen (and become an iPad). And I especially don’t want them to be merged into one device (buy a Surface Pro if you want to have everything in one device, that will surely be fun).

I fear that I’m going to have to wait a couple of years for the Apple computer I want to exist, and I’m not sure anymore that iPadOS can evolve in meaningful ways in the meantime.

And I fear we will end up with an OS that is just copying macOS because we must repeat the same “Apple can’t evolve iPadOS” narrative on MacStories every two years.


While discussing iPadOS, I’m also tired of hearing about the “there are no pro apps for the iPad” argument. Let me tell you something: there are many pro apps available for the iPad, only they feel different since the device these apps are running on is very different.

Where are the pro app reviews of Affinity Designer, Affinity Photo, Affinity Publisher, or DaVinci Resolve on MacStories?

And what about Ulysses, Craft, Things, MindNode, Pixelmator Photo, or Keynote, which are fantastic on the iPad? Are those pro apps enough? I use these apps every day for “serious work” on the iPad, but I also have other pro apps on my Mac for development because it is just better for that task.

Or should we have Final Cut Pro and Xcode for the iPad? That’s what Apple pundits mean? Are you seriously expecting Apple will port FCP with all its features available in the 1.0 release, and it will be usable on an 11-inch iPad Pro?

I’m sure Apple will release more of their pro apps for iPadOS down the road, but don’t expect it will work like the desktop version. Apple pundits, of course, will complain about it not being like the desktop version, like they do with Photoshop being simpler on the iPad.

Let me remind you that Photoshop and Final Cut Pro (or Logic Pro, for that matter) are apps with decades of development history. Nobody will bring the same level of functionality to the iPad on day one. If you want to use the desktop version of Final Cut Pro, then use the damn desktop version of Final Cut Pro.

Let’s not forget that iPad Pros, which are at the top of the food chain for iPadOS, have the same CPUs as Macs at the bottom of the food chain. If we consider a MacBook Air mainly made for everyday tasks (maybe with a bit of “pro-work” here and there), what performance are you expecting from an iPad Pro with the same CPU?

There are many low-hanging fruits to be fixed on iPadOS, but let the damn thing shine on its own. If Apple merges these two platforms, like how pundits want them to, we will end up with a freak-show.

2023.02.08.

2023.01.25.

2022.09.03.

Using Apple Reminders for GTD

The built-in tools of macOS are capable of serving a complete GTD system, making it possible to fully automate it without additional software.

These tools aren’t made for GTD per se, so we must strive to implement a simple system for ourselves. We have to focus on achieving goals using our GTD system, not perfectly organizing our stuff.

There aren’t many people who use macOS tools to their full potential. It happens probably because not many people can think in systems; they expect the tool to give them a system. macOS doesn’t provide you with systems. It is a general OS that needs to be bent to the GTD way of things.

The new features of Apple Reminders make it capable of replacing more serious task management apps. There is no better time to consider using Reminders as a free alternative to OmniFocus or Things.

I will show you how to set up Reminders for a GTD-inspired workflow in this post.


Creating two groups for our lists

We can create two types of lists in the Reminders app: traditional lists, which can be used for planning, and smart lists, which are best used for everyday work.

Traditional lists are simple containers where we can organize and store reminders. It’s similar to having a list of reminders written down on paper, but a digital reminder can do way more than its analog relative. It is essential to mention that we can indent reminders under each other on these lists, which we will use later.

Compared to this, smart lists can be updated automatically. They can sort and display reminders for us based on predefined parameters, which makes them the perfect candidate for creating context-based lists. There is no way to show a reminder with sub-tasks on a smart list. Fortunately, we don’t need to manage sub-tasks in a GTD system by default because every project should have concrete next actions. If you need a checklist for a next action, you can store that inside the reminder’s notes field.

To organize our lists appropriately, we have to create two groups that will split our lists by type.

  1. First, we have to create a “Planning” group that will organize our lists used for project-based planning.
  2. Second, we need to add another group called “Doing,” which will contain our context lists.

Using the “Planning” group

The “Planning” group represents one of the two horizons of GTD, where we see our next actions grouped by projects.

We will keep our traditional lists organized inside the “Planning” group so that each planning-related list will be in one place. It can help if you create separate lists for each of your responsibilities, like personal or work projects.

These lists will contain projects by keeping top-level reminders for every project, and then its next actions will be listed as a sub-task under the project’s reminder. By organizing content this way, we will connect projects to next actions.

Contexts will be assigned using tags, which is one of the new features of Reminders running macOS Monterey and iOS 15. If there aren’t any tags set on a reminder, we should consider it as a future next action, which we can’t do anything about immediately, but we want to avoid forgetting it. Keeping project plans in Reminders is fine for smaller projects, but for more significant projects/goals, we should keep our notes, possible next actions, plans, assets, and ideas in a separate app.

If we assign dates for these reminders, they will show up on the Today list on the day we set; also, we can keep track of upcoming reminders on the Scheduled list as their date is approaching, basically using this feature as a digital Tickler File.


Connecting next actions to projects

Lists inside the “Planning” and “Doing” groups are used to sort our next actions by project and context. I should mention some caveats though related to this list organization method.

  1. First, our events/appointments/meetings are still kept separately on our calendar, so we have to review them individually.
  2. Second, there is no logical difference between a project-related reminder and a next action-related reminder inside Reminders. If you are coming from a dedicated task management app like OmniFocus or Things, it can feel weird at first when we use the same type of reminder for projects and next actions as well.
  3. Third, relating next actions and projects can be challenging, resulting in more time spent on system administration than necessary (I write about this in more detail below).

Now, it’s time to talk about the nuances of the connection between projects and next actions. In the original GTD implementation, there is no connection between them; everything is on separate lists; we are the ones who logically connect these once a week during the Weekly Review.

Nowadays, task management apps are training us to see tasks listed directly under their project. But what about other types of next actions that we keep in other apps, like our calendar? We can only assign next actions to projects that we hold in our task management app; these apps don’t keep track of our calendar events. During Weekly Reviews, we can be under the impression that all we have to think about related to a project are the tasks listed under it, forgetting about other places like our calendar. We have to connect those to their corresponding projects manually in our head. It would be a better workflow to let the software handle these connections automatically; sadly, no such software exists yet, so we have to find the logical connection between things, so our minds can see the whole picture.

Connecting next actions to projects can also slow down inputting information into our system. In the classic GTD implementation, all we have to do to add a new item is append it to the appropriate context list. Suppose you want to keep track of the relationship between projects and next actions. Additional information will be needed—usually in a different form field—which slows down the input process. When the only thing that we have to fill in is the task’s name, we think more about how we should name it (knowing that we won’t see the project related to it). We will phrase more precise next actions, so we can imagine the physical activity better before we start doing it, which results in less procrastination, and more work being done without much thinking.

It is good to know (from the UI point of view) that Reminders won’t display the projects on context lists because—compared to OmniFocus and Things, where the project and the context are actual properties of the to-do—in Reminders, the project is just a structural connection (the parent of a reminder).

As you can see, connecting next actions to projects inside Reminders can be cumbersome because we have to set up a tree-like structure where next steps are nested under projects using drag-and-drop. When you have an Inbox list (which we will talk about later), you have to drag the reminder to the corresponding list inside “Planning,” then click on the list again in the sidebar, find the reminder, and drag it under its project. The last step can be done using keyboard shortcuts, but it is far from being as intuitive as assigning projects to next actions in OmniFocus or Things; people accustomed to these apps can feel like this step is a chore in Reminders which results in more time spent on system administration than necessary.


The tag

As I mentioned before, there is no difference between project reminders and next action reminders, so it’s a good idea to set the tag for reminders which are representing projects. You are right to ask: why is there a need for this tag when every next action is a sub-task of a project reminder defined as a parent?

First, not every next action is related to a project. You will create a bunch of singular to-dos which doesn’t need to be assigned to a project because they can be completed alone, for example, “refill paper in the printer,” “clean the desk,” “moan the grass,” etc. Since these reminders are not represented as sub-tasks, they will show up at the same level as projects, so it’s a good idea to differentiate these singular next actions from projects.

The second thing which can make the tag useful is highlighting orphaned projects. As we complete the five steps of GTD, we will end up with projects with no remaining next actions because (if we are lucky) we’ve completed the project, or (which happens more frequently) we forgot to capture a next step about the project. There is nothing wrong with that: this is why we keep the project list around, so we can remind ourselves to define next actions for every one of our goals. If our project reminders are marked with the tag, we can find orphaned projects more quickly in a long list; we don’t have to stop and think about if the reminder represents a project or a singular next action.


The Someday/Maybe list

The goal of the Someday/Maybe list is to have a place where we can collect things that we aren’t engaged in right now. This list can contain stuff that we’re are “cooking”: can be ideas, inactivated projects, dreams, goals that need to be achieved in the future, etc. We don’t think of them as “active” right now, but any one of them could be activated, “maybe someday.” We keep the Someday/Maybe list in the “Planning” group, so we’ll have a place to save these items later.

Here’s a good idea to integrate into your habits when a project becomes inactive: remove every tag of every reminder representing the inactive project and its next actions, then move these over to the Someday/Maybe list. This way, our project list is kept clean, so we will not think about outcomes that aren’t available right now; also, next actions from inactive projects will not show up on our contexts lists inside the “Doing“ group. We know that our context lists show only to-dos, which are actionable right now.

It is crucial to review the Someday/Maybe list from time to time (ideally weekly) since it can quickly turn into a dumping ground for random ideas, which we never review. If you use the Someday/Maybe list this way, you’ll become a compulsive collector: you capture things, but you throw them into a never-reviewed self, and in the end, you’ll end up with a lot of unused stuff.

According to GTD, your mind can’t let go of something until you give that thing the proper attention. We have to review our whole system habitually because that’s how our mind can relax and be sure that it will encounter information stored in an external system regularly.

When you introduce a new habit, you have to prove that you do it regularly. The only way to integrate a new behavior into your identity is to make your brain trust that it is done habitually (trusted system). When this happens, we change our identity and turn the habit into autopilot mode; our brain will rest and let go of the burden of reminding.

As you can see, you have to agree with yourself that the Someday/Maybe list needs the same attention and maintenance as the whole system so it doesn’t turn into a place of forgotten ideas.


Using the “Doing” group

We have to be in constant motion to gain back control. Rather than starting from stillness, it’s way easier to change the direction of something that already moves. One of the fundamental aspects of being in control is taking the appropriate next action at the right moment, which could propel you to the final goal.

You achieve change with a bunch of small steps, done consistently. It is similar when comparing the directions of two vectors starting from the same point. Over time, the endpoint of two vectors can get far from each other, even when you have a couple of degrees difference in their directions at the starting point.

Using next actions, we can slice and dice otherwise hard-to-do processes into smaller pieces, so over time, our life will be in a state where we can declare a project done. Because a next action is atomic, it has to formulate an actual physical activity.

If the meaning of an activity (tracked in an external system) is not apparent, then the brain has the burden of thinking about it again, which uses up a lot of unnecessary brainpower to figure out stuff you already figured out. You should be able to imagine any next action physically without thinking about it too much. You are more likely to complete a physical activity if you can imagine it in your head, which reduces the chance of procrastination.

When you start to do real work, next actions have to be obvious, so you can quickly scan through a list of tasks on a context list. The best thing to do is find similar steps, then do those in batches to avoid multitasking with many unrelated activities.

It’s easy to slice your work into different situations, like when you are at the office and want to accomplish something quickly or have a phone and 10 minutes to do one or two short calls. These situations are called contexts which we represent with tags in Reminders.

We mainly use smart lists inside the “Doing” group to filter reminders that have at least one context tag assigned (I also like to keep other lists inside the “Doing” group, like my Groceries list, which I share with my wife); we set tags up for every next action when we add them inside the “Planning” group. You can organize next actions via drag-and-drop as well: when you drag a reminder onto a smart list, Reminders will apply every tag from the smart list’s filter.

The goal of keeping context lists is to remember if you have a list for different situations. If you do, you can open it and review your possible next actions. You do this multiple times a day; every time, you have to ask yourself: what’s the next thing to do?


Reviewing the system

Using the “Doing” and “Planning” groups, you can sort your content by projects or contexts. This way, you can immediately review your system in any situation based on the nature of the work.

The “two horizons” based sorting is usually available in serious task management apps like OmniFocus, but with the system described here, you can have a similar setup with Reminders.

We discussed the importance of reviewing context lists in the previous section: we sort our next actions by context because we should see only tasks that we can pick in the current situation (considering the limits of the context). The classic example of situational limitations is when you sit on a plane, and you see “moan the lawn” on your “Home” list… well, you can’t do that since you’re on a plane.

Usually, there are two types of next actions on our context lists:

  1. Activity-based next actions, which can be done within the limits of the context. A descriptive next step can help you imagine how the activity will look when you do it.
  2. Verb-based next actions, where we are doing something about or something with the item that the reminder directly mentions. Usually, you can do these activities in one sitting, like utilities to pay, articles to read, receipts to organize, etc.

If we look at contexts, we can see natural and artificial contexts.

  • When you’re in a natural context, you automatically reach for the list at the right moment.
  • For artificial context, you need an external reminder to check the proper list (such a reminder can be your calendar, where you can create an event to check the context list; this way, you can block out a couple of hours to do just one type of work).

We use project-based sorting in planning mode to answer higher-level questions. Projects are adding directions to otherwise seemingly dumb processes. You can’t keep a process under control without a concrete project—a project is like a stake in the ground. During planning, you can get a project under control using the following process in your head (or for complex projects, using external tools such as mind maps and outlines):

  1. A brief description will automatically make you imagine a successful outcome for the project: try to phrase it in one sentence.
  2. By creating next actions, you slice the project into smaller, achievable pieces. If you do these next actions, your project will become a reality after a while.

Project planning can give you a direction, but it doesn’t mean you will accomplish your goal the way you planned.


Linking external assets

There are project-related assets like project plans, emails, and references which you may want to access quickly. Reminders is one of those Apple apps (next to Notes) which integrates with the “User Activity” system.

If an app supports Handoff, its content is probably linkable from Reminders. You can create such links in two ways:

  • You can open Siri and tell her to “Remind me about this.”
  • You can select any text in the source app, control-click on it, and share it with Reminders using its share extension. Some apps can share their content directly with Reminders.

Above that, we can link to content using URL schemes and deep links.

  • If we paste a link into a reminder’s notes field, it will turn into a clickable link.
  • Also, every reminder has a dedicated URL field that can contain web and application links. If you paste a link here, Reminders will show a small thumbnail under the reminder. You have to click on the link, and the resource will be loaded.

You are right to ask, what’s the point of connecting reminders with related assets? If you think about it, the asset is the noun, and the reminder is the verb which clears up what we should do about or with the noun. As you can see, the two go hand-in-hand, making our life easier by giving us a shortcut from the verb to the noun.

Writing down our thoughts on paper is the best way to untangle and give order to them. Paper has a tactile feel, and its freeform nature makes it a natural tool for this task. Digital tools are better at making information searchable; they can also store the results of our thinking, so we can naturally use them in conjunction with paper.

Knowledge is distributed between our mind and external tools supporting it. These tools can rely on our brain’s recognition capabilities to remind us of things; you can harvest this unique relationship between tools when you have to recollect a context, a project, an action, or any other project support material.

Supporting our minds with external tools gives us a shared system between the two, where the sum of the two results in knowledge. This way, you can use the best tool for the job: your mind to figure things out and external tools to store that knowledge.

As you can see, managing the connection between reminders and related support material can shorten the time between a thought and an accomplishment.


Setting up and using an optional Inbox list

We can’t let go of something until we pay attention to it. We need to have directed awareness, so we must write down potentially meaningful stuff floating around in our minds. GTD can help you with that, but you need to be mindful. Our brain constantly thinks about unclear stuff to indicate open loops: you must pay attention to that.

You have to collect (write down) ideas, have to’s, should to’s, anything that is potentially meaningful to you, then review and decide about what each item means, what you’re going to do about it (if anything), and finally pick where is the result of your thinking is going to be stored.

When everything is in its place, your brain can let go of this mess, relax and accept the current reality.

Almost every task management app includes a section for unprocessed items (called the Inbox), which makes the collection and processing GTD step easier; you can store things in your Inbox which are still uncleared. You can adapt something like this in Reminders, too, by creating a new list called Inbox. You can set this as the default list, so you can instantly start collecting things you haven’t decided about yet.

Using the Handoff integration mentioned in the previous section, you can add new items system-wide to Reminders similarly to other GTD apps. New reminders added via Siri and the Share Sheet will automatically appear on the Inbox list.

You can also use the Inbox list as a form of a temporary notepad to plan a project and its next actions. On this list, you can unpack a whole project with all related next steps, which can be dragged to their final places at the end.


Simple GTD

The workflow I introduced to you above is just one way to integrate GTD with the free Reminders app built into Apple’s platforms.

The point of GTD is to make sure that what you do at the moment is the right choice from your options, so your brain can focus on the current moment and stop worrying about the past and the future. We have to trust our system and use its list habitually.

When we’re reviewing our lists, we will trust that by storing the results of thinking in an external system, we will pick the right thing to do in the proper context—having a system that works like well-oiled machine guarantees that we will reach the goals that we picked for ourselves.

2022.06.14.

2020.05.07.

Steve Jobs fotói a macOS-ben

Eddig nem tudtam, hogy Steve Jobs fényképei voltak ezek a macOS hátterek:

It shouldn’t surprise anyone that Steve Jobs liked to take pictures. He was even taking a picture the last time I saw him. However, many people might not know that some of his photos shipped as Desktop Pictures in Mac OS X 10.5 Leopard.

A Grass Blades hátteret én is használtam sokáig. Ez volt az a vizes, Vista-szerű, füves kép, amivel bemutatták a Leopardot a 2007-es WWDC-n. Kár, hogy nincs már belőle nagyobb felbontású verzió.

2020.02.26.

Disable ringtones for call notifications on Mac, iPad, and Apple Watch

I was browsing Twitter yesterday and run into a group of people who disabled call receiving on their Mac because of macOS makes your Mac ring like any other mobile device by default. This can be great if your phone is in another room, but if you like me, your devices are nearby most of the time, so it’s really annoying when all of them are starting to ring at once when I receive a call.

Luckily there is a way to mute ringtones but keep the call notification around. This means your iPhone will ring, but other devices will stay silent and just show you the incoming call, giving you an option to answer them or hang up right there.

For some reason FaceTime notification settings are also controlling the appearance of phone calls on macOS, iOS, and iPadOS, so you have to customize that.

macOS

Go to System Preferences/Notifications, find FaceTime in the list and turn off "Play sound for notifications". This way macOS will show all incoming FaceTime, FaceTime Audio, and regular phone calls in the top right, but your Mac gonna stay silent.

Screen Shot 2020 02 26 at 11 40 40

iOS/iPadOS

For some reason, there is no way to disable sound for call notifications on iOS and iPadOS, although there is a workaround: you can create a silent ringtone using GarageBand or you can buy one from the iTunes Store (buying will also make it available for your other iOS devices).

After acquiring the ringtone, go to Settings/Notifications, select FaceTime and set your new silent ringtone under Sounds.

IMG 0010

watchOS

Open the Watch app on your phone, scroll down, select Phone and turn off Sound.

I like to keep Haptic turned on because sometimes I’m away from my iPhone but I still want to "feel" incoming calls on my wrist.

PNG image


Setting up your devices this way gives you the best of both worlds: your devices – other than your iPhone – will stay silent when you receive an incoming phone or FaceTime call, but you’ll see the caller ID on the device you’re using. Also it will give you the option to answer the call without picking up your iPhone.

2020.02.20.

Since nobody mentioned yet that the 10.15.4 beta 2 contains a new lyrics view in Music, I’m going to mention that the 10.15.4 beta 2 contains a new lyrics view in Music.

Screen Shot 2020 02 20 at 0 19 09

Screen Shot 2020 02 20 at 0 19 18

2020.02.10.

A conspiracy theory about butterfly keyboards

Movie Director Taika Waititi Tells Apple to ‘Fix Those Keyboards’ at Oscars:

“Apple needs to fix those keyboards,” he said. “They are impossible to write on — they’ve gotten worse. It makes me want to go back to PCs. Because PC keyboards, the bounce-back for your fingers is way better. Hands up who still uses a PC? You know what I’m talking about. It’s a way better keyboard. Those Apple keyboards are horrendous.”

My MacBook Air’s keyboard works fine. Also my wife’s 12-inch MacBook’s keyboard – which is the first generation of butterfly keyboards – is fine too. The secret is to clean these keyboards every other week with compressed air and don’t eat near the notebook (which is a wise decision in general). The typing experience is another question…

Just a quick conspiracy theory for fun: what if Jony Ive was kicked out of Apple because the butterfly keyboard was left unfixed for years and damaged Apple’s reputation? It’s weird that Apple switched the keyboard on the 16-inch MacBook Pro around the same time as Jony left Apple. Maybe they don’t want to admit this, because of the otherwise great work Jony did for Apple over the years.

2020.02.07.

2020.01.15.

The Apple Archive:

The (Unofficial) Apple Archive Dedicated to the unsung studio designers, copywriters, producers, ADs, CDs, and everyone else who creates wonderful things.

Well, I’m gonna spend a couple of hours here.

2020.01.02.

Replying to: MuellerSimhofer:

As user I’ve seen Spotlight implementations for document based apps (usually just using NSUserActivity), but the problem is that they usually duplicate results. You get one result from Files and then another one from the app’s index.

Also keeping the index up-to-date seems hard, since I can delete files outside the app, but the app’s index still contains it: I have to start the app, to get the index updated. I’m curious how you guys can solve this for MindNode.