Time Out is 20 years old

I just noticed that I missed a major milestone a few months ago: my most popular app, Time Out, a break reminder tool for macOS, turned twenty years old on July 10! Its first beta release was on July 10, 2003, with the first general release on August 18.

(If you’re curious, you can see the release notes for those initial versions, and every one since then.)

To (belatedly) mark the occasion, here are some screenshots of the initial version of the app.

Firstly, the original app icon was simply a photo of my hands forming a T shape:

Time Out

Here’s a rendition of the app web page at the time; you can explore it yourself via the Internet Archive Wayback Machine (though the archived copy won’t look exactly like this):

Time Out website

And yes, the exclamation point (!) was initially part of the app name.

When you downloaded the app, it’d appear in the Finder as a disk image; the most popular distribution method at the time:

Time Out

On installing the app, you’d see the “lickable” Aqua-style General Preferences window:

Time Out

Unlike now when you can have many breaks, there were just the two that are defaults now, the Normal and Micro breaks, each with very few options:

Time Out

Time Out

When you started a break, it’d fade the screen much as now, but without customizable themes or buttons:

Time Out

These screenshots may look somewhat familiar; you can see the roots of the current app even in the first version. But the modern app has a lot more options, enabling you to customize it to suit your needs.

Happy birthday, Time Out! Going strong after 20 years — here’s to another 20!

How can I control Time Out from another app?

Time Out supports URL schemes to control some functions:

  • timeout://break/micro/start will start the Micro break.
  • timeout://break/micro/postpone1 to postpone the Micro break by the first postpone amount.
  • timeout://break/normal/postpone2 to postpone the Normal break by the second postpone amount.
  • timeout://break/mybreak/skip to skip “My Break”; use lowercase and omit spaces and punctuation for the break name in the URL.
  • timeout://break/micro/reset to reset the Micro break.
  • timeout://break/micro/pause/1h will pause only the Micro break for one hour.
  • timeout://break/micro/resume to resume only the Micro break.
  • timeout://pause will pause breaks indefinitely.
  • timeout://pause/10m will pause breaks for 10 minutes (use “s”, “m”, “h”, or “d” units, or no suffix for minutes).
  • timeout://resume to resume after a pause.
  • timeout://settings or timeout://preferences to show the Settings window.
  • timeout://settings/advanced/console to open the Console app.
  • timeout://settings/advanced/terminal to open the Terminal app.

Let me know if you want any other functions to be available via URL.

DejalNews #84: thoughts about Time Out syncing, iOS app, subscription options

DejalNews header

Welcome

This is DejalNews, an occasional newsletter from Dejal.

Want to get this newsletter in your inbox? Sign up on the Dejal site.

Time Out syncing

I am currently working on adding the ability to sync Time Out breaks between multiple Macs. Something many people have requested over the years.

Syncing is a little difficult, as it needs to cope with the idle states of each device — if one Mac is being used and another device is not, the idle one might be pushing the breaks back to give credit for natural breaks, but the one being used would not, so they’d drift apart. My current thought is to let them drift, but when the active one starts a break, it tells other devices and they also start the break then, re-syncing the due date for the next break.

If you use Time Out and have multiple Macs, would you like to have them sync, and do you have any ideas for how the sync should work?

I’m currently planning to support syncing between multiple machines signed into the same iCloud account; would you want to be able to sync between multiple accounts, e.g. to have the same breaks as other people at work or home? (Note though that it might be better to use fixed-time breaks in this situation.)

Please let me know your thoughts via the Contact page, or via Reddit.

Time Out for iPhone, iPad, and Vision Pro

Once syncing is done, another big project is to start implementing an iOS, iPadOS, and visionOS app! Another very popular request (well, for iOS, but once Apple’s new Vision Pro is available, I expect people will want to take breaks from it too).

An iOS app is tricky, as an app wouldn’t be able to dim the screen like the Mac app can, and it probably won’t be able to detect when the device isn’t being used. My best idea currently is to display a notification when a break is due, and start it when tapped, much like the ask-to-start schedule option in the Mac app.

