David Sinclair's blog

Simon 4.2 released

Simon version 4.2 is now in general release!

This update has lots of improvements, including:

Added an Exclude Block filter

  • Added a new Exclude Block filter that outputs the text outside the block, instead of inside like the normal Block filter.
  • Enhanced the Block filter feature to support specifying whether to output the text before the Start, the Start text itself, the text between the Start and End, the End text, and/or after the End text, or any combination of those, optionally joined by some separator.

Added difference analysis filters

  • Added new Extract List, Extract Changes to List and Rich Text Representation of Changes filters, kindly contributed by Max Cardale. Read the comments for those filters for detailed descriptions of each.

New filter variables

  • Added support for {FilterIndex}, {FilterPreviousText} and {FilterInputVariable} filter variables to support referring to prior filters, e.g. the second filter can see the previous text of the first filter via {Filter1PreviousText}.
  • Added support for reverse-numbered filter variables of the form {FilterPrior1InputText}, where the number counts from the filter before the current one. All of the Filternumber variables are available as FilterPriornumber ones. These are "smart" variables that are not available to notifiers, since they just duplicate values already available. (In case you weren't already aware, you can add a number after Filter for any filter variable, to access variables of prior filters; the numbers count from 1 for the first filter.)
  • Added a description of the numbers in filter variables to the help book.

Email improvements

  • The Preview now supports the Email notifier; it will display the message that is sent, with placeholder values for any variables. (Tip: you can check that an email notifier is configured correctly by showing the Preview or just clicking the Reload toolbar button, or File > Notify Now.)
  • Added support for STARTTLS connection security and Password (PLAIN) authentication in the Email Transport panel.
  • If the Port field is clear, or contains a standard port number for a connection security, it is changed to the typical port number when the connection security is changed.

Preview improvements

  • When the Preview page is displayed for a service, filter or notifier that supports previews (i.e. email and scripts), it displays a message "Reload to Preview", rather than automatically sending an email or running the script (resulting in unexpected placeholder emails or script actions). Click the Reload toolbar button, or the File > Notify Now menu command, to actually preview the item.
  • Added special case support for Web content encodings specified in the source instead of the header (e.g. or for Chinese).

Several fixes of the reports feature

  • Fixed an issue with uploading reports to remote FTP servers.
  • Fixed a crasher when adding a new report with the Preview pane selected.
  • Fixed a logic error that prevented recent checks, changes, etc from being listed on the detail pages.
  • Fixed incorrect last report date display when the report hasn't been generated yet.

More convenient upgrade licensing

  • When adding an upgrade license, now automatically looks up the original license, instead of just telling you it's needed (which can cause confusion, since it's an unusual situation).

Lots more security and stability improvements

  • Updated the Sparkle updater framework to the latest version.
  • Added a Via SSL option to the Updates preferences, to use a secure connection to check for and download app updates. This is on by default, but can be turned off if it doesn't work for some reason.
  • Also updated license refresh etc URLs to use TLS/SSL.
  • Scripts are now saved as Base64-encoded text, to preserve formatting.
  • Fixed a common crasher when editing at the Auto Pause pages.
  • Fixed another crasher when changing pages at the bottom of the window.
  • Fixed a cosmetic issue where the editor info background could show garbage in some situations.
  • Fixed a couple of rare crashes with deleting items.
  • Fixed a crash with using the Convert Domain/IP command with a large text field.
  • Fixed a rare crash with reports.
  • Fixed a rare crasher with the Find filter.

If you are using version 4, you can use the Check for Updates feature in the app to update.

Otherwise, download Simon 4.2 now!

Time Out 2.0b5 released

Good news: Time Out 2.0 has been submitted to the Mac App Store! It'll take a few weeks to get through the review process, but it could go into general release any time after it is approved (assuming Apple doesn't reject it entirely, which of course I can't rule out)!

