I'm currently pondering a few questions regarding Memoir's design and
implementation. Now's your chance to exert some creative influence.
In no particular order, these are the issues I'm fretting over right now,
numbered for ease of reference. As you read these, you might find it helpful
to refer to the <a href="http://mattgemmell.com/images/memoir.gif">screenshot I posted</a> previously.
- Entry titles
Should diary entries have titles at all, as they do in the screenshot (“Just another day…”)?
Writing titles for blog-posts is something I find difficult, and often a stalling point. Also,
real-world diaries don’t often ask you to write a title; you simply get on with the content.
Bonus question, if you think there shouldn’t be titles: should the entries list at the
top just show the first few words of an entry for identification purposes?
- Encryption of titles
Obviously, entries need to be encrypted, with a master password to unlock the diaries.
I envision metadata being stored in a property-list file for each entry, with the entry
itself being an RTFD. The question is, if we’re having separate titles, should they be encrypted too?
My answer would be “probably, yes”.
- Encryption of diary-names
From the screenshot, you can see that Memoir follows iCal’s idea of multiple calendars with its
own multiple diaries. Each diary will have a unique ID, with a master list associating IDs with
colours and names. Should the names themselves be encrypted, or is that overkill? I’m thinking
simultaneously that it wouldn’t be at all hard to do, but might be overkill in design terms.
- Exporters
My current intention is to provide a plugins API for exporters, so that I or other developers
can add more export formats quite easily. I’m thinking that a raw, unencrypted multi-file RTFD
export should be built-in, but good candidates for plugins would be static HTML web site export,
dynamic export to a blog using the metaWeblogs or maybe Blogger APIs, maybe wiki export via Gus’
vpwiki API, and whatever else you can think of.
I’d like to add functionality such
that the user would be shown a standard UI for limiting the number of entries and/or date-range
and/or set of included diaries from which to export entries, and then hand-off appropriate data
to the chosen exporter. I’d also like to include some means for the user to specify that certain
exporters should be run after making a new post, or otherwise periodically. Need to think a bit
more about the actual details of that.
- Demo constraints
Memoir will be shareware. This is a first for me in the realm of Mac OS X software, but it’s
not before time. Regarding price, I envision something in the usual shareware bracket, perhaps
$10-$25. The question is, how do I constrain the demo version? I’m very wary of time-limited
trials, because I don’t think they work particularly well with the way that people try out
applications, even though it may seem that a diary application (near-daily use) would be
ideally suited to such a limitation method.
My current thinking is to limit the number of entries
you can create (maybe 25 entries?), OmniOutliner style, but not otherwise limit the application. I’d probably nag
upon first-ever launch, then again as the user approached the limit. This is an area of design that
I’m extremely wary of, in general. It’s so critically important to registration rates, and very
easy to create a negative first impression if you’re not careful.
Regarding the shareware/demo point, I've already
read the <a href="http://www.dexterity.com/articles/">various excellent articles</a> at Dexterity on many occasions;
I'm also interested in the views of the development community in general. Any and all thoughts on the above would be
much appreciated.