Are you interested in an iOS app? Do you have any other ideas on how an iOS app could work? Please tell me via the Contact page, or via Reddit.

Time Out subscription option

As you probably know, Time Out uses an innovative supporter model: you can use the basic features for free forever, but some more advanced features are only available as rewards to supporters, people who help fund ongoing development with at least one payment that unlocks all of the current features and those added in the next 3, 6, or 12 months. There’s no need to renew support after that, unless any subsequently added features are worthwhile (or you just want to continue to support the app, which is always appreciated!).

The supporter model isn’t a subscription, but it can confuse people, being a bit unusual. A lot of apps are moving to a more traditional subscription, and I know some people would prefer an automatic renewal. So I’m considering adding such an option to Time Out. Note that it would be optional; I plan to continue to offer the current supporter model, I’d just be adding a subscription model as well, for people who prefer that.

My current trial mechanism, where you can try premium features for an hour at a time, can also cause confusion. So I’m thinking I might switch that to Apple’s standard free trial mechanism, where you can try all of the features for a week (or whatever), then cancel to go back to the free features, or begin the subscription to continue using the premium ones. I’d probably only make these changes in the Mac App Store edition of the app; the direct and Setapp editions would continue as now.

What do you think? Feedback welcome via the Contact page, or via Reddit!

Dejal blog

Have you checked out the new blog for Dejal? I have recently completed updating and re-publishing the most interesting posts from the old blog, with tips for Time Out and Simon. If you use an RSS reader or Apple News, you can subscribe to the blog to never miss a post.

Sinclair Trails

I mentioned in the previous newsletter that my wife and I had sold our 5-acre homestead and most of our possessions, and bought a 40-foot luxury Tiffin motorhome, and started traveling the country full-time. We’re still doing that, currently heading east, and will end the year in Florida. If interested, you can follow our adventures on my other blog, Sinclair Trails, where I post every weekday about a related topic, including additions and modifications to our coach (every Monday), photos of our travels and timelapse videos of driving between locations on YouTube (every Tuesday), reviews of RV parks (every Wednesday), and photos of National Parks and other interesting places we visit (Thursdays and Fridays).

I won’t mention this in every newsletter, but thought I’d mention it again this time in case you missed the previous one. By the way, you can watch timelapse videos of our travels as one of the themes in Time Out, too!

– David

Time Out Dock icon and status item

Time Out has several handy options, some of them only available to current or past supporters, as a reward for helping improve the app.

One such option is the ability to hide the app icon from the Dock. By default, the icon is shown there, for easy access, but if you want Time Out to operate more in the background, you can choose to remove the icon.

If you do so, the second option is automatically turned on: the checkbox to show a status item on the right-hand side of the menubar. This item has further options to choose what to include there.

General settings

The status item can optionally include a variation of the app icon, the label color of the next break, or neither:

General settings

It can also include a countdown to the next break, either in a compact form like “7m” for 7 minutes, or a wider form like “07:32”, for 7 minutes and 32 seconds. In the compact form, it only shows seconds when less than a minute. That’s my favorite form, to attract attention when getting close to a break.

Alternatively, the value can show the time when the next break is due, or will finish, or how long it is. Or no value, just an icon:

General settings

There’s a further checkbox to only show long breaks in the status item, i.e. don’t show ones with a duration of less than a minute.

A further useful tip about the status item is that if you hover over it, a tooltip will appear that lists when the upcoming breaks are next due:

General settings

When the Dock icon is shown, clicking the status item will bring Time Out to the front, to show the settings window. When the Dock icon is hidden, clicking it will display a menu-like popover of the sidebar, for quick background access to the breaks and options. Clicking one will expand to the full window.

You may wonder what happens if you hide both the Dock icon and the status item. The window will display a warning message:

General settings

As the message says, if you do this, you can still access the settings window, though it’s a bit harder. You would need to find Time Out in your Applications folder and double-click it to make it active. Since the Dock is hidden, it won’t show a menu bar, so there isn’t a visual indication that it is active, but you can press ⌘, (i.e. Command and Comma together), which is the keyboard shortcut for the Settings window, to show it.

Some people like doing this, to discourage changing settings, but most people should show either the Dock icon or status item, or both.

Time Out fixed image and blog themes

I got a support request for Time Out, my popular break reminder tool, asking to display a fixed image during the break.

Time Out uses HTML pages as break themes, so it is possible to have a fixed image as a theme — in fact the default theme, Icon, does just that, with the app icon.

So one way to have a fixed image is to:

  1. Choose the Reveal Themes command at the end of the Theme pop-up menu to open the Themes folder in the Finder.
  2. Duplicate the Icon theme folder and give it a new name.
  3. Replace the icon.png file with your chosen image.
  4. Edit the index.html to adjust the name and size of the displayed image.
  5. Edit the Info.json file to give the new theme a unique identifier etc.
  6. Pretty easy. You can edit those files in TextEdit or any other text editor.

If the image is available on some website, it’s actually a little easier. I have created an example theme on the Time Out extras page:

Download the Ducks & Fish theme

You can edit a copy of this theme to use a different image:

  1. Choose the Reveal Themes command at the end of the Theme pop-up menu to open the Themes folder in the Finder.
  2. Add the Ducks & Fish theme, if not already.
  3. Duplicate that theme and give it a new name.
  4. Edit the Info.json file to give the new theme a unique identifier, and change the URL to the desired image.

(This got me thinking, and I spent an hour or so writing up notes on ways to make adding image-based themes even easier in a future version. I’m always trying to improve the app.)

While I was at it, I also added four themes to display my four blogs; these are all included with Time Out by default:

  • Dejal Blog: a theme that simply shows the Dejal blog, so you can read it during your break, to see the latest news about Time Out and other Dejal apps (doesn’t update very often, though, so probably not that exciting for a regular break).
  • Dejus Blog: a theme that shows my personal blog, where I post photos and comments every day. Could be good for a short break a once or twice a day.
  • Sinclair Trails Blog: a theme to show the Sinclair Trails blog, about my travels around the US in a motorhome, including photos and timelapse videos of driving days, photos of places we stay, and of attractions we visit.
  • Yellow Cottage Blog: a theme to show the retired Yellow Cottage Homestead blog, about the chickens, ducks, feral cats, bees, and other homestead topics of my former homestead. Could be good for a lunchtime break.

If you try those, you might want to set the Opacity to 100% on the Break Appearance page.

Time Out isn’t a web browser or feed reader, but since the themes are just web pages, these show some of the interesting things you can do.

How can I add lunchtime & night breaks to Time Out?

On Twitter, Abbey Jackson asked:

Sure! Here’s the Schedule page for my Time Out preferences, showing my Lunchtime break configuration:

Lunchtime schedule screenshot

There are two important steps to do this: firstly, set the frequency to Every 1 day, and secondly, use the Available options to set a fixed start time of noon. In my example, I have this break only occur on weekdays. I also have the natural break option set to Continue Countdown, since I want the break to start immediately, not get pushed back due to idle time.

Didn’t realize that you can set daily breaks? Yep! Click, arrow, or tab to the units of the duration (“Break for“) and frequency (“Every“) fields to change between various units: seconds, minutes, hours for the duration, minutes, hours, days, weeks, months, years for the frequency.

As a bonus, here’s my Night break, that tells me to go to bed:

Night schedule screenshot

This is similar, but a longer duration. And yes, I did go to bed rather early when this screenshot was taken, as I usually got up at 05:30 (but didn’t get to my Mac till after breakfast).

Hope this helps!

Can I add Time Out breaks to my Calendar?

I had a customer wish that Time Out could track breaks taken in their Calendar app. That is definitely an interesting idea, so I added it to my feature concepts list for consideration in a future version, but it occurred to me that we could probably do that now with AppleScript actions.

As you may know, Time Out has the ability to perform various actions before, during, or after a break occurs. I made two AppleScripts based on Apple’s sample code for the Calendar app, and added them to the Time Out Extras page.

Download the scripts now.

The “Add to Calendar Start” script creates a new “Time Out break” event in the first available calendar, at the current time, with a duration of an hour. To use this in Time Out, install it as normal (reveal the scripts folder via the + button on the Break Actions page, and add the two scripts there), then add an action set to be performed “After Start”.

The “Add to Calendar End” script finds that event (assuming it is still within that hour), and updates the end time to the current time. So to use this, add an action set to be performed “After Any End” (i.e. when the break finishes, done or not).

Here’s how it’ll look in Time Out (with a couple of sound actions for good measure):

Time Out actions

If you want to add the events to a different calendar, you can edit the scripts (I included a commented out example). Just make sure you change both the same way.

I may add a more integrated calendar feature in the future, but in the meantime, it’s great that such enhancements can be done immediately. I hope this is helpful to some people.

Adding Time Out to Accessibility System Settings to enable idle detection

One of the features of Time Out is the ability to detect natural breaks, i.e. when your Mac is idle, not being used.

Time Out looks at mouse/trackpad and keyboard activity to detect this, but for privacy reasons, macOS requires your approval to see keyboard activity. The app doesn’t look at what you’re typing, just that keys are being pressed.

If you don’t want to authorize this, that’s fine; either Time Out can just watch for mouse/trackpad activity, or you can change the natural break detection method in the Advanced settings in the app:

Advanced settings

You can disable idle detection entirely from that menu if you wish. There’s also a popup menu to choose how long the computer should be idle before considering it a natural break.

When you first launch Time Out, the second page of the Setup Assistant includes instructions on how to authorize idle detection. It’s pretty simple, though a number of steps to navigate to the right place:

  1. Open System Settings.

  2. Go to the Privacy & Security pane.

  3. Go to the Accessibility page.

  4. Time Out should be listed; if it isn’t, click the + button below the list to find and add it.

  5. Toggle the switch next to Time Out to be on (dot on the right).

 

Easy!

Where can I find more sounds for Time Out or Simon?

Time Out comes with a number of built-in sounds that you can play as part of the Break Actions, plus it lists all sounds you have installed on your Mac, which includes system default ones, and any you have added to the standard sound folders.

It’s worth noting that you can also have Time Out play any music from your Apple Music library, too.

Find more sounds

To add more sounds, you first need to find and download them from a website.

There are many sites that offer sounds of varying length, quality, themes, etc. Some for free, some as paid offerings. Usually with previews so you can listen before downloading.

Here are a few I’ve found; note that I don’t endorse or recommend any particular site; these are just ones I encountered in a brief search. If you’re aware of or find a better site, please post in the Reddit community to share with others.

Add the sounds

Once you have the new sounds, you can easily add them in one of the standard folders to make them available to all apps that can play sounds, or add them to the “Sounds” folder within the Time Out data folder to only make them available in Time Out.

The system sound folders you can add to are in the following paths (tip: you can paste these paths into the Finder’s Go ▶ Go to Folder… command to reveal them; if the folders don’t exist, you can create them):

  • /Library/Sounds — for sounds available to all users of your Mac.
  • ~/Library/Sounds — where “~” means your home folder.

(There is a third folder, at /System/Library/Sounds, but you shouldn’t modify that.)

On the other hand, Time Out’s sounds folder is at one of the following paths, depending on which edition of the app you have:

  • ~/Library/Group Containers/6Z7QW53WB6.com.dejal.timeout/Sounds — for the direct edition.
  • ~/Library/Group Containers/6Z7QW53WB6.com.dejal.timeout.free/Sounds — for the Mac App Store edition.
  • ~/Library/Group Containers/6Z7QW53WB6.com.dejal.timeout-setapp/Sounds — for the Setapp edition.

While you can use the Finder’s Go to Folder… command to access those, an easier way is to choose Reveal Scripts from the Add Action drop-down menu. That will show the Scripts folder, which is adjacent to the Sounds folder. (I do want to make this even easier in a future update.)

Simon is much the same, except will just look in the standard folders.

I hope this has been helpful!