The end of the story

We always think what we want is the end of the story. We wait anxiously for the next installment, biting our nails and plaguing storytellers to let us know what happens next.

Sometimes we are given the end of the story. Maybe the budget is cut. Maybe the storyteller recognizes the end and has the discipline to finish it. Perhaps the ending was planned from the start. Whatever the reason, we find ourselves sliding through the denouement and gently deposited at the final page, the last paragraph, the happily (or not so) ever after.

There is a satisfaction in knowing the end of the story. All the truly great stories end.

When it comes to those great stories, the ones that capture our imaginations and hearts, there are two types of storytellers: the artists, and the merely talented. Where you discover what type you are dealing with is at the story’s end.

The talented storyteller ends the story in a timely fashion, draws all the threads together, and knots them. We smile as we leave the theater or close the book; at last, the final battle has been fought, the lovers united, the epilogue complete.

The artist, however, cheats. We reach the final page and discover that although the storyteller is finished, the story has not ended. Instead it lives on in our imaginations. The world or the characters – often both – haunt us. We take the story and play out possible futures in our heads; we make our own stories.

This is the difference between good and great, talented and true artist. Whatever we think we want, it isn’t for the story to end. It is for the storyteller to finish telling their part of the story in a way that encourages us to take up the story for ourselves and make it a part of our lives.

Harry Potter was an excellent story. It captured the imaginations of millions of people and led them on a journey spanning books and years. Yet at the end of the seventh book, J.K. Rowling revealed that while she is extremely talented, she is not an artist. All the threads were tied up. We were given a world in which the relationships have played out as we expected them to, and the future (the children) is merely a repetition of the story we just completed. The epilogue shuts down our imagination, closes off the imaginative space that existed while the ending was still in doubt, and leaves us with a really good story that is, unfortunately, not our story. Perhaps with time J.K. Rowling will become an artist (I hope so; with her talent and reach she could be great in ways most storytellers can’t even fantasize about), but the ending of her first story revealed her as merely talented.

In contrast, The Graveyard Book by Neil Gaiman (available on Amazon or Kindle) is the work of an artist. Like Harry Potter, The Graveyard Book is about a special boy who lives in a fantasy world hidden within our own, but where Rowling’s ending revealed that she had not reached her potential, Gaiman’s shows the artistry of a practiced master. When I finished The Graveyard Book I was delighted to find that it hadn’t actually ended; Gaiman had instead passed the story on to me and for several minutes I savored the feeling of Nobody Owens’ tale continuing to unfold in my imagination.

I wish that more storytellers aspired to tell stories like The Graveyard Book, that fewer people gave in to the temptation to extend their story indefinitely or end them so finally that the reader’s imaginative space is locked away. In my perfect world, all storytellers would both understand that the true magic of a story occurs when they let it free for their audience to take up and consciously strive to achieve such that level of artistry.

We don’t live in a perfect world. But fortunately, we do have Neil Gaiman and The Graveyard Book.

A quick comparison of iShowU HD Pro and Screenflow

I recently discovered that, utterly without fanfare, a new version of iShowU had been released: iShowU HD Pro (and iShowU HD, a less feature-rich version of the software). Looking at the screenshots it looked like it was a clone/competitor to ScreenFlow. However, aside from some obvious mimicry in the interface, iShowU HD Pro approaches screencasting from a completely different angle than ScreenFlow and will appeal to a different set of users.

ScreenFlow, for those who aren’t aware, is an all-in-one screencasting solution. The general idea is that ScreenFlow captures positively everything that happens on-screen (while simultaneously recording audio, of course) and after you’ve recorded everything you can go in and highlight certain mouse interactions, add iSight video clips, change what part of the screen has focus, etc. If you are using ScreenFlow, then you are almost certainly intending to do a fair amount of post-production work on your screencast from within ScreenFlow before you share it with the world.

iShowU HD Pro, on the other hand, has no post-production capabilities whatsoever but enables you to post a finished screencast in the shortest amount of time possible. Unlike ScreenFlow, once you finish capturing a screencast iShowU HD Pro compresses it down (very quickly, using your graphics card to accelerate the process), and then provides you one-click access to post the video on YouTube (presumably more upload options will be provided in the future). Depending on the length of your video and amount of compression you can have it online and shared with the world literally seconds after you finish recording.

Unlike the original iShowU, iShowU HD Pro also allows you to visually highlight mouse clicks and keyboard events, or record from your iSight simultaneously while recording your desktop. Aside from the iSight recording, however, these features are all or nothing. When you start the program (and before you start recording) you can toggle mouse and/or keyboard capture on or off, and then for the duration of your video you’ll either have highlighted mouse and keyboard events or you won’t. You can also position an image over some or all of your recording area if you want to, say, have your website address displayed along the bottom of the screen. Sadly, this too will last throughout the entire movie.

