release

Simon 3.1.1 released

Uh oh! I received a couple of reports from confused people yesterday, which confused me too: they said that the Web (HTTP) plug-in controls weren't showing up, and other wacky behaviors. I couldn't figure it out until one helpful person sent me screenshots and log information today.

It turns out that when I stripped out the PPC code for the Mac App Store editions, I accidentally stripped it out of some of the plug-ins for the standard edition, too. Oops! So I've fixed that. I'm very sorry for the inconvenience this may have caused.

I also removed the license agreement window. I decided that it doesn't really serve any useful purpose, and is just annoying to have to click through on each update. The license agreement can be viewed online.

Finally, I updated the Simon Help to reflect the above change, and to match the online edition. It now also clarifies that if you add an Upgrade license, you need the base license from the previous major release, too.

If you're using an Intel machine (as the vast majority of Simon users are), there's no need to update to this release, though no harm in doing so. If you're using a PPC machine, this is an essential update.

Download Simon 3.1.1 now!

Simon 3.1 released

Simon version 3.1 is now in general release. A rather short beta period, but all seems well with it.

The standard edition of Simon version 3.1 is available for download here. Updates for Simon Express and Simon Free for the Mac App Store have been submitted to Apple, and will be available as soon as they've done their review.

Changes in this release include:

  • Enhanced the Web (HTTP) plug-in to fetch cookies in the background, to improve performance and avoid a risk of hanging if the OS's shared cookie storage deadlocks.
  • Added a limit on the number of simultaneous checks, to avoid overloading. By default the limit is 5. If there are already that many tests being checked, subsequent ones are queued until one finishes. The limit can be changed via a hidden preference, e.g. "defaults write com.dejal.simon MaximumActiveChecks 1".
  • Improved the logic for calculating the next check time, especially for tests that were due while Simon wasn't running.
  • Also reduced the minimum interval between checks from 15 to 5 seconds.
  • Fixed a bug with scheduling of tests that could cause performance issues with lots of tests.
  • Marking tests as viewed or unviewed now updates the log tables immediately (that action was only listed in the Activity log when the next item was listed).
  • The license button now updates correctly when Simon is running for multiple days. (Standard edition only.)
  • The editor windows now open to the Summary page for New and Duplicate, or to the last-used page for Edit, since setting the name is usually the first thing to do for a new test etc.
  • Removed all PPC code from the Express and Free editions on the Mac App Store (the standard edition still works on PPC machines, for now).

Download Simon 3.1 now!

Simon 3.1b1 released

A change of plans.

I previously discussed a rather ambitious Simon 3.1 update, where I was refactoring the data model to use Core Data, and many other related changes. Pretty much redesigning the core of the application, including splitting it into multiple processes. But that turned out to be too ambitious for my current time constraints. It was taking a long time, with a significant risk of data integrity. So I recently decided to postpone that for a future update.

Therefore, I put that code aside and went back to the 3.0.2 codebase, and implemented a more modest set of enhancements for the new 3.1 release:

  • Enhanced the Web (HTTP) plug-in to fetch cookies in the background, to improve performance and avoid a risk of hanging if the OS's shared cookie storage deadlocks.
  • Added a limit on the number of simultaneous checks, to avoid overloading. By default the limit is 5. If there are already that many tests being checked, subsequent ones are queued until one finishes. The limit can be changed via a hidden preference, e.g. "defaults write com.dejal.simon MaximumActiveChecks 1".
  • Improved the logic for calculating the next check time, especially for tests that were due while Simon wasn't running.
  • Fixed a bug with scheduling of tests that could cause performance issues with lots of tests.
  • Marking tests as viewed or unviewed now updates the log tables immediately (that action was only listed in the Activity log when the next item was listed).
  • The license button now updates correctly when Simon is running for multiple days. (Standard edition only.)
  • The editor windows now open to the Summary page for New and Duplicate, or to the last-used page for Edit, since setting the name is usually the first thing to do for a new test etc.

I will come back to the Core Data etc refactor in a future update, probably next year. But in the meantime I have a bunch of smaller updates planned (as I always wanted to do after the big 3.0 upgrade), that will have more immediate benefit for my customers.

Download Simon 3.1b1 now!

Simon 3.1 alpha testers wanted

I've been working on the next update for Simon, my flagship app to check websites and servers for changes or failures. Version 3.1 is quite a big change, but almost all of it is "behind the scenes".

The biggest change is a redesign of the data storage. Previous versions store all tests in a single XML file, which is read in at launch and written out periodically. This is simple, but can be a little slow when there are lots of tests. Similarly, service, filter, notifier and report data each have their own XML file.

In version 3.1, I've redesigned this to use Apple's high-performance SQL-backed Core Data framework. So now it loads much faster, and only needs to write out individual tests when they are changed, rather than all of them.

Not only is this faster, it also enables planned future functionality, like splitting the app into multiple processes to avoid using up resources with lots of active tests, the ability to edit settings for multiple tests at once, and much more. It's an investment in the future.

But because migrating Core Data models can be a hassle, I also write out the tests etc as file packages. The data folder now includes folders for Tests, Services, etc, each of which contains a file package for each individual test etc. The package is actually a folder (which can be examined via the Finder's Show Package Contents contextual menu item), containing an XML file and a folder of logs, also stored as XML.

This means that when I change the Core Data model, Simon can simply discard the Core Data cache, and read in the file packages instead. Updating the XML format is much easier to remain backwards compatible. And since Core Data knows when individual tests are changed, Simon only needs to write out the XML in the packages when a test actually changes. I've measured it, and that adds a negligible amount of extra time to saving (still way faster than writing out all tests each time), and gives the migration benefit, plus enables storing larger data in the package, and in the future will have other benefits like Spotlight searching, sharing data, and more.

Anyway, if you're still reading after all that somewhat technical detail, you might be someone I'm looking for! Since changing the data storage is a big deal, and has involved a lot of changes to Simon's internals, I would like to get a few keen Simon users to help test the update before I unleash it on the world.

So, if you are interested in helping me test Simon 3.1, please contact me. The alpha release of Simon 3.1 will only be made available to a few people, but I expect interest to be limited, so don't hesitate to volunteer.

Worried about risks? It's pretty safe. Simon 3.1 doesn't touch the old large XML files of 3.0 and earlier, so worst case the new data files can be thrown away and you'll revert back to the state before upgrading to 3.1. So the only risk is that you could lose changes made in 3.1. Plus, of course, the risk that you could get spurious notifications, or miss notifications, if something goes wrong. But everything seems to work okay in my testing, other than a few minor issues I'm still tidying up.

Once Simon has had some more testing, I'll do a public beta release, probably in a couple of weeks, depending on the amount of testing the alpha gets, and what issues may turn up.

I'm looking forward to hearing from you!

Introducing Simon Express and Simon Free for the Mac App Store

I am pleased to announce that my flagship product — Simon, my server and website monitoring tool — is now available on the Mac App Store!

Simon was the last of my main apps to have Mac App Store editions, as it presented some extra challenges, being a much more powerful app than the others.

Three editions

There are now three editions of Simon:

But unlike my other apps with editions on the Mac App Store, there are key differences between the Simon editions. The standard edition of Simon is unchanged; it includes all the same features as before, and is sold in four license levels:

  • Bronze: this enables up to 15 active test configurations.
  • Silver: this enables up to 40 active test configurations.
  • Gold: this enables up to 100 active test configurations.
  • Platinum: this enables an unlimited number of test configurations.

The Mac App Store editions, Simon Express and Simon Free, on the other hand, have a more streamlined feature set. They only have a few of the plug-ins that provide the services, filters and notifiers. They also don't include editor windows for services, filters and notifiers, and don't include the reports feature.

Simon Express has no limitation on the number of test configurations. Yes, you read that right — unlimited tests, just like the most expensive Platinum license... so long as you only need the most popular services: Web (HTTP), FTP, DNS and Ping. So it is ideal for webmasters and others who want to monitor hundreds of websites.

Simon Free is the same as Simon Express, except that it is limited to 5 active test configurations. It is ideal for people who just want to monitor their own site and a few others.

See the Simon Feature Comparison page for a summary of the differences between the three editions. The Overview page has also been updated to add a little gold star ([direct only]) next to features that are only in the standard edition.

"Webster"

I had the idea for an app like Simon Express last year, before the introduction of the Mac App Store. I used the code-name "Webster" for this project, to highlight the goal: a simple, streamlined app for people who just wanted to monitor websites, and didn't need all the extra power of the full Simon application. The standard edition includes lots of flexibility, with custom scripts for services, filters and notifiers, the reports feature, and many more plugins. But not everybody needs all this flexibility; sometimes they just want to monitor hundreds of websites, and want a simple and inexpensive app to do that. Simon Express is the answer.

Simon Express is available on the Mac App Store for an introductory price of $59.99 (in the US; other countries vary as usual for the App Stores). Simon Free is available at no cost; it will always be free. Check them out!

And, of course, the standard edition of Simon remains available directly from the Dejal website, and can be downloaded for free for a full-featured trial period.

Each edition has separate data and preferences, so you can even run all three at the same time if you wish; perhaps use the standard Simon app to monitor advanced services or do custom filtering, and Simon Express for the bulk of simple web servers. You can migrate between editions by copying the data files; I'll probably add an in-app migration tool in a future version, if there's demand for it.

Buying advice

So which edition is right for you? If you have already purchased Simon, you'd be best off sticking with the standard edition. It has more features and flexibility than the Express or Free editions.

If you're considering Simon, you can download and try either the standard edition or the Free edition, depending on whether you want to monitor all kinds of services, or just websites.

When you're ready to buy, the same criteria can be used: if you want to monitor mail accounts, applications, Twitter, databases, and other diverse services, or use more filtering and notification options like email, Twitter, custom speech and sounds, and more, then the standard edition is for you. If you just want to monitor simple websites, and lots of them, Simon Express is for you. Or if you only want to monitor a few websites, the Free edition might be enough.

I hope everyone is as excited about these new options as I am! As always, if you have any questions, I'm happy to answer them in the comments or Simon Forum.

BlogAssist 2.2.6 released

I'm pleased to announce that BlogAssist has now joined Time Out and Caboodle on the Mac App Store.

BlogAssist 2.2.6 is now available for download here, and on the Mac App Store.

The Mac App Store edition requires Mac OS X 10.6 or later, but the direct edition still supports 10.4 and later, for now. The next non-bug-fix updates will increase the minimum OS requirement to 10.6, so this might be the last release that supports Tiger and Leopard.

The edition of BlogAssist in the Mac App Store is called "BlogAssist Express", to help distinguish it. It is basically the same as the non-App Store edition; it just doesn't have the in-app update mechanism.

For existing customers, please note that Apple doesn't currently offer any way to migrate users from the existing app to the App Store edition. So I recommend sticking with the direct edition. It will always have the same or more features than the App Store edition, and get updates faster, since it don't have to wait for Apple's review process.

Download BlogAssist 2.2.6 now!

Or check out BlogAssist Express 2.2.6 on the Mac App Store.

Time Out 1.5.7 and Caboodle 1.3.7 releases

I'm pleased to announce that both Time Out and Caboodle will be in the Mac App Store when it launches tomorrow.

To keep the versions in sync, here are updates to the non-App Store editions: Time Out 1.5.7 and Caboodle 1.3.7.

The Mac App Store editions require Mac OS X 10.6 or later, but the standalone editions still support 10.4 and later, for now. The next non-bug-fix updates will increase the minimum OS requirement to 10.6, so these might be the last releases that support Tiger and Leopard.

The edition of Time Out in the Mac App Store is called "Time Out Free". It is completely free, and always will be. Later, once version 2 is released, I'll rename the standalone edition as "Time Out Pro", and introduce a paid "Time Out Express" edition in the App Store. Currently, both the standalone and App Store editions have the same features, except the App Store one of course uses the App Store to update instead of the built-in mechanism. Once version 2 is out, Time Out Free will continue to have about the same features as now, and Time Out Express and Pro will gain many new features.

Similarly, Caboodle on the Mac App Store is called "Caboodle Express", but is basically the same as the non-App Store edition. Other than removing the update mechanism, the only notable difference in Caboodle Express is that it doesn't offer to install the PDF workflow, since Apple objected to that in the approval process. This feature is still available, you just have to alias the application to your "~/Library/PDF Services" folder.

I probably won't have a "Caboodle Free", since I can't think of any way to limit the functionality sufficiently while remaining useful. People can try Caboodle for free via the Dejal site, then buy either from here or from the App Store, as desired.

For existing customers, please note that Apple doesn't currently offer any way to migrate users from the existing app to the App Store edition. So I recommend sticking with the standalone editions. They will always have the same or more features than the App Store editions, and get updates faster, since they don't have to wait for Apple's review process.

In case you're wondering about BlogAssist, I haven't gotten around to building a Mac App Store edition of that yet. I'm not sure I will for a while; it's fine as-is.

As for Simon, that's a tricky case, since it is a very complex app, with lots of plug-ins and complex features. I don't think that Apple would even approve it, without eliminating a lot of functionality... perhaps too much. So for now, I don't plan to submit Simon to the App Store.

Download Time Out 1.5.7 now! and/or download Caboodle 1.3.7 now!

Simon 3.0.1 released

Version 3.0.1 of Simon, my flagship website and server monitoring tool, is now available.

This update includes just a few fixes, though important ones:

  • Enhanced the Twitter plug-in to use a combo box for direct message recipients, and sort them alphabetically.
  • Fixed an issue that prevented the MySQL plug-in from loading.
  • Tweaked the help book to mention the Wi-Fi hotspot option in General Preferences.
  • Updated French and German localizations.

Download Simon 3.0.1 now!

Simon 3.0 released

I'm very excited to be able to announce that version 3.0 of Dejal Simon, my flagship Mac app to monitor websites and servers for changes or failures, is now in general release! The first major upgrade in five years, version 3 has been in development for five months. It includes many significant improvements, including a new Filter concept, new Activity log, redesigned (much nicer!) editor windows, and much more.

Licensed Simon 2 users need to be aware that Simon 3 is a paid upgrade from previous versions. You will need to purchase an upgrade license. If you purchased Simon since September 1, 2010, you are eligible for a free upgrade; contact Dejal to receive your free license.

Please also note that Simon 3 requires Mac OS X 10.5 (Leopard) or later.

Download Simon 3.0 now!

Read on for a summary of some of the many enhancements in Simon 3, or see the release notes for full details.

New Activity Log in the Monitor Window

Simon 3 replaces the Notifications log with a more comprehensive Activity log. It still lists notifications, but now also lists several other kinds of actions on tests. For example, it lists when a test is edited, paused, offline, started checking, stopped or completed. Plus it lists the output and status of the service and each filter. (What's a filter? Keep reading!)

The Monitor window also now has an optional Location column, which shows the URL, domain, or other properties of the service, where available. And other improvements, like smart zooming.

[Monitor window]
Redesigned Editor Windows

In version 2, the editor windows (Edit Test, Edit Service, etc) squeezed everything into the window at once, and used disclosure triangles to collapse (hide) portions. This was fine originally, but over time the windows have added more controls, and became way too busy, and too high to fit on smaller screens without hiding portions. The disclosure triangles were easy to overlook, too.

So in version 3, the editor windows have been redesigned. Instead of disclosure triangles, they arrange the controls on multiple tab pages. The new layout is tidier and simpler, without losing any functionality — and in fact works much better, since the windows can now be freely resized and zoomed.

Another enhancement is the addition of a Summary page, which contains the Name field and a new Comments text area. This is a great place to provide a description of the test, service, etc. And this description is displayed in tooltips in the pop-up menus in the Edit Test window, as a very useful quick reference when choosing a service etc. The Summary page also includes a handy overview of the values from the other pages. Click the prompt before each item to go directly to that item.

[Edit Test window]
Powerful New Filters

In Simon 2, we had a very handy Smart Change Detection feature, that could extract a portion of the service output (HTML or whatever), to ignore dynamic or uninteresting portions, and determine if it was different than the previous time the test was checked.

As great as that feature was, sometimes it's not flexible enough. What if you want to look at multiple portions, or the 10th occurrence, or simply remove HTML tags or numbers from the text? Or if you want to result in a failure if the text is found? Or only detect a change if a number changes by some threshold, or is out of range?

All of those and much more are now possible, and in fact really easy, thanks to the new Filters feature. Plus now you can combine multiple filters — they can chain together to refine or search the output text, or use different text as input. Lots of flexibility.

[Edit Test window]
Smarter Change Detection

Like Services and Notifiers, Filters are implemented as plug-ins, which can be customized in the new New / Edit Filter window.

The Block filter plug-in provides the functionality of the old Smart Change Detection feature (and your existing tests will be upgraded to use this filter, as needed). It also supports new options to search from the start or the end of the input text, and search for a specific occurrence of the text, e.g. start from the 3rd occurrence from the end of the text. Simply drag the little dot to the right of the fields to reveal these advanced options.

[Block filter]
Fabulous Find Filter

The Find filter plug-in is one of the most useful. This is as easy or powerful as you want: it supports both simple text matching and regular expression searches.

The Find filter plug-in can find one occurrence, find a specific occurrence (like for the Block plug-in), find all occurrences (outputting them separated by your choice of delimiter), or find & replace those possibilities, outputting something else for the match(es) — especially useful with regular expression searches.

When using simple text matching, you can find via Contains, Starts With, Whole Words, and Ends With. When using regular expressions, it includes a helpful menu of regular expression operators to help build expressions, including a dynamically-updating list of capture group markers for replacements — see a screenshot in the sidebar.

[Find filter]
Numeric Analysis

Sometimes you want to use some more subtle criteria for detecting a change or failure, like whether a number has changed by a certain amount. This is now possible, thanks to the Number filter.

Treating the input text as a number of course requires that it is a valid number, so this filter is typically used after a Find or Block filter to narrow down the text. It converts the text to a number, optionally ignoring specified characters, and with a customizable decimal separator so you can match the format of the text. Then it compares that number against either a fixed number, or the number from the previous check, plus or minus some delta. It can compare using "is", "is not", "is greater than", "is less than", "is in range" or "is not in range".

The Number filter can result in either a change or failure, as desired. So you can use this to detect if a disk is getting full, a price has changed by a specified threshold, a file count has changed, or many other uses.

[Number filter]
And More Filters

But wait, there's more! There is also an Override filter plug-in, which enables you to alter the status and/or output text. So, for example, there's a built-in filter to change any failure into success (and use the error message as the output text, so it detects a change when the error changes).

Similarly, there's a Format filter plug-in, which is much like the Override one, except it only changes the output text. It is particularly useful to combine the output of two or more previous filters, or wrap in quotes or other formatting.

And lastly but by no means least, like services and notifiers, filters also support the powerful Script filter plug-in. So you can write an AppleScript, shell script, or Perl, Python etc script to create a virtually infinite range of filtering options.

See the Simon Overview page for a list of the default filters in Simon 3.

Tasty Cookies

The Web (HTTP) service got some love, too. It now includes checkboxes in the Cookies table to control how to handle cookies. Checked cookies automatically update their values (as before). Cookies with blank values are now also supported; they are not sent. New cookies are recorded automatically. So you can prevent a cookie from being recorded by listing it with an unchecked box, e.g. to send the same value every time. Session cookies are now recorded as unchecked with blank values (so are not sent or updated).

[Edit Test window]
And Lots More Improvements

Too many things to list here! (See the release notes for the full list.) A few other highlights that might interest existing users include:

  • Added optional support for Wi-Fi hotspots. When enabled, Simon tries to fetch a known value when it is first launched or after the Mac wakes from sleep, and goes into a "hotspot" mode if it receives something unexpected — probably a hotspot login page. This will avoid having false failures when you have an internet connection but need to log in to the hotspot. This feature is disabled by default, but can be enabled via a new General preference if you have Simon on a laptop.
  • Twitter recently altered their authentication requirements. The Twitter plug-in now uses xAuth (a form of OAuth) to log in to the Twitter server.
  • Separated the Pause and Resume commands in the menu and toolbars, so it is easier to pause or resume all tests when there are a mixture of paused and active tests. Also, the Pause interval is now remembered as a default for next time, even across launches of Simon.
  • Reorganized the variables so filters and notifiers inherit their variables from the service — so for example a notifier has access to all service and filter variables.
  • Changed the Dock icon and status menu to show the number of Unviewed marked items, rather than the number of items with the indicated status, and to draw the yellow unviewed badge in the upper-right corner over the status triangle, instead of behind, to fit with normal badging conventions. The Unviewed marker is now used for failures and recoveries as well as changes.
  • Added a help book, using the standard Apple Help Viewer, and significantly reformatted it. The help can still be read online if you prefer (and easily toggled via the Help menu).
Try Simon 3

Ready to upgrade? Great! Purchase an upgrade license on the Dejal Store.

Still not sure? Try it for free! If you want to keep the old version around, just in case, you can rename it (e.g. to add the version number) rather than replacing it with the new version. That way they can both occupy the same folder without a file name conflict.

Your Simon 2 license will be recognized by Simon 3, and entitle you to the same number of Tests that you were allowed before. Note, though, that the same license levels will allow more Tests after you purchase an Upgrade license.

Simon 3 has renamed the license levels, and added a new one:

  • Bronze license enabling up to 15 tests.
  • Silver license enabling up to 40 tests.
  • Gold license enabling up to 100 tests.
  • Platinum license enabling unlimited tests.

You can upgrade from any Simon 2 license level to any Simon 3 one, and even downgrade (e.g. from Standard to Bronze) if you prefer. A great deal if you have a Simon 2 Basic or Standard license — get an unlimited Platinum license at a huge discount! Here are the upgrade options:

  • Upgrade Simon 2 to v3 Bronze: $19.
  • Upgrade Simon 2 to v3 Silver: $39.
  • Upgrade Simon 2 to v3 Gold: $69.
  • Upgrade Simon 2 to v3 Platinum: $99.

I hope you enjoy the many improvements in Simon 3!

Download Simon 3.0 now!

Simon 3.0b2 released

Another day, another Simon 3 blog post! (You can catch up on older Simon posts via this link, if desired.)

Today I'm releasing a second beta of Simon 3: version 3.0b2. This just has a few fixes and tweaks, including:

  • Added the ability to specify whether to view help in the Apple Help Viewer or your web browser: a simple selection in the Help menu.
  • The new help book is not compatible with Leopard, so web browser viewing is the only option on that OS version.
  • Fixed some minor typos in Simon and the help.
  • The version 3 licenses are now available for purchase via the Licenses window (still not required, though).
  • Minor adjustments to the license editor page.
  • Tweaked the default services data.

Download Simon 3.0b2 now!

Remember, the discounted prices will only remain for another few days, so buy now to save!

And again, if you bought Simon from September 1, 2010, you're eligible for a free upgrade. Contact me to request your free upgrade.

Simon 3.0b1 released

I'm very happy to announce the first public beta release of Simon version 3!

As discussed in my previous blog post, I've been working on Simon 3.0 (nee 2.6) since May. It really is worthy of the major upgrade designation.

This update of Simon has been in private testing (by myself and a small group of alpha testers) for months, and I have some external time constraints, so I'm planning on having a very short public beta cycle this time — maybe only a matter of days. So I would really appreciate everyone downloading and putting Simon 3.0b1 through its paces as quickly as possible. Everything seems fine from our testing, but you never know what will turn up when a wider group of people start using it.

Note that although Simon 3 will be a paid upgrade, all licensed users can use version 3.0b1 without needing to buy an upgrade (and in fact the upgrade license isn't available quite yet). If you're not sure you'll upgrade, I recommend making a copy of your Simon data, as certain changes made in version 3 won't be backwards compatible to version 2.5.7.

If you haven't bought Simon yet, this is your last chance to get it at the old prices! The prices will be increasing in version 3, but everyone who buys now (and since September 1, 2010) will be eligible for a free upgrade. Don't delay!

I haven't updated the Simon website yet (that's this week's mission), but the new Simon Help is online — the same content as in the help book bundled with the app.

Anyway, without further ado, download Simon 3.0b1 now!

Here are the rather long release notes, detailing all the exciting changes:

Please Note:

  • Simon 3 will be a paid upgrade from Simon 2 (after the beta period).
  • Simon now requires a minimum of Mac OS X 10.5 (Leopard).

Monitor window:

  • Renamed the Notifications log as Activity, and extended it to support logging when tests start checking, and the various steps during the check (starting, stopping, service result, each filter, notifications, etc), plus other actions on tests, e.g. editing, pausing, etc.
  • Added an optional Location column to the tests table. It can be shown via the View Options sheet. It shows the URL, domain, or other properties of the service, where available.
  • Added a File > Save Log... command to enable saving the current log information to a tab-delimited text file. It saves just the selected lines if there are at least two selected, otherwise all lines. (You can already copy selected lines, too.)
  • Sorting on the Status column now sorts so checking is at the top, followed by failure, changes, recovery, and paused at the bottom (with time-sensitive statuses in chronological order).

Editors:

  • Redesigned the editor windows (New / Edit Test, New / Edit Service, etc) to use separate pages instead of disclosures for each section. The old layout had grown too tall over time, so that it no longer fit on a small screen with all sections disclosed. The new layout is tidier and simpler, without losing any functionality.
  • The editor windows can now be freely resized and zoomed as desired.
  • Added a Summary page, that includes the name and a new Comments field, plus an overview of the values from the other pages. Click the prompt before each item to go directly to that item.
  • The Username and Password fields are now only shown on the Service page when the service wants them.
  • Rows can now be inserted in the notifiers, auto-pause, etc lists, rather than just adding to the end (and they'll scroll if too long for the window).
  • Fixed an issue where the services in the pop-up menu in the New / Edit Test window could appear out of alphabetical order.
  • Clicking the Edit Service..., New Notifier..., etc buttons in the Edit Test window now directly opens the corresponding editor, rather than opening its list window first.
  • When creating a new test, service, etc, now remembers the last-chosen service in the Edit Test window, and last-chosen service, filter, notifer & report kind in the those editors.
  • In the Edit Test window, the pop-up menus to choose the service, filter, notifer & report now show the new Comments text as a tooltip for each menu item, and on the chosen item, as a handy way to quickly see a description of each item.

Filters:

  • Added a new Filters feature, replacing the old Smart Change Detection feature in the Edit Test window. The Block filter performs the same function as that old feature, plus several other filters are supported to do other analysis of test output, and you can write custom scripts to create additional filters.
  • Added a Filters window listing the available filters, and enabling adding, editing or deleting them.
  • Added an Edit Filter window to add and edit filters, much the same as the Edit Notifier etc windows. It includes options to configure how the filter is used, plug-in-specific controls, and auto-pause settings.
  • Added a Block filter plug-in to support the old Smart Change Detection functionality. It extracts a block of text between specified start and end text.
  • The Block filter also supports new options to search from the start or the end of the input text, and search for a specific occurrence of the text, e.g. start from the 3rd occurrence from the end of the text.
  • Added a Find filter plug-in. This is as easy or powerful as you want: it supports both simple text matching and regular expression searches.
  • The Find filter plug-in can find one occurrence, find a specific occurrence (like for the Block plug-in), find all occurrences (outputting them separated by your choice of delimiter), or find & replace those possibilities, outputting something else for the match(es) -- especially useful with regular expression searches.
  • For simple text matching mode, the Find plug-in supports finding Contains, Starts With, Whole Words, and Ends With. For regular expression mode, it has a helpful menu of regular expression operators to help build expressions, including a dynamically-updating list of capture group markers for replacements.
  • Find-based filters can even result in a failure if the text was or wasn't found, if desired -- useful to detect text that mustn't or must be there.
  • Added a Format filter plug-in. This enables the combination of values from the service and filters, via an insert variable menu, along with your own text. Handy to append the output of multiple filters, wrap something in quote marks, and other uses.
  • Added a Number filter plug-in. This expects the input text to be a valid number, so is typically used after a Find or Block filter to narrow down the text. It converts the text to a number, optionally ignoring specified characters, and with a customizable decimal separator so you can match the format of the text. Then it compares that number against either a fixed number, or the number from the previous check, plus or minus some delta. It can compare using "is", "is not", "is greater than", "is less than", "is in range" or "is not in range". It then results in either a change or failure, as desired. So you can use this to detect if a disk is getting full, a price has changed by a specified threshold, a file count has changed, or many other uses.
  • Added an Override filter plug-in. You can use this to alter the status of a test from Unchanged, Changed, Failure, or from a success status (the first two), or any status, into a different status, including automatically detecting if a change occurred. You can also alter the output text or error message, including using variables (similar to the Format plug-in).
  • Extended the Script plug-in to work as a filter, too. This enables you to create your own custom filters using AppleScript, Perl, PHP, Python, Ruby, or unix shell scripts.
  • Added a checkbox to the Script filter editor to control whether to merge or override the result of the script with the status of the service and any previous filters.
  • Added a VariablesCSV variable, that outputs a comma-separated list of all other variable names. Potentially useful when debugging your scripts.
  • Added several default filters as useful examples to get you started with these powerful new features.

Services and Notifiers:

  • Enhanced the Web (HTTP) service plug-in to include checkboxes in the Cookies table: checked cookies automatically update their values (as before). Cookies with blank values are now also supported; they are not sent. New cookies are recorded automatically. So you can prevent a cookie from being recorded by listing it with an unchecked box, e.g. to send the same value every time. Session cookies are now recorded as unchecked with blank values (so are not sent or updated).
  • Updated the Twitter service and notifier plug-in to use xAuth (a form of OAuth) to log in to the Twitter server, since they no longer support the old-style "basic" authentication.
  • Added a FileMaker Server service, which simply checks that it can connect to a FileMaker Server, and gives an error if not.
  • Added an Internet Access service, which lists applications/processes that are using internet access. You could use this with a Change filter to see when such apps launch or quit, or with a Find filter to confirm that a desired or undesired app is listed.
  • Reworded the TestStatusPhrase variable to eliminate the word "just", since the event may have occurred a while ago, if it is an ongoing failure.
  • Script-based services and notifiers now use UTF8 encoding (instead of ASCII) for the script source, to prevent issues with special characters in AppleScripts.
  • The new VariablesCSV variable is available for services and notifiers, too.
  • Notifiers have access to the new filter variables, too.

Other:

  • Updated the report variables to reflect the Activity log change. The old variables will continue to work, but there is now an Activity block, and new Type, Status and Details variables.
  • Separated the Pause and Resume commands in the menu and toolbars, so it is easier to pause or resume all tests when there is a mixture of paused and active tests.
  • The Pause interval is now remembered as a default for next time, even across launches of Simon.
  • Added optional support for Wi-Fi hotspots. When enabled, Simon tries to fetch a known value when it is first launched or after the Mac wakes from sleep, and goes into a "hotspot" mode if it receives something unexpected -- probably a hotspot login page. This will avoid having false failures when you have an internet connection but need to log in to the hotspot. This feature is disabled by default, but can be enabled via a new General preference if you have Simon on a laptop.
  • Removed the Copy to Test function from the Preview and Source windows, since it is incompatible with the new filters features. You can easily copy selected text and paste into whichever field of whichever filter.
  • Improved handling of sorting all table columns.
  • Clicking the window zoom boxes will now zoom the windows to ideal sizes.
  • The Dock icon now displays a "static" animation while the License Assistant is displayed, to help remind that the tests are awaiting a response.
  • Changed the Dock icon and status menu to show the number of Unviewed marked items, rather than the number of items with the indicated status, and to draw the yellow unviewed badge in the upper-right corner over the status triangle, instead of behind, to fit with normal badging conventions.
  • The Unviewed marker is now used for failures and recoveries as well as changes.
  • Fixed an issue with loading test data that could result in losing data if one of the plug-ins has a problem setting itself up.
  • Added a new license level, and renamed them from "Basic", "Standard" and "Enterprise" to "Bronze", "Silver", "Gold" and "Platinum".
  • Added a help book, using the standard Apple Help Viewer. The help is also available online.
  • Significantly reformatted the help, to fit with the normal help book styles, and updated for the changes in this release.
  • Many other behind-the-scenes improvements made possible by dropping Tiger support.

Narrator has moved to Mariner Software site

As discussed in a blog post a couple of months ago, my first Mac OS X application, Narrator, was acquired by Minneapolis-based Mariner Software, Inc.

The intervening time has been a transition period, as Mariner updated Narrator to use their branding, licensing, and so forth, and as their support staff got up-to-speed with the app. That process has now been completed, and Narrator is now available on their website.

Visit Mariner's Narrator web page for more information about the rebranded Narrator.

Sales and support for Narrator are now handled by Mariner. Existing Narrator 2 customers can update to the Mariner-branded edition at no cost. If you have any queries about it, please check out their helpful support resources.

I'll be interested to hear your experiences with this transition. If you have any comments (good or bad), please get in touch.

Tweeps 2.1 released

Version 2.1 of my new iPad and iPhone app, Tweeps, has just been approved, and is now available on the App Store.

You can get it at no cost, too. I've decided to make it completely free. Tell your friends!

The two major additions in this release are support for iOS 4, and for the new iPhone 4 device.

The recent iOS 4 operating system release added multitasking and a number of other great enhancements to devices that support it. Tweeps 2.1 now fully supports fast app switching. There's nothing Tweeps can usefully do in the background, but the convenience of flipping from another app (e.g. your preferred Twitter posting client) to Tweeps and back is very useful.

This update also includes a number of minor bug fixes and tweaks to support other changes in iOS 4.

Apple's new iPhone 4 is a very nice little device. One of its key enhancements is a beautiful new "retina display" — twice the resolution of older iPhone devices, with pixels smaller than the human eye can see. Tweeps 2.1 adds higher resolution icons and other images so it looks even better on the iPhone 4.

Learn more about Tweeps, or get it for free now:

Tweeps 2.0 released

I previously mentioned that version 2.0 of my new iPad and iPhone app, Tweeps, was in the approval queue. Well, today it was approved, and now it's available on the App Store.

You can get it at no cost, too, if you're quick — in celebration of the 2.0 release, I've made it free for a limited time. Tell your friends!

The two major additions in this release are the iPad support, and OAuth support.

The iPad support was of course the biggest change, with a new sidebar and expanded content to take advantage of the increased screen space.

But the OAuth support was a more important change, especially for iPhone users. Without that, Tweeps would have stopped working after June, if Twitter sticks with its plan to turn off the old-style authentication. Tweeps uses xAuth, which is a more convenient variation of OAuth; you still enter your username and password in Tweeps, and it authenticates via a complex dance of exchanging tokens and such. Once you've authenticated once (via a secure connection), Tweeps doesn't need to send the username and password again.

Learn more about Tweeps, or get it for free now:

Caboodle 1.3.6 released

Another minor update, this time for Caboodle, my lean clean snippet machine — a simple app to store text, graphics, PDFs, or other attachments for later access.

As with the recent Simon 2.5.7 and BlogAssist 2.2.5 updates, I'm planning on dropping Tiger support for the next feature update of Caboodle. I'm hoping to get to that in a few months, after I release Time Out 2. Dropping Tiger support will really benefit Caboodle, since it is currently held back by some legacy technologies, which I'll be able to replace with more modern tech. I'm looking forward to working on it.

Download Caboodle 1.3.6 now!

BlogAssist 2.2.5 released

I've just done a minor fix update for BlogAssist, my handy tool to help with HTML markup.

As with the recent Simon 2.5.7 update, I'm planning on dropping Tiger support for the next feature update of BlogAssist. That may not be for a while, though; I have updates of Tweeps, Simon, Time Out and Caboodle scheduled before I get back to BlogAssist. This is a simple app that does its job well (I use it every day), but I do have some great plans for it when I do get back to it in my development schedule.

Download BlogAssist 2.2.5 now!

Simon 2.5.7 released

Simon, my flagship Mac app to monitor websites and servers for changes or failures, has been updated to version 2.5.7. It includes just a couple of changes, but is a recommended update for everyone:

  • Fixed a bug in the Port plug-in where it would misbehave if the text to receive or send started with a "-" character. This could affect many people, as the default Incoming Email (POP) service uses this when the server doesn't accept the login.
  • Fixed an issue where a notification could fail if the TestChangeCount, TestFailureCount or TestRecoveryCount variables are used.

Please note: version 2.6, currently scheduled for release in July, will require Mac OS X 10.5 (Leopard) as a minimum OS. So (unless there are any further bug-fix releases) this will be the last version that supports Mac OS X 10.4 (Tiger).

Download Simon 2.5.7 now!

Simon 2.5.6 released

Simon, my essential server monitoring tool, has been updated to version 2.5.6. This update is recommended for everybody, and includes:

  • Changed the reports to trim off the filename for the OutputLocation report variable when using the file:// protocol, to avoid breaking reports like the iPhone template.
  • The License window is now brought to the front when the application is activated, if it is open, to avoid it being mistakenly hidden behind the Montor window (e.g. if it is automatically hidden).
  • Fixed an issue with counting the number of active tests, where it was mistakenly counting "waiting" tests as active, even if they're normally paused.
  • Added a hidden preference to output debug information about the internet connection (for use with the automatic offline mode). It can be activated by entering "defaults write com.dejal.simon2 InternetConnectionDebugMode YES" in Terminal.

Download Simon 2.5.6 now!

Narrator 2.0.7 released

Narrator, my fun application to read out stories and interviews in multiple voices, has been updated to version 2.0.7.

This is a minor bug-fix update to correct an issue with looking up licenses in certain situations, but is recommended for everyone.

Download Narrator 2.0.7 now!

Time Out 1.5.6 released

Time Out, my free tool to remind you to take regular breaks, has been updated to version 1.5.6.

This is minor release that makes the break screen now still appear if the Time Out application is hidden.

Download Time Out now!

Apologies to everyone who has been waiting for the promised Time Out version 2. It is still in the works, but has been delayed due work on IPhone apps. My secret new iPhone app is almost ready for release... but then I'll be doing an update to it for iPad compatibility, then I have a Simon update (version 2.6)... then I'll be ready to work on Time Out 2. So yes, it's still coming this year. I'm looking forward to getting back to it.

Syndicate content