Mac OS X 10.7, more commonly known as Lion, was released last week, and has been very popular. Dejal customers have been very quick to upgrade.
So, I thought I'd report on the current OS usage stats, and the status of each of my apps.
Mac OS X 10.4 "Tiger" was released over six years ago on April 29, 2005.
Simon: Version 2.5.7 was the last to support Tiger; with the major 3.0 upgrade I made Leopard the minimum OS version. Despite that, there are less people using Simon 2 on Tiger than those who are eligible to upgrade to Simon 3 but haven't gotten around to it yet. About 4% of the user base are on Simon 2 on Tiger.
Time Out: The current release of this app still supports Tiger, but only about 2% of users are still on Tiger.
Caboodle: Version 1.3.7, the current release version as I write this, still supports Tiger, but the next release, 1.4, which is currently in beta, raises the minimum to Leopard. But only 3% of users will have to stick with 1.3.7.
BlogAssist: The current release, 2.2.6, still supports Tiger. Only 2% still need that, though.
Mac OS X 10.5 "Leopard" was released almost four years ago, on October 26, 2007.
Simon: Current releases of Simon require this OS as a minimum. 15% of Simon users are on Leopard.
Time Out: If I do another version 1 release, it'll require Leopard as minimum. 16% are on the spotty cat.
Caboodle: As mentioned, the 1.4 release requires a minimum of Mac OS X 10.5. 13% are on Leopard.
BlogAssist: The next version of BlogAssist will require Leopard. 7% are still on this OS release.
Mac OS X 10.6 "Snow Leopard" was released almost two years ago, on August 28, 2009.
Simon: Most Simon users are on Snow Leopard currently, at 61%... though people are quickly moving on to Lion.
Time Out: Again, a majority of customers: 66%.
Caboodle: Interestingly, more people have moved to Lion than are still on Snowy for Caboodle: 16%. Version 1.5 will require Snowy.
BlogAssist: But back to the majority here: 65%.
Another implication of Snow Leopard was that the PowerPC (PPC) processor started to get phased out; Snowy no longer supports it. How many people are still using PPC machines?
Simon: Still supports PPC, and will for at least the rest of this year, perhaps longer. Currently 11% of Simon users need it, so I want to maintain PPC support for a while yet.
Time Out: Still supports PPC, but version 2 will no longer support it. Only 2% would be affected by that.
Caboodle: Still supports PPC, for just 3% of customers, but version 1.5 will no longer support it.
BlogAssist: Still supports PPC for now, for just 2%.
Mac OS X 10.7 "Lion" was released about a week ago, on July 20, 2011.
Simon: In just a week, 24% of Simon users have moved on up to the latest big cat. The current general release (3.1.1) mostly works fine on Lion, but version 3.2, currently in beta, adds full screen support and has some fixes for Lion compatibility. Please help test version 3.2!
Time Out: This app appeals to a wide range of people, including those typically not early adopters, so it's not too surprising that Lion adoption is lagging behind the other apps, at only 16%. Still, that's not bad for a week. Time Out does have a known issue with Lion: breaks don't currently appear over full screen apps. I'm not sure why that is yet, but will see if I can fix it. I am working on Time Out 2 (with lots of interruptions for other work), but if I can solve the full screen issue for version 1, I'll release version 1.6 with that fix and some other enhancements. If I do that, version 1.6 will require a minimum of Leopard or maybe Snow Leopard.
Caboodle: This has the fastest Lion adoption of all my apps, at 32% in just one week. The current release version, 1.3.7, works fine on Lion, but version 1.4 is in beta testing, and includes full screen support on Lion and some other improvements.
BlogAssist: I haven't noticed any problems with Lion for BlogAssist. Currently 25% of users are on Lion, which is a pretty decent adoption rate. I'll probably do a 2.3 release in a month or two with some minor tweaks for Lion, but otherwise it's all good.
If you find any issues with any of my apps on Lion, please let me know. Or if you have any questions or concerns about dropping support for older OS versions or PPC, I'd certainly like to hear from you. You can reply to this blog post, post in the forums, or contact me privately (via web form or email).
Of course, it should go without saying, but the current versions of all apps will continue to run on your current OS versions and Macs, and you will not be forced to upgrade to newer versions.
I don't plan on any further changes to Simon 3.2, so you can expect a general release in a week or so, once my trusty localizers have worked their magic.
In the meantime, I'd appreciate it if you'd give this beta a try, and let me know if you experience any issues, either with Lion or usage in general. Thanks!
second third beta release of Caboodle 1.4.
This release includes fixes for Mac OS X 10.7 (Lion) compatibility.
Update: Added full screen support on Lion as well!
It also restores PPC support, which was accidentally omitted from the first beta. It's an ongoing struggle to maintain PPC support in my apps; Apple is trying hard to eliminate it. Which brings me to an important point: I've decided that to be able to move to the new Xcode 4 development tools, and leverage some of the great new stuff in Lion, this version (and any 1.4.x bug fix releases) will be the last to support PowerPC (PPC) and Mac OS X 10.5. Version 1.5 will require an Intel-based Mac and Mac OS X 10.6 (Snow Leopard) or later.
Considering only about 3% of the Caboodle userbase are still on PPC machines (and most of them on Tiger), hopefully this won't be too inconvenient; those people can continue to use version 1.4 until they're ready to upgrade (or 1.3.7 if they are still on Tiger). As for Leopard, that's currently about 12% of the Caboodle userbase currently, but I expect it'll decline by the time 1.5 is out.
It's always difficult to drop support for old OS versions or machines, but it's a necessary part of software development, especially when Apple keeps pushing things forward and dropping support for older technologies in their development tools. Time marches on!
I've just released a beta of Caboodle 1.4b1, my handy snippet keeper.
Note that this update drops Tiger support. If you are still on Tiger (10.4), you'll need to stick with version 1.3.7.
This update includes:
This release includes the following changes:
As always, please give this beta a try and let me know if you find any issues, or if there are any issues that are not fixed and should be.
Please see blog posts on DejalActivityView.
I've committed a minor update to the DSActivityView open source project for iOS. See the DSActivityView introductory post for more information, including a video demo.
This update adds support for splitting the label over multiple lines for the DSBezelActivityView variation. This change was contributed by Suleman Sidat. Thank you!
To use multiple lines for the label, simply include one or more
\n sequences in the label text, e.g.
[DSBezelActivityView newActivityViewForView:self.view withLabel:@"Split over\nMultiple lines..."]
Similarly, to display an activity view with just the activity indicator, and no label, simply specify a blank label:
[DSBezelActivityView newActivityViewForView:self.view withLabel:@""]
DSActivityView is compatible with iOS 3.0 and later, including iOS 4 (and I believe iOS 5), on iPad, iPhone and iPod touch.
You can get the project from my Dejal Open Source Subversion repository via this Terminal command:
If you make any enhancements to DSActivityView, please contribute them back to me so I can share with other developers.
What is Simon Free?
It's a simplified and streamlined edition of the full Simon application. Instead of having several different kinds of customizable services, filters, notifiers and reports, Simon Express and Simon Free have just a few of the most popular ones. Simon Express is a paid app that enables an unlimited number of tests, so is great for people who want to check lots of websites. Simon Free is restricted to 5 tests, which is enough for people who only want to check their own site... and is completely free.
So what happened?
Although both Simon Express and Simon Free were submitted and approved when the Mac App Store first opened, when I came to do the 3.1 update, the Free edition was rejected. The reviewer felt that it was just a demo. I tried arguing that it was a fully functional app for people with modest needs (and it is), but they weren't convinced. So I submitted an appeal to Apple's App Review Board. In due course, they called me (with some phone tag), and we discussed the issue.
They said that they didn't like that it'd alert you if you exceeded the 5-test limit, and said to disable the New Test button when the limit is reached.
So that's what I did. I also removed the Setup Assistant from Simon Free, since it isn't all that useful for that app. With those changes, they quickly re-reviewed and approved it.
Although having an app rejected is never a pleasant experience, and it's very frustrating for me and the thousands of customers who have downloaded the app, the reviewers were polite and helpful throughout the process... and all's well that ends well.
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.
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:
defaults write com.dejal.simon MaximumActiveChecks 1".
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:
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.
As you know, I publish this blog on the Dejal website. It has been around for many years, and has discussed all kinds of topics. Dejal product news, of course, plus general Dejal topics, and posts for other developers with open source and code tips.
I've been wondering if the more personal topics are really appropriate for a business blog, though. Looking around at other indie Mac and iOS company blogs, some do post random topics, but most stick to app update announcements, tips, and other core topics.
What do you think of this diverse mix of blog posts? Do you like getting to know your app developers a little better, or would you prefer developer blogs kept to discussing their products?
Should I create a separate blog for non-Dejal-related topics?
What about the Dejal Twitter and Facebook accounts? Should they stick to Dejal news too, or is general life stuff okay? I'm not all that verbose with tweets, with often only a few tweets per day, sometimes none. But the vast majority of the tweets aren't about Dejal topics. Should I use a different account for personal tweets? (I do have a personal Twitter account, @dejus, but don't currently use it.)
Plus, I have a poll! Take a moment to vote.
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!
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.
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:
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 () next to features that are only in the standard edition.
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!
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.
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.
This Friday is a milestone: 10 years ago my wife (Jennifer) and I moved from New Zealand to the United States.
I was born in NZ and she was born in the US. We met via the ancient command-line internet, she moved to NZ in 1994, and we got married on April 2, 1995. So yes, this weekend is our 16th wedding anniversary.
We enjoyed living in NZ, but eventually the call of Jenn's friends and family in the US became too much, and we decided to move to the US. It was quite a process, since I needed to go through the residency visa application routine, and of course shipping our household goods over in a container (and our three cats via plane) wasn't the easiest. But it was the right choice at the time, and still is.
We flew into Los Angeles on April 1, 2001. Of course, we visited Disneyland. Then we drove a rental car up the US west coast, staying in San Francisco for a couple of nights, then a stopover in Coos Bay, then up to Seattle to stay with Jenn's Mom for a week. Then we went back down to Portland (with a car borrowed from Jenn's grandmother) to stay in a friend's basement while we got established.
Jenn found a local job, we found an apartment, our furniture arrived, and we began to feel settled.
We've since bought a house and car (which we recently replaced), and I am now a dual citizen: I got my US citizenship back in 2004.
Naturally, my company came along for the ride. Dejal was basically a hobby in NZ, but one of my goals once in the US was to turn it into a real business. It has certainly flourished over the years, with revenues steadily growing.
Changing countries is quite a big deal, but it was worth it.
Will we ever move back to NZ? Who knows. We've learnt not to try to predict the future; plans can change. But we do have a dream of retiring in NZ eventually. We'll see!
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.
I'm pleased to announce that Dejal Caboodle, my "lean, clean snippet machine" is included in TheMacBundles.
Caboodle is a handy tool to help collect and organize various bits of text, images, PDFs, and other information. It includes support for custom fields and freeform rich text and other content, plus can encrypt your entries to keep them secure, and import and export several formats. It is simple and easy to use. A full license is included in the bundle, not some cut-down version.
This bundle also includes 9 other fine apps, for only $39.95 — a saving of 84%!
Visit TheMacBundles.com to learn more, or to take advantage of this great deal.
A couple of weeks ago, a major earthquake hit Christchurch in New Zealand, with at least 160 dead and many more injured. A couple of days later, I announced that I'd donate 100% of Dejal Mac sales for a week to the New Zealand Red Cross, to aid with their relief effort.
Towards the end of that week, I was contacted by some Kiwi iOS developers who were organizing their own similar effort, also donating 100% of their incomes for a week to the NZ Red Cross. So I decided to join with them and extend my effort by another week. They also managed to recruit lots of other NZ, ex-NZ and overseas developers to their effort.
I'm pleased to report sales totalling US$1,419.64 during this period, which I will donate to the NZ Red Cross.
I had hoped for more (e.g. when I did a similar effort for Haiti, I accumulated almost as much in a single day), but I'm between releases right now, so it didn't benefit from the usual new-release sales spike. And perhaps people aren't as moved by a disaster in a first-world country? True, Haiti was a much bigger disaster, with hundreds of thousands dead. But as an expat Kiwi, the Christchurch earthquake seemed "closer to home" for me.
Regardless, thank you very much to everyone who bought my apps during this period. I really appreciate your help in this effort. I'm sure the NZ Red Cross will make great use of the funds.
If you missed this event, not to worry — you can make donations directly to the NZ Red Cross.
As you may have heard, the city of Christchurch in New Zealand had another major earthquake a couple of days ago, having suffered a big one late last year.
This quake (or series of quakes) has done a huge amount of damage, both to homes and major landmarks like the cathedral. Hundreds of people are still missing, and at least
75 123 were killed, with the toll still climbing.
Here's an interesting visualization of the two big quakes and hundreds of others in the region.
Looking at some of the photos really brings home the tragedy, for example this slideshow of before and after photos.
As many of you know, I was born in New Zealand, and lived there until 2001. Although I don't have any friends or family in Christchurch, I know people who do. I feel that I really want to do something to help the relief efforts.
So, I'm announcing that for the rest of this week (i.e. from now till midnight PST on
Sunday Feb 27), I will donate 100% of the proceeds from Dejal Mac app sales to the New Zealand Red Cross, to help fund their relief efforts.
Update: Extended for another week! I've now joined with other Kiwi Mac and iOS developers who are also donating 100% of their income to the NZ Red Cross. So now I'm donating my Mac income till March 5.
If you're at all interested in any of my products, now is the time to buy. Your money will help those suffering from this disaster.
And if you don't need any of my apps, I urge you to make a donation to the NZ Red Cross directly.
Here's a handy tip for Simon, my flagship website and server monitoring tool:
Want to take regular screenshots of your computer automatically? Perhaps to record your progress or productivity, or make sure a child is using acceptable apps and websites? You might not think of Simon for such a job, but since its scheduler is always running (while Simon is running, anyway), it's a good fit.
Download and install the "Screenshot" service from the Simon Extras web page, then add a test using that service. It will take a screenshot and save it to a specified folder, at whatever frequency you specify for the test.
But wait, there's more! What if you want to take a screenshot of what a web page looks like, perhaps whenever it changes? You can do that, too. Download and install the "Show & Screenshot" notifier script, also from the Simon Extras page. Add that as a change notifier on a web test, and whenever the page changes, it'll be opened in your web browser, wait a bit for it to load, then take a screenshot. Handy!
Of course, being scripts, the behavior can be customized as needed. I hope one or both of these are useful!
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.