iShowU HD Pro and ScreenFlow are doing very similar things from a technological standpoint (allowing you to capture high definition video or your entire screen), but the programs are obviously catering to very different crowds. iShowU HD Pro will be perfect if you need to record screencasts as quickly and easily as possible. It is one of those wonderful programs where you can be completely comfortable with the program within three minutes of launching it just by playing with the interface. If you need to record screencasts to share with your friends, or are a software developer who just wants to show users how to use a small feature without spending hours producing a video, then iShowU HD Pro will be an excellent choice. (It’s worth noting that iShowU HD Pro also supports drag and drop export to Final Cut Pro, so it likely has an audience with those people who like ScreenFlow’s capture capabilities but who feel limited by its post-production features.)

ScreenFlow will be much more appealing to the crowd who want to disseminate their screencasts a bit more widely and don’t mind putting in the effort to first learn the program and then do post-production on their recordings.

I’m pretty surprised that iShowU HD Pro hasn’t made more of a splash on Mac news sites and so forth; the program has a few issues and feels very much like a 1.0 release, but is still obviously a good contender in the screencasting software arena. Sure, it isn’t as flexible as ScreenFlow, but for some people who just want to get a good-looking screencast up as fast as possible, iShowU HD Pro at its cheaper price point will likely be the perfect solution.

TEA for Coda adds Wrap Each Selected Line in Tag

At last! Galvanized by bug fixes and minor improvements, I finally tackled my two biggest wishlist items for my Textmate Emulation Applescripts for Coda: Wrap Each Selected Line in Tag and Indent New Line. Download the updated scripts, or read on for the details.

Wrap Each Selected Line in Tag does about what it sounds like. Select a bunch of lines, run the script, and you’ll get a dialog where you can enter the tag and its attributes (identical to the current Wrap Selection in Tag). Once you’ve entered your tag, the script will wrap all of the lines with it (and ignore lines that are nothing but whitespace). This is incredibly handy for creating lists.

Indent New Line isn’t inspired by anything in the Textmate HTML bundle; rather it’s inspired by Textmate’s automatic indenting. When you run the script it will take your cursor (or any selected text) and stick it on a new line at one more level of indentation (based on what you’ve selected in the Coda preferences). This script is a great complement to Insert Open/Close Tag: type div, run Insert Open/Close Tag, and run Indent New Line to end up with:

<div>
	|
</div>

(pipe represents cursor)

Indent New Line is also super useful for keeping your indentation clean when working with Javascript functions; just type your curly brace and run the script to get a nicely indented place to start coding.

I have now completed all my “must-have” items for TEA for Coda, so let me know if you have any favorite actions from Textmate (or elsewhere) that you’d like to see added to the bundle. I’m always open to suggestions. As always, you can get the most up-to-date info about the script on the dedicated TEA for Coda page.

Minor TEA for Coda update

I’ve posted a minor update to my Textmate Emulation Applescripts for Coda and created an official TEA for Coda landing page since the scripts have been reasonably popular and I’d like people to be able to reach them without digging through blog archives.

The most recent release (2008-09-25) adds Insert BR, a script that inserts a <br /> element at the cursor (warning: will replace any selected text), fixes an annoying cursor position bug for anything that positions the cursor (cursor was previously overshooting by a character), and vastly improves on the behavior of Insert Open/Close Tag by allowing it to intelligently handle self-closing XHTML tags like img and link.

If you’re already using the scripts, you can update by replacing the HTML folder in your Coda scripts folder with the one in the download. Newcomers should follow the installation instructions in the Read Me.

Espresso for web developers

MacRabbit, makers of the best CSS editor bar none, today announced Espresso, an most-in-one solution for web development. Espresso features CSSEdit’s excellent CSS editing and live previewing, but expands it to HTML, XML, and Javascript along with remote synchronization, spell-checking for non-code text (a la TextMate), code folding, a sleek find/replace interface with color-coded regular expressions, and an intriguing combination of source list and tabs for navigating your files.

All of which is pretty cool, but isn’t what has me jazzed about Espresso. To be honest, the screenshots make it look like an underpowered Coda (it certainly doesn’t include reference books or a built-in terminal, both of which I’ve found extremely handy when using Coda), although the text editing capabilities may well be superior (I know for a fact the CSS editing will be exactly what I need).

What excites me about Espresso is not that it’s a direct all-in-one competitor to Coda; what makes it sound fantastic to me is its extensibility.

Espresso offers “Sugars”, a plugin interface using XML files. Although it remains to be seen how much flexibility is offered by the Sugar API, extensibility out of the box means that Espresso will be offering my favorite parts of all-in-one editing (synchronization and HTML/CSS in an integrated interface) along with the customization that up until now I’ve only associated with TextMate. Sure, Sugars probably won’t be as powerful as TextMate bundles, but get this:

Snippets in Espresso can be much more than quick pieces of text to insert into your document. Tab stops, placeholders, conditional expansions: it’s all there.

The thought of a program that can deliver on TextMate’s extensibility along with the all-in-one sweetness that more recently prompted me to dabble in Coda has me tingling with anticipation. Perhaps Espresso will not achieve the tantalizing promise of its screenshots and marketing speak, but given that I’ve bought every MacRabbit app I’ve tried within five minutes of downloading the demo, I think there’s cause for excitement on the part of users and alarm on the part of text editor developers.