What’s really great about Fantastical

This morning I was listening to the most recent episode of Back To Work, and Merlin’s discussion of Fantastical reminded me that I’ve been meaning to write for months about why it’s so good. Merlin’s description actually came damned close to making this post redundant, but there’s still one important thing he left out.1

Everyone who writes about Fantastical (including me) focuses on how wonderful its natural language processing is. And it is wonderful. Instead of laboring your way through several fields to add an entry, you can type something like “Ritchie conference call at 3pm on Tuesday,” and it’ll fill in all the fields, including a default duration of one hour and a recognition that by “Tuesday” you must mean “next Tuesday.”

Natural language processing of calendar entries isn’t new or unique to Fantastical. Way back in 2007, there was Sandy,2 a server app that accepted emails to organize your calendar. The last couple of versions of OS X’s own Calendar (née iCal) have had a quick entry field that uses NLP. And iPhone users have Siri, which includes both NLP and voice recognition.

What separates Fantastical from these others is that its window shows both the free-form entry field and the individual time/date/etc. fields, and as you type in the free-form field, animations show you how Fantastical is interpreting what you’re typing.

Fantastical entry

This is not just eye candy. The animations are providing instant feedback on how Fantastical is parsing your words and, more important, they’re teaching you Fantastical’s syntax. This is tremendously useful because, despite the wonderful flexibility of NLP, there’s always a syntax and you need to learn it if you’re going to use the product. This lack of instant, incremental feedback is what makes Siri impenetrable to some people; you have to give Siri an entire command and wait to see how she interprets it.3 4

Fantastical’s teaching isn’t punitive. It’s instant positive reinforcement that helps you learn how to use it when you’re just starting out and doesn’t get in your way when you’re an expert.

  1. As I sat down to write this, the annual “Merlin episode” of Mac Power Users appeared in my podcast feed. It may well be that he or David or Katie mentioned in that episode everything I’m going to say here, but I’m going to finish this post anyway and hope I’m not accused of plagiarism. 

  2. How long ago was that? Gina Trapani was still at Lifehacker and wrote the linked article. The Sandy service itself is no more. 

  3. It doesn’t help that Apple’s commercials have oversold Siri’s NLP. Siri has a syntax, too, and it’s frustrating until you learn the magic words. In the six months I’ve been using Siri, I’ve gotten very good at working with reminders and calendar entries, but I’m hopeless with having her read my texts while I’m driving. 

  4. By the way, Apple, when are you going to allow us to choose the calendar to which calendar Siri adds an entry? You know those world-beaters you show in your commercials talking to Siri as they walk swiftly through airports? They all have more than one calendar. 

14 Responses to “What’s really great about Fantastical”

  1. Merlin Mann says:

    My gosh, I miss Sandy, and I really miss Stikkit. Stikkit was way ahead of its time, but, criminy, would I ever still use that today.

    (Great post, as ever, Doc).

  2. Dr. Drang says:

    Unsurprisingly, the top hit on Google for “stikkit” is Merlin’s 43 Folders post about it. 2007 was a big year for NLP.

  3. cceddie says:

    quick correction: I believe her name is Gina with an “a”

  4. Dr. Drang says:

    Of course it’s “Gina.” I’m a terrible proofreider.

  5. Dave Griffin says:

    Nice article - though I seem to recall John Siracusa using this same example some time back between the feedback provided in Fantastical vs. the lack of feedback provided by Siri. Wondering if this was inspired by him. I’m not sure if it was in ‘Accidental Tech Podcast’ or ‘Neutral’ because they are one in the same ;)

  6. Chuck Toporek says:

    Stikkit! All hail, Rael Dornfest! Damn, I miss that, too.

  7. Fred Raimondi says:

    I friggin LOVE Fantastical, but it sometimes it doesn’t update my calendars properly……I’ve missed appointments…

  8. Dr. Drang says:

    John Siracusa definitely complained about Siri’s batch processing vs. Google’s continuous processing, but as I recall he was focused on the accuracy of the two voice recognition systems, not on the NLP parsing. The reason I wrote the post, and the thing I don’t think I’ve seen elsewhere, is in the paragraph John Gruber excerpted—that Fantastical is teaching you its syntax as you use it.

    Khan Academy, which I’m generally not a big fan of, has a similar thing in its programming section. Not only does the output change continuously as you edit a program, but syntax errors are flagged, too. Actually, I find this sort of annoying, because it flags “errors” that are only there because you haven’t finished typing the line you’re working on. Still, with a little more intelligence in the feedback, it could be an excellent way to learn programming.

    And before anyone mentions it, I am aware that continuous feedback of the Markdown interpretation of comments here would be helpful. Someday, maybe.

  9. Sean Branagan says:

    I’ve been struggling for years to settle on either an analog or digital option for calendars. Despite all the innovations in software and a multitude of advantages, the one remaining advantage for analog—and it’s a biggie—has always been input. It’s simply more pleasurable and efficient for me to use pen and a paper planner.

    Fantastical has changed that. The more I use it, the more I start to feel that it’s just as good for inputting an event as is with paper. The speed and efficiency are there, the feedback is there. It might even be better, which is saying a whole lot.

  10. NetMage says:

    Blah blah blah something about history…

    Lotus Agenda in 1988 could accept text like Lunch with Paul Tuesday 3pm and automatically categorize an item with date fields,etc.

  11. James says:

    None of this is new. I don’t remember Lotus Agenda in 1998, but even in the early 2000’s, IBM was working on this kind of date extraction in emails 1. And they weren’t the first.

    But that’s not the point: it’s the real-time link that Fantastical’s UI provides that makes it’s NLP magic less important. Even if Fantastical’s excellent NLP weren’t as good, as long as it’s good enough, the user gets that reinforcement, which makes him or her more forgiving than an even robust algorithm.

  12. Dr. Drang says:

    OK, NetMage, I’ll see your 1998 Agenda and raise you calendar, which had a very nice parser back in 1980 or so as part of Bell Labs’ V7 Unix.

  13. Eric Platon says:

    And by the way, Fantastical is also amazing with other languages too. I use it in 3 languages and parses all correctly. Impressive and it has never felt as transparent.

  14. Kaleberg says:

    It’s funny, but back in 1983 a friend of mine developed a free text analyzer like this. It handled calendar dates, addresses, appointments and genealogical facts. He was building a family database on an IBM XT, so he had to recognize names, dates, places and relationships. His program showed you the data structures it was building while you typed. It started as a front end for his genealogy system, but wound up managing his appointments and contacts as well.