Anyway, for the direct edition, here are a few more improvements (which are also in the Mac App Store edition):

  • Now shows a pointing hand cursor when over the ❤ icons next to support reward controls, to make it more obvious that you can click them for more information.
  • Added an activity indicator on the Updates page, while the release notes load from the Dejal server.
  • Now fades in the activity indicators (e.g. on the Updates and Support Time Out pages), so they only appear if the content takes a noticeable amount of time to load.
  • Various changes to support the Mac App Store edition of the app. Yes, Time Out 2.0 will be available both direct and via the Mac App Store (assuming they don't reject it).

If you are using a version 2 beta, you can use the Check for Updates feature in the app to update.

If you aren't on the beta yet and want to join, visit the What's New page to sign up for an invite to download the beta.

Simon 4.2b4 released

Time Out recently went to beta 4, and Simon was feeling left out. So here's a beta 4 of Simon too!

Just a couple of changes:

  • Scripts are now saved as Base64-encoded text, to preserve formatting.
  • Tweaked the new filters.

If you already have Simon 4, update in the app. Otherwise download Simon 4.2b4 now!

Simon 4.2b3 released

Here's a third beta release of Simon 4.2.

Changes in the update include:

  • Added new Extract List, Extract Changes to List and Rich Text Representation of Changes filters, kindly contributed by Max Cardale. Read the comments for those filters for detailed descriptions of each.
  • Added support for reverse-numbered filter variables of the form {FilterPrior1InputText}, where the number counts from the filter before the current one. All of the Filter<b>number</b> variables are available as FilterPrior<b>number</b> ones. These are "smart" variables that are not available to notifiers, since they just duplicate values already available. (In case you weren't already aware, you can add a number after Filter for any filter variable, to access variables of prior filters; the numbers count from 1 for the first filter.)
  • Added a description of the numbers in filter variables to the help book.
  • Fixed a crash with using the Convert Domain/IP command with a large text field.
  • Fixed a rare crash with reports.

If you already have Simon 4, update in the app. Otherwise, download Simon 4.2b3 now!

Time Out 2.0b4 released

A quick update to fix an issue in the previous beta release of Time Out version 2:

  • Fixed excessive CPU usage due to the animation of the ❤ icon for the Support Time Out sidebar and status popover items.
  • Fixed some file logging that wasn't respecting the Advanced preference.

If you are using the third or second beta, you can use the Check for Updates feature in the app to update.

If you are still using the first beta, you can use the link in your beta invite email to download the new version, or use the Check for Updates feature in the app, and manually update.

If you aren't on the beta yet and want to join, visit the What's New page to sign up for an invite to download the beta.

Time Out 2.0b3 released

Here's the third beta release of Time Out version 2!

This beta has more refinements, including:

  • Added a help book, available via the Help (?) menu and online.
  • Updated the About Time Out window.
  • Tweaked the border colors of the Analog Clock break theme.
  • Added a Via SSL option to the Updates preferences, to use a secure connection to check for and download app updates. This is on by default, but can be turned off if it doesn't work for some reason.
  • Also updated the Support Time Out URLs to use TLS/SSL.
  • Some people didn't notice the supporter trial message, so now the ❤ icon for the Support Time Out sidebar and status popover items gently animates to help catch the eye.
  • Added URL handler support for promo codes.
  • Moved the accessibility access check to after the Setup Assistant, to avoid the possibility of being prompted before it is explained.
  • Fixed a crasher when locking the screen by showing the Login Window.
  • Fixed some other very rare crashers.

If you are using the second beta, you can use the Check for Updates feature in the app to update.

If you are still using the first beta, you can use the link in your beta invite email to download the new version, or use the Check for Updates feature in the app, and manually update.

If you aren't on the beta yet and want to join, visit the What's New page to sign up for an invite to download the beta.

I hope you like these improvements! Please let me know of any issues you notice, or ideas for improvements. Thank you for helping make this update great!

Simon 4.2b2 released

It's been a while (due to work on Time Out 2), but here's a second beta release of Simon 4.2.

Changes include:

  • Added support for {FilterIndex}, {FilterPreviousText} and {FilterInputVariable} filter variables to support referring to prior filters, e.g. the second filter can see the previous text of the first filter via {Filter1PreviousText}.
  • When the Preview page is displayed for a service, filter or notifier that supports previews (i.e. email and scripts), it displays a message "Reload to Preview", rather than automatically sending an email or running the script (resulting in unexpected placeholder emails or script actions). Click the Reload toolbar button, or the File > Notify Now menu command, to actually preview the item.
  • Added special case support for Web content encodings specified in the source instead of the header (e.g. <meta charset="gb2312"> or <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> for Chinese).
  • Updated the Sparkle updater framework to the latest version.
  • Added a Via SSL option to the Updates preferences, to use a secure connection to check for and download app updates. This is on by default, but can be turned off if it doesn't work for some reason.
  • Also updated license refresh etc URLs to use TLS/SSL.

Download Simon 4.2b2 now!

(By the way, if you prefer to access websites via TLS/SSL, you can do so for the Dejal site via https://dejal.net/. I'll move the main dejal.com site over later.)

Time Out 2.0b2 released

Here's the second beta release of Time Out version 2!

This beta has several significant changes, including:

New and updated break themes

  • Added a fancy Analog Clock theme.
  • Added a flexible Text theme, which includes text that can be edited during the break to say whatever you like (and you changes will be remembered for subsequent breaks).
  • Added two infinitely zooming image themes: Arkadia (website) and Zoomquilt (website).
  • Updated the Emoji Zone theme to use the faster HTML renderer (see below).

Other theme improvements

  • Added support for a faster HTML renderer (technically a WKWebView instead of a legacy WebView) for themes. Themes use this new one via a "type" : "html5" property in their Info.json file. As this property implies, the html5 web view works best with modern HTML5 pages; HTML4 pages generally work better in the old one.
  • Note that the "html5" web view requires Mac OS X 10.11 (El Capitan) for local themes. This includes the new Analog Clock and Text themes. Remote themes work with it in 10.10 (Yosemite) too.
  • Now reloads the Themes popup menu contents when activating the app, so themes added in the Finder show up immediately.
  • Themes that use the "html5" type can communicate with Time Out via some special callbacks. See the source of the Text theme for an example, where it makes the text specific to each break. More information is included in the source comments.

Smarter scheduler

  • Made the scheduler a bit smarter: when skipping a break because a higher priority one is due soon, it now tries resetting the break first. This avoids a situation where a break could get pushed out too far over time.

Help improvements

  • Added an About Time Out item to the top of the Help (?) pop-up menu, that displays the standard About window with the version number etc, for those without the Dock (and thus menus) shown.
  • The Help menu now appears on clicking the button, instead of having to release the mouse button.
  • Clarified the message on the General Options page when both the Dock icon and status item aren't shown, to spell out how to display the Preferences window.
  • If trying supporter rewards when making a purchase, the sidebar message is now changed appropriately to avoid confusion.

Supporter improvements

  • Trying supporter rewards now persists if you quit the app partway through the trial.
  • Finished implementing the Redeem Promo Code feature.

Updater and crash reporter changes

  • Updated the Sparkle updater framework to the latest version.
  • If the app crashes, the crash reporter window now appears on top of the Preferences window instead of underneath it.
  • Disabled the app sandbox, since Sparkle can't update sandboxed apps. The data location won't change, so everything should work as before.

If you are already using the first beta, you can use the link in your beta invite email to download the new version, or use the Check for Updates feature in the app. Note that a manual update is required, due to an issue with the updater; that should be the last time that is needed, though.

If you aren't on the beta yet and want to join, visit the What's New page to sign up for an invite to download the beta.

I hope you like these improvements! Please let me know of any issues you notice, or ideas for improvements. Thank you for helping make this update great!

Time Out 2: what's next?

So, Time Out version 2.0b1 was released last week. Maybe you noticed?

That was quite epic, with release notes so long I had to break it up with headings and bookmark links.

Thank you very much to everyone who has downloaded the beta and tried the new version. And especially thank you to the many people who have become Time Out supporters. Haven't tried it yet? Check out the What's New page.

Today I thought I'd write a bit about what I envision happening during the beta cycle.

Testing

Of course, one of the most important things is for a wider range of people to try the app, and provide feedback on what they like and don't like, anything that could be better, or any bugs that they encounter. I'd really appreciate your help with this, to make the general release great.

The features for 2.0 are complete; I don't plan to make any significant changes to the way the app works before general release. But if there are any things that can be improved, I'm certainly open to doing so. Let me know!

There are some aspects that aren't complete, though.

Themes

One is the included themes. 2.0b1 includes a bunch of break themes, that can appear during the breaks, but I want to add a few more. Time Out uses a web view for the themes, and supports both displaying remote websites and local HTML content, much like the old Dashboard widgets.

I have a list of ideas, but three that I particularly want to include are:

  1. Exercise suggestions: some sort of stretches or other exercises that can be performed during a break. This is a little tricky, since I need to find some provider for these, and figure out a good way to integrate them. Or I could just provide a web-based theme, displaying some third-party site.
  2. To do: I envision something like sticky notes as a local HTML-based theme, using local storage to persist the notes, and the ability to add multiple notes. So people can write memos to themselves during the breaks.
  3. Clock: a large analog clock, with moving hands that show the current time.

I have some code that will help with these, and will work on them sometime before the general release. But if you are a web developer and want to help out with any of these or other themes, please get in touch.

Help book

Another thing I need to do before the general release is update the help book / documentation for the new version. Time Out is very intuitive, so most people won't need a manual to use it, but it's still a useful thing to have for people who prefer to learn by reading rather than experimenting.

Website

The Time Out website also needs some updates. At minimum, it needs to be changed to describe the new features, and ideally I'd like to use this excuse to give it a new coat of paint; although the Dejal site does have a special iPhone support mode, it doesn't use the modern responsive design. We'll see how far I go on this.

Reviews etc

Sometime during the beta cycle I want to get in touch with reviewers and influencers, to try to get some of them to try the app for a while and hopefully write about it for the general release. Marketing stuff is hard, but important. (If you're a reviewer and want to try it, please contact me).

Mac App Store edition

Finally, Time Out will be available both directly and via the Mac App Store, with the same features in both editions, so people can get it either via the Dejal site or MAS; whichever is more convenient.

So I also need to make a number of changes to build an edition of the app for the Mac App Store. This shouldn't be too much work, since the direct edition is already sandboxed, and designed with the MAS edition in mind. I'll just need to disable the auto-updater in that edition, and swap out the FastSpring-based in-app purchase popover for Apple's StoreKit, and some minor other changes.

Exciting times

As I mentioned before, Time Out 2 has been in the works for years, and is a huge improvement over version 1. I don't want to rush out the general release, and have a lot to do, but I'm excited to make progress towards this goal.

Again, thank you for trying version 2, for supporting development, and for sharing it with your family, friends and colleagues.

Time Out 2.0b1 released

It's been a long time coming, but the day has finally arrived: Time Out version 2 is at last in beta release!

I've actually been designing and prototyping Time Out 2 since 2007, off and on, if you can believe that. Work started in earnest a bit over two years ago, and while it kept being delayed by contract work (I like to eat and pay bills), I've persevered.

Over the course of development, there were 33 alpha releases, tested by a small faithful group of alpha testers.

Now, the app is complete, and I'm ready to expand the testing pool. This first beta release is available to anyone who wants to try it; just visit the What's New page to sign up for an invite to download the beta.

I've written many blog posts providing descriptions and screenshots of version 2, and will post more about various aspects during the beta cycle.

This is a massive upgrade. Here is a summary of the major enhancements. Click to jump down, or simply scroll, to read more about each.


Redesigned app icon

🔝


Get started quickly with the Setup Assistant

  • Added a new Setup Assistant window, which appears the first time you open Time Out. You can also display it anytime via the Time Out or action (cog) menus.
  • The first page enables adding the usual breaks: Normal and Micro, like in version 1. Change them as desired, or uncheck them if you'd rather start from scratch.
  • The second page includes a button to open the Privacy System Preferences, so the keyboard activity can be monitored for idle detection.

🔝


Redesigned Preferences window

  • The Preferences window has a fresh modern appearance, with quick-access buttons at the top, a sidebar listing the breaks, and other options.
  • The breaks display a color label, when they are next due, and when they were last done.
  • The due/done times can be displayed as absolute dates (a date and time) or relative times (how long until or since it).
  • When hovering over break items, a couple of buttons appear, to manually start a break or perform other options, like postponing, skipping, disabling and deleting the break.

🔝


No longer needs to be in the Dock

  • Added the ability in the General Options to show or hide the Dock icon.
  • When Time Out is in the Dock, it'll also appear in the Cmd-Tab app switcher, and have menus. The Preferences window is automatically shown when the app is brought to the front.
  • When it is not in the Dock, it also won't appear in the Cmd-Tab switcher, and won't have menus -- but all features can be accessed from the Preferences window.

🔝


New menubar status item

  • Added an optional status item in the right of the menubar.
  • Shows an icon and countdown to the next break.
  • The style of icon can be chosen (including an icon representing the next due break), or no icon used.
  • It can show a brief or longer countdown, or the start or finish time, or duration of the next break.
  • Supports light and dark menubars.
  • When the Dock icon is shown, clicking the status item in the menubar shows or hides the Preferences window.
  • When the Dock icon isn't shown, clicking the status item shows a popover that looks and works just like the sidebar in the Preferences window, but clicking an item will show the corresponding page in the Preferences window.
  • The tooltip for the status item lists all of the breaks and when they're due, with the next due at the top, so you can quickly see when each break will next occur without having to click the status item.
  • If you turn off both the Dock icon and status item, a warning message explains how to get back to the Preferences. This is permitted for people who want to make it harder to change the preferences for self-control reasons.

🔝


Assign global keyboard shortcuts to start, defer, pause, etc

  • Added a Shortcuts Options page, which lists all of the global keyboard shortcuts, so they can be set in one place.
  • Shortcuts can be assigned to manually start breaks, postpone or skip the next or current break, pause, resume, or reset all of the breaks, and/or stop any playing sound.
  • The postpone and skip shortcuts will apply to the next due break, or if a break is currently starting or underway, to that break. So you can avoid a break with a quick keypress if needed.
  • These shortcuts work from any app.

🔝


Add any number of breaks

  • Renamed the Breaks menu as File, and moved it to the usual place.
  • Added a New Break (Cmd-N) command in the File menu, to add additional breaks.
  • Added support for deleting breaks via the Delete key or menu item.
  • Added Undo support for some operations (notably adding and deleting breaks).
  • Added the ability to drag the breaks to reorder them, which sets their priority, so lower breaks are skipped in favor of higher breaks.

🔝


Rename, label and comment on breaks

  • Added a Break Name page to enable editing the break name, choosing a color label for the break, and adding some comments.
  • The label is shown in the sidebar, and can be displayed in the status item to quickly see which break is coming up next.
  • Also included is a customizable keyboard shortcut control. If set, the shortcut is shown in the sidebar and status popover, and can be used from any app to manually start the break.

🔝


Scheduling improvements

  • Changed the way the breaks are scheduled, to use a single timer with due dates instead of multiple timers, enabling more flexibility.
  • The Schedule times now use a more compact interval picker that supports pop-up menus for values, arrow keys to change values, etc.
  • The due dates are now restored when the app is relaunched (e.g. after a system restart), so they continue as if Time Out weren't interrupted. (If a break would have been due already, its due date is reset to the full work duration.)
  • Added a new idle detector, which should be more reliable than the old one. The new one is enabled by default, but you can switch to the old one or disable it in the Advanced preferences.

🔝


Limit breaks to a time range

  • Added an Available pop-up menu on the Break Schedule page, with "Any Time" and "Only Between" items. If "Any Time" is selected, the break can occur at any time of the day; if "Only Between" is selected, From and To time controls appear to set the available time range.
  • If an "Only Between" time range is set, the next due time will be the From time plus the frequency (the "Every" field).
  • The From time is especially useful for daily breaks, e.g. for a "Lunchtime" break set to every 1 day, you could set the From time to 12:00:00 (noon) and the the To time to 13:00:00 (1 PM), to ensure the break starts at noon, but no later than an hour after that if postponed (e.g. via a natural break).

🔝


Support for natural breaks

  • Changed the scheduler to be smarter: after 30 seconds of idle, the countdown stops (if using the natural break preferences), and after 1 minute of idle, it starts counting upwards (if that preference is set), until the break frequency time is reached.
  • Choose how to handle a natural break. Continue Countdown to ignore idle. Pause Countdown to stop the timer while idle. Count Backwards to pause briefly then count upwards until the duration is reached. Reset After Duration to reset the break due date after the break duration of idle time. For example, with the latter if you have a 10 minute break every hour, and you have a natural break for 10 minutes, leaving the computer idle for 10 minutes will skip to the next hour.
  • Added a pop-up menu to choose whether to wait for a natural break (idle) or start immediately when a break is due.
  • With the latter, when a break is due, it will wait for a natural break of at least 15 seconds, to avoid interrupting you when you're busy. If you keep working for a minute, it starts the break anyway.

🔝


Better appearance

  • The Break Appearance options now uses a new color well that includes a palette of colors in addition to the color picker, and changed the transparency slider to an opacity slider & field.
  • When there are multiple screens available, the Break Appearance preferences has extra options, to specify whether to use the screen with the active menubar, or the screen with the inactive menubar, or a specific screen.
  • Connecting or disconnecting a display will now update the Appearance page, showing or hiding the screens pop-up as needed.

🔝


Customizable HTML-based break themes

  • Time Out now supports multiple customizable break themes!
  • The Theme pop-up menu includes a None item to not fade the screen(s) during the break (just showing the control panel); Blank to fade without showing any content, and a list of available themes.
  • Some default themes are included. You can also customize them or add your own. Choose the Reveal Themes item in the menu to show the Themes folder in the Finder, or Get More to display the Time Out Extras page in your browser.
  • Themes use HTML, so can display local content (potentially including JavaScript-driven apps), or web pages.
  • Fading in to the break, and out back to work, is now much more efficient, and uses a geometric animation curve to make it more natural.
  • Added an Info button next to the Theme pop-up menu. Click it to show a popover with information about the selected theme, including clickable links to author and original websites, where available.
  • Also a Preview button to try the theme; equivalent to manually starting the break.

🔝


Redesigned & movable control panel during breaks

  • The progress bar and postpone/skip buttons now appear in a redesigned control panel that can be moved around the screen.
  • The control panel now fades in at the same time as the break, so the postpone/skip buttons can be used while the break is starting.
  • The break theme and control panel only appear on one screen, if your Mac has multiple screens; the other screen(s) just fade to a blank color (which can be different than the theme screen).

🔝


Add actions to notify of due, starting or finishing breaks

  • Merged the Sounds and Scripts pages into an Actions page, which now supports any number of actions, and more versatile scheduling of them, including before the break is due.
  • You can now play a sound or some other action some period of time before due, after the start of the break, after fading in, before fading out, before finishing, after finishing, or after postponing or skipping. Lots of flexible options!
  • Integrated the scripts into the Add Action (+) button menu, so any scripts you add are treated like full actions.
  • The script actions include an Open button to enable quickly editing scripts, e.g. "Open with Automator".
  • When the Add Action button menu is first shown, or if the scripts folder is empty, it includes a "More..." item at the end. Choosing that will display an Open sheet, asking for permission to copy the default scripts into the folder. After that, it re-shows the Add Action menu with the scripts listed.
  • Included Reveal Scripts and Get More functions in the Add Action button menu. They aren't shown until the default scripts have been installed. They respectively reveal the scripts folder in the Finder and display the Time Out Extras website.
  • Included a Preview button (with an eye icon) to try the associated action.
  • Added a new Display Notification action, that shows a Notification Center panel, with custom title and message text, and optionally a sound.
  • Added a new Fadeout Sound action, that fades out any playing sound over a specified number of seconds. Useful for long sounds (e.g. music), or in combination with the Repeat option in the Play Sound action, to gently stop them after a suitable interval, e.g. at the end of the break. Like the other actions, specify when to start fading out via the action offset & stage controls in the action header.
  • Added a new Flash Screen action, which includes options to set the flash color and speed.
  • Added a new Speak Text action to use speech synthesis. It includes a voice pop-up menu which can display just your preferred voices (set in System Preferences > Dictation & Speech > Text to Speech > System Voice > Customize), or all available voices, grouped by region and gender like in System Preferences. It also has an Attributes popover that enables fine-tuning the voice rate, pitch, inflection and volume.

🔝


Enhanced app exclusions

  • Changed the Exclusion options to show the full path, and added the ability to skip breaks when an app is open but not frontmost.
  • Also added MPlayerX, QuickTime Player and VLC to the default Exclusions, and removed Podcast Capture (since it isn't included in Yosemite).

🔝


Faster app updates

  • Time Out now uses the popular Sparkle framework for app updates, so it can finally download and install updates itself.
  • Changed the Updates options for the Sparkle framework, and to display the release notes right there, since there's space.

🔝


Several advanced options

  • Added an Advanced preferences page, with a number of options that most people won't need.
  • Includes an option for the idle detector: None to not detect idle, the Event Source like in version 1, and the new Event Monitor that is more reliable.
  • Includes a checkbox to alert of another copy of Time Out, which can interfere with starting breaks.
  • Includes a checkbox to control whether or not clicking an item in the status popover should animate to the full window size.
  • Also includes a button to reset the position of the Preferences window when using the status popover, so they line up nicely. When you turn off the Dock icon, it is automatically lined up. The window can still be freely moved, but it looks nice having them aligned.
  • Includes a number of options to output diagnostic information to the Console log.
  • Includes a handy button to show the Console log, i.e. launch the Console app.

🔝


New supporter options

  • Time Out can be used for as long as you like for free, but the more advanced features are only available to try for an hour at a time, as many times as you like.
  • These features are highlighted throughout the app by a heart icon that appears next to the control. Clicking it displays a popover to explain the limit.
  • The Support Time Out page includes buttons to purchase three supporter durations (3-, 6- and 12-months). Becoming a supporter helps to fund continued development. These are one-time payments, not a subscription, though you can extend your support later if you wish.
  • All the features will remain available even after the supporter period, though some future enhancements may only be available to current supporters.
  • Click the Learn More button for more information.
  • This page also includes buttons to restore any previous purchases, and redeem a coupon code.

🔝


Optimized for Yosemite and El Capitan

  • Time Out now requires a minimum of OS X 10.10 (Yosemite), and supports 10.11 (El Capitan).
  • Now uses the latest technologies.
  • Now uses the third-party Fabric Crashlytics framework to automatically capture crash reports. Automatically aggregating crash reports will enable faster fixing any that occur.
  • If a crash occurs, Time Out will now display a window on next launch to ask for information about the crash, which may help trace the cause. There are also optional fields for your name and email address, in case there are any questions.
  • Sandboxed for increased security.

🔝

Phew!

Sound good? Visit the What's New page to sign up for an invite to download the beta.

Time Out 2 sneak peek: shortcuts

It's been a little while since the last sneak peek of Time Out 2, so let's do another one. What shall we look at this time? How about the Shortcuts page.

This is one of the many popular requests from customers of version 1: the ability to have global keyboard shortcuts to postpone or skip breaks when they are starting at an inopportune time.

I went a bit further in version 2, though: not only are there global shortcuts available, but you can also assign them to whatever you want, and can set ones to start each kind of break, postpone, skip, pause, resume, reset, and stop any playing sound.

Time Out Shortcuts page

(The assignments in this screenshot are ones I've set; you can use whatever makes sense to you, and don't have to assign any you don't want.)

If you look closely, you may also notice a few other changes in this screenshot, including a new Help (?) menu button at the top, and a Support Time Out item in the sidebar. More about that another time.

In related news, I've just added a new What's New page to the Time Out site. Check it out for a partial list of features and more information, including a form where you can sign up to be amongst the first to hear of a beta release.

And as mentioned before, if you've made a donation, and are using Yosemite or later, you can contact me to request to join the alpha team, or to get more information.

Dejal year in review: 2015

Happy New Year!

As we start a new year, let's review what happened with the Dejal apps in 2015:

After the massive version 4.0 upgrade in late 2014, Simon, my flagship product to monitor websites and servers for changes and failures, saw another fairly big update in 2015 to version 4.1.1, plus a beta of 4.2, which will be in general release in a month or so.
My handy break reminder tool, Time Out, had significant work on version 2, with several alpha builds in 2015. It went from alpha 8 at the beginning of the year all the way up to alpha 29 at the end of the year, each with many improvements. It is now basically feature-complete; I'm just working on the final touches at present. Time Out 2 has been in the works for years, in between contract work and other projects, but it's tantalizingly close now, and I expect to have a beta release available within the next few months. As previously mentioned, everyone who makes a donation for Time Out now will be automatically eligible for the paid features at no additional cost — so you can set your own price for it now! This offer expires when version 2 is released. This also makes you eligible for the alpha; after donating, tell me if you'd like to try it. Thank you to everyone who has already donated; the volume of donations is really encouraging.
Caboodle, my lean clean snippet machine, didn't see any updates in 2015. I do have a new version in the works, which I'll finish off and release once I get Time Out 2 out.
BlogAssist, my tool to help with HTML markup, had a small update to version 2.4.1 in 2015. It's a minor product, but one I still use regularly.
Pack, a simple iPhone app to make it easy to pack for trips, had a number of updates in 2015, up to version 1.2. The major enhancement in 2015 was the addition of a handy Apple Watch app. Try it for your next trip!
Tweeps, an app for iOS to easily manage Twitter accounts, didn't get any updates in 2015. It doesn't sell very well, so I can't really justify spending time on it, but it does what it needs to.

Consulting

On the consulting side, I've worked on a number of projects in the last year, including zCloud, a handy Mac menu bar utility to quickly and easily upload screenshots and other files to Dropbox; MBTableGrid and private components for Tap Forms for Mac; and the iOS NewsBlur app, a popular RSS news reader.

I'm fully booked for the next couple of months, and hoping for more from existing clients, but if you have a Mac or iOS project you'd like help with (or a custom Simon enhancement), check out my consulting page for more information.

Looking ahead

So what's coming up in 2016? My top priority is finishing off Time Out 2. As mentioned, it is very close to completion, so I should be able to get a beta out soon... though no promises, since it depends on how long it takes to finish off, and time spent on contract work. I will also continue contract work, of course, since I enjoy eating and paying bills.

I will also do the general release of Simon 4.2, probably before Time Out 2 is out. And later in the year I hope to get back to a Caboodle update that's been pushed back for a while. I'd like to add a new app, too, but we'll see.

Thank you and welcome to my new customers, and many thanks to my long-term customers who are still enjoying my apps. I really appreciate your support. I'm very excited about the much-anticipated Time Out 2 release in the coming year, and other projects in the pipeline.

Featured blog posts of 2015

My blog posts often just cover new releases, but sometimes I post general-interest or developer-interest topics. Some highlights from 2015 included:

Phew! It seems I've been writing quite a bit more than usual in the last year. I hope you enjoyed these posts.

Simon 4.2b1 released

Simon version 4.2b1 is now available.

This first beta includes the following changes:

Added an Exclude Block filter

  • Added a new Exclude Block filter that outputs the text outside the block, instead of inside like the normal Block filter.
  • Enhanced the Block filter feature to support specifying whether to output the text before the Start, the Start text itself, the text between the Start and End, the End text, and/or after the End text, or any combination of those, optionally joined by some separator.

Email improvements

  • The Preview now supports the Email notifier; it will display the message that is sent, with placeholder values for any variables. (Tip: you can check that an email notifier is configured correctly by showing the Preview or just clicking the Reload toolbar button, or File > Notify Now.)
  • Added support for STARTTLS connection security and Password (PLAIN) authentication in the Email Transport panel.
  • If the Port field is clear, or contains a standard port number for a connection security, it is changed to the typical port number when the connection security is changed.

Several fixes of the reports feature

  • Fixed an issue with uploading reports to remote FTP servers.
  • Fixed a crasher when adding a new report with the Preview pane selected.
  • Fixed a logic error that prevented recent checks, changes, etc from being listed on the detail pages.
  • Fixed incorrect last report date display when the report hasn't been generated yet.

More convenient upgrade licensing

  • When adding an upgrade license, now automatically looks up the original license, instead of just telling you it's needed (which can cause confusion, since it's an unusual situation).

Lots more stability improvements

  • Fixed a common crasher when editing at the Auto Pause pages.
  • Fixed another crasher when changing pages at the bottom of the window.
  • Fixed a cosmetic issue where the editor info background could show garbage in some situations.
  • Fixed a couple of rare crashes with deleting items.
  • Fixed a rare crasher with the Find filter.

If you're using a recent version of Simon already, you can update to this beta by checking for updates in the app. If you haven't used a beta previously, you may need to change your Updates preferences within Simon to include Beta & General Releases. Otherwise, you can download Simon 4.2b1.

Time Out 2 sneak peek: status menu

I've been doing a bit of contract work to refill the coffers, so work has slowed on Time Out 2, but it has continued, as has testing. Let's take another sneak peek!

Last time we took a look at the General options, and I talked about configuring the status menu. Well, this time I thought I'd finally show it.

As mentioned, the status menu is a much-requested optional feature in version 2, which shows a countdown to the next break, among other options. When you click it, if the Dock icon is shown, it simply switches to Time Out and shows the preferences window. But if the app doesn't appear in the Dock, a status menu popover is shown instead, like this:

This may look familiar: the status popover looks pretty much the same as the preferences window sidebar. There's a good reason for that: if you click on an item in the popover, it transforms into the full window, enabling editing the break or options.

But you don't need to show the full window for many operations; you can see when the next breaks will occur, when they were last completed, pause, postpone, skip, reset or manually start breaks, and more all from the status popover. As you hover over the break items, a manual Start button and a menu of options appears:

I think you'll find this a very useful addition.

Time is running out, but if you've made a donation, and are using Yosemite or later, you can contact me to request to join the alpha team, or to get more information. Or as always, stay tuned for more screenshots and details in the coming weeks!

Time Out 2 sneak peek: general options

Work on Time Out 2 is going really well: all of the planned functionality has been implemented. Now I'm adding the licensing stuff; more on that another time. For now, it's time for another sneak peek of Time Out 2.

This time, let's revisit the General Options. I briefly showed that back in August, but it's changed significantly since then. As I said before, this is all subject to change, but this might be the final design for 2.0:

As before, the top option on the right-hand-side of the window is a checkbox to automatically start Time Out when logging into the Mac. Pretty self-explanatory; a standard option for apps that you want to keep running; important to not miss breaks.

Next are a pair of radio buttons that you may have previously seen in the Setup Assistant, to control whether or not the app appears in the Dock. That page of the Setup Assistant no longer exists; it isn't needed, as it contained the same controls as here, and the General Options are the first thing you'll see after completing the Setup Assistant.

Not needing to be in the Dock is the #1 request for Time Out 1, so I'm happy to be able to provide it as an option in version 2. As explained in the screenshot (click it to see full-sized), when the app appears in the Dock, it also appears in the Cmd-Tab app switcher, and has a menu bar. Clicking the status item will just show the Preferences window. But when not in the Dock, it is truly a background app: not in the app switcher and doesn't have menus — which is fine, as all essential functionality is available in the window itself. Also, clicking the status item shows a popover from it, that looks much like the sidebar of this window. Selecting a break or option will expand to the full window.

An option that wasn't in the Setup Assistant, though, is the ability to show the aforementioned status item in the menu bar. This is the #2 request, after the above Dock one, so another great addition to this version. The last time you may have seen these options, the configuration of the status item was a long list of radio buttons, but I've changed that to two pop-up menus; much more compact and tidy.

The options control what style of icon to include (if any), and what value to include (if any):

This appears in my menu bar thusly, using a green dot for the label color of the next break (Micro) and the number of minutes until it is due (5):

This is the brief countdown; the full countdown shows two units, e.g. "05:02" for 5 minutes and 2 seconds. The other options are pretty self-explanatory.

Finally, we have a pair of radio buttons to control how dates and times appear in the sidebar. Currently (and by default) it is set to show them as relative times, e.g. "due in 5 min, 2 sec". If you prefer to know the time of the next break, instead of how long until it is due, you can change it to show absolute dates, and it'll show something like "due Today, 15:45:20" instead (using your preferred time format), like the status item option to show the due time instead of a countdown.

Just a few of the many options in Time Out 2! Time is running out, but if you've made a donation, and are using Yosemite or later, you can contact me to request to join the alpha team, or to get more information. Or as always, stay tuned for more screenshots and details in the coming weeks!

Time Out 2: appearance page

I've given you several hints about Time Out 2 features. Now it's the turn of the Break Appearance page, which includes some of the most exciting enhancements in version 2.

The Appearance page includes controls for how the break looks: a theme, background colors, buttons to include, and more.

Here's a screenshot (but remember that since this is from an alpha build, everything is subject to change before public release... and astute readers may notice several changes to the sidebar from the last time you saw it; can you spot them all?).

One of the major improvements in version 2 is the concept of "themes." In version 1, all that appears during a break is a large app icon and the break progress bar and postpone/skip buttons. Version 2 kicks that up a notch: it supports multiple customizable themes, so breaks can display all sorts of content, along with the progress and buttons. It comes with several themes, including of course just the app icon (both the new icon and the old one for those who prefer that), plus several more.

It can even display websites, e.g. the theme selected in the screenshot is "Explore Flickr", which simply shows the Explore page at Flickr, as a nice collection of photos, which you can scroll through during your break. (You can click the Info button next to the theme to learn more about it.)

There are many other handy controls on this page. The "Reveal Themes" button shows the folder that houses them, so you can add your own or modify the provided ones. If you have multiple screens, you can indicate on which screen to display the theme. You can set colors and opacity for each screen, with a quick palette of colors in addition to the full color picker. As in version 1, breaks fade in and out; you can control how long that takes with simple fields. And the optional buttons to postpone and/or skip breaks can be configured here.

I hope you're as excited about these enhancements as I and the alpha testers are. Remember, if you've made a donation, and are using Yosemite or later, you can contact me to request to join the alpha team, or to get more information. Or stay tuned for more screenshots and details in the coming weeks! The functionality is nearly complete, so we're very close to the first beta release, at last. I hope you'll agree that it's worth the wait.

Time Out 2: setup assistant

When you first launch Time Out 2, I want to help you get started.

So the first thing you'll see is a setup assistant, that will explain the two suggested kinds of breaks, with controls to include and configure their two most important options, how long the breaks last (duration), and how often they occur (frequency).

Here's a screenshot (but remember that since this is from an alpha build, everything is subject to change before public release):

You can uncheck either or both of these if you don't want that kind of break, or you want to start with none and add them manually. These breaks are just suggestions; you can later delete, rename or reconfigure them however you like. The breaks have many more options to customize them, including how to handle time away from the computer; customizable themes, colors and buttons to display during the break; actions to inform you of upcoming, started or completed breaks; and much more.

If you prefer, you can click Skip to immediately close the assistant, without adding any breaks or configuring other options, and set everything up manually in the preferences.

Otherwise, when you click Continue, you're taken to another setup page that mentions these additional break options, and includes a button to open the Privacy System Preferences (alpha testers: this page will be in the next build). That is required if you want Time Out to detect the end of a natural break (idle) when you type something; otherwise it can only detect that when you move the pointer via a mouse or trackpad.

After that, one last page with a couple of options. Firstly, a checkbox to start Time Out automatically on login, so you don't miss any breaks. Secondly, something that has been much requested for years: an option to show or hide the app icon in the Dock.

In version 1, the app is always visible in the Dock, which makes it easy to get to, but many people would prefer to have it more hidden, not appearing in the Dock or Cmd-Tab app switcher. With version 2, this is now an option, at last:

Another much-requested feature is also mentioned here: the status item in the right of the menu bar. By default this displays a label color representing the next due break, and a countdown to the start of that break. This can be disabled in the preferences, or reconfigured to display a different icon and/or other information.

As explained under each radio button, when Time Out is included in the Dock, it is also in the Cmd-Tab app switcher, and has a menu bar. Clicking on the status item will simply bring the app and its preferences window to the front, making it easy to configure the breaks.

When the app isn't shown in the Dock or Cmd-Tab switcher, it also doesn't have menus, so you access commands via the buttons at the top of the window. The status item also behaves differently: instead of just showing the preferences window, it displays a popover view directly off the status item, that shows the list of breaks and options. You can use that to quickly see when the breaks are due or last done, and manually start or pause them, among other options.

I expect that most people will want to use Time Out with the Dock icon hidden, but the default is to leave it visible, to assist with new users, to avoid confusion.

I hope you're as excited about these enhancements as I and the alpha testers are. Remember, if you've made a donation, and are using Yosemite or later, you can contact me to request to join the alpha team, or to get more information. Or stay tuned for more screenshots and details in the coming weeks!

My first Mac

Last week I saw a video on the evolution of the desk, or more specifically how many physical desk objects have migrated into apps on the computer (and one could argue that they're continuing to move into an iPad).

Then Serenity Caldwell (@settern) tweeted a picture of her desk 10 years ago:

Which got me thinking about how my desk contents has evolved over time. My first computer was a Sinclair ZX81, but my first Mac was a Mac Plus, which I bought around 1988. Here it is on my desk at the time (click to see larger):

To the left of the Mac is my previous computer, a Spectravideo MSX SVI-728. The Mac Plus (platinum color) had an internal 3.5-inch floppy drive, plus an external one, and 4 MB of RAM. I later added a hard drive, and still later a magneto-optical drive:

Other interesting bits in this photo are my Inside Macintosh reference manuals, early Dejal floppy disks (I used to publish my Classic apps on floppy), my modem, and other antiques like cassette tapes and LP records. You may be able to make out a circuit board on the wall above my Mac; that isn't a picture, but the motherboard of my ZX81.

I don't have most of that stuff anymore... but I do still have the ZX81 circuitboard, and that solar-powered calculator... still going strong.

My current desk is a lot tidier than that one, too.

Simon 4.1.1 released

Simon version 4.1.1 is now available for download.

Please update to this release for El Capitan compatibility, including:

  • Fixed a crash on OS X 10.11 when changing tests with the Preview displayed.
  • Improved the layout of the Preview.
  • Added exceptions to 10.11's restrictions on http:// access.
  • Fixed several issues raised by the latest development tools.

It continues to work on Yosemite (10.10 and later) too.

Download Simon 4.1.1 now!

Syndicate content