Archive for the 'Design' Category

Dashboard mockup 1

Okay, I fixed the problem. Here it is (click on the image):

Dashboard mockup 1

It doesn’t work quite right in Internet Explorer, so I recommend using Firefox. (Keep in mind that these are just mockups and that the real thing will of course support IE.) The colors will change. I’ll have other mockups soon (of the pedigree page, the research page, and a couple others). There’ll be more information on the dashboard, I think. We’ll see.

Thoughts on making mockups of interfaces: it’s really, really tempting to fine-tune everything at this point, especially since I do a lot of graphic design on the side. I want it to be beautiful. But that’s not the point of the mockups — it’s more about getting the flavor, the general idea, not the specifics. It makes sense, too. Why would you want to spend a lot of time tweaking something you’re going to end up throwing away? The point of making these mockups is to see what’s necessary and what isn’t, and some of what appears will almost certainly get thrown out. That’s why I’m not going to worry about getting these mockups to work in Internet Explorer — that can wait till the end.

It’s exhilarating to see it start to come to life. :)

Mockups coming soon

I spent a couple of hours this afternoon putting together an HTML mockup for the dashboard, but then had a unexpected two-hour-long meeting. I’m relatively pleased with the results so far, especially for such a short amount of time. There are still a few little problems with it, though, so I’ll wait to post it till later. (And I haven’t done the mockups for the other parts of the app.)

Back on a Mac

I got a PowerMac G4 at work today. It’s old, sure, but it’s running Tiger and has the latest Xcode, which means I’ll be able to develop the OS X client in parallel (in Python with PyCocoa, I think). I’ll still focus on the web client (which I’ve dubbed Orion, since saying “the web client” all the time is a) boring and b) longer than “Orion”), but once I get far enough along it’ll be nice to work on the Mac client (no name yet) so I can make sure the API is actually usable.

As far as the server (which now needs a name :)) and Orion go, I installed Ruby on Rails today and can start learning the ropes. I’ll be prototyping the interface and will hopefully have most of that done very soon, so I can get some feedback. That’s all for now, folks.

Detail page mockups

Here they are:

Source Mockup 3
Source Mockup 4

I’m still not sure yet what I think of this idea. There are clear advantages in the flexibility department (along with integration with research pages), but there are a few unresolved issues.

In the first (John Smith), the info is pretty straightforward. (Does the right alignment for the source stuff make it feel less cluttered?) The second (Jeremiah Shanks) makes the advantages of this webpage-ish method more evident: you can include to-do lists (or any kind of checkbox lists) right in there with everything else on that person, including things like tables (as you see with the census stuff).

So now the question is this: does all that stuff belong in there? Even if we don’t do this on the individual detail pages, it’ll still be there in the research pages, so it’s not a life-or-death question. I’m torn. On the one hand, it’d be nice to have a to-do list and research log specific to each person, right there with the other information. You can take it all in with a single glance. On the other hand, should research be kept separate from the conclusions? I don’t know.

Another related issue is that of stuff you’re not sure about. For example, in my PAF file (which I inherited from several people, collated together into a hodgepodge mishmash of data with very few sources), I don’t know what’s real and what’s not. It’d be nice to mark it all as unsure until I can go through and check everything (and add sources in). I suppose not having a source (especially if the data was greyed out) would be equivalent to being unsure. And yet it’d be nice to be able to rank bits of evidence on more than just a binary yes/no scale. Something like the iTunes five stars…

That’s easy enough for data that doesn’t overlap with anything else in your pedigree, but what if you’ve got two possible mothers for your great grandfather? There has to be a good way to allow for alternate pasts, “what-ifs” if you will, and make it clear that you’re not sure which it is. I’ve got a few ideas on this but they’re still kind of fuzzy.

Sources

Yesterday I came up with an idea for encouraging people to enter sources:

Source Mockup

Namely, grey out information that doesn’t yet have a source. For me personally, something like this would certainly make me want to bring all my information to “full strength,” so to speak, and it would remind me at a glance what pieces of evidence are still unsourced. Thoughts?

Incidentally, seeing it laid out this way has made me wonder if Backpackesque pages would be a good way to manage the individual detail pages. There’d still be a pedigree, of course, but each person would have their own page, and users would be able to edit them the same way you edit a Backpack page, ordering things however they want. Advantages: closer integration with the research pages, and you could put anything on the page however you want (flexibility), and it’s more in line with the nature of the web. And you could easily publish a user page (make it public), or send the link to someone else. Disadvantages: it seems like things could get rather cluttered. And I’m not sure if it would actually work. (The thing that I’m not sure about is the connection between the individual pages and the pedigree. I suppose there could be certain database fields that show up in the pedigree, or perhaps make it flexible and let the user choose which fields they want to appear there.) Hmm… This is mostly in my head still, so bear with me if it doesn’t quite make sense yet. :)

If you haven’t already tried Backpack, go register (for free) and play around with it a bit. What I like about it is that users are free to organize their stuff however they want. That’s important. People are different, and I want Beyond to allow people to work the way they want to work. That doesn’t mean shrugging off all design decisions onto the user, of course, but it does mean that the system should be flexible enough to provide for individuality in research method.

This’ll require some thought… (And a clearer explanation so you can see what I’m envisioning.)

Lightbox mockups

Here are some quick mockups I threw together for the lightbox ala-Expose feature:

Lightbox Mock 1
Lightbox Mock 2

I read 37signals’ Getting Real last week, and it’s influencing a lot of my decisions (for the better). I’m still working on other parts of the interface, trying to figure out what’s most important and what’s not as essential as I thought. More to come soon…

Data transfer formats

Yesterday I was thinking about genealogical interchange formats, because Beyond will need to send diffs back and forth (between the server and client). GEDCOM is the current standard, but it’s old (the specification was written in 1996). Enter XML. It’s flexible, very well-supported, and it’s nice to work with. Sticking with GEDCOM is like using PCX files (remember those?) instead of anti-aliased PNGs. Not good.

So, there are a few XML standards out there, but none have replaced GEDCOM yet. Why? I don’t know. But it’s time for a new standard to emerge.

That said, what needs to happen is close inspection of the existing standards to find out where they succeed and (more important) where they fail. And it wouldn’t hurt to examine other standards that have taken off like wildfire (RSS, PNG, etc.) and see what made them work. Is it just application support? Is it accompanying tutorials and articles? Is it name recognition? Hmm…

Local file editing

This morning I discovered Pixoh, an online photo editor. Quite cool. But what it made me think of was this: a similar kind of site but for genealogy. It’d be the Beyond web client but allow you to open a local file from your hard drive or flash drive (in Beyond format, PAF, GEDCOM, whatever), work on it, and then save it again to a local file. That way you wouldn’t have to have a hosting server to use Beyond online. You’d lose all the advantages of the genealogy-anywhere model, of course, and you’d have to store the file yourself, but it could be nice if you don’t want to get hosting. There’d have to be strict privacy, of course (no storing the files on the server after you close the window, or after 24 hours like Pixoh). Hmm… Any thoughts? Would this be useful? (All this would be in addition to what I’ve already mentioned for Beyond, by the way, not instead of it.)

A modest proposal

[I wrote this up in Writely this afternoon, and it’s proven to be a good consolidation of the various thoughts I’ve had. Feel free to leave comments. As for why it’s a “proposal,” I have to get the project approved by the advisory committee in order to be able to work on it 20 hours a week and get paid for it, so this is what I’m submitting. –Ben]

Beyond Proposal

In a nutshell, Beyond is a cross-platform, open, free genealogy record manager that makes genealogy research easy and fun.

Principle: You should be able to access your genealogy anywhere in the world.

Solution: Through the “Genealogy Anywhere” model, you can. Upload your data to a server running Beyond, and from then on you’ll be able to get to your genealogy from any computer in the world using the web client. What if you want to work on your genealogy midflight en route to Europe? Before you leave, let Beyond automatically download your data to your laptop (using the desktop client). Make whatever changes you want. When you get off the plane and find a spot with Internet access, plug in and Beyond will take care of synchronizing your new changes with the server. No matter where you are in the world, you can get to your latest data. No more hassles with flash drives or e-mailing files or (heaven forbid) floppies. You’ll also be able to work purely offline if you want, like PAF.

  • Server/client model, with offline local file access available instead
  • Web client
  • Desktop clients for Mac OS X, Linux, and Windows
  • Compatible with PAF 5, 4.x, 2.3.1, GEDCOM, and a variety of other formats
  • Host your genealogy on your own server (like WordPress)
  • Open source

Examples of the “access anywhere” idea include Gmail/Hotmail/Yahoo (e-mail), Google Calendar (planner), del.icio.us (bookmarks), Flickr (photo storage), Writely (word processing), Backpack (to-do lists and much more), LibraryThing (book collections).

Principle: Genealogy should be easy for everyone.

Solution: Genealogy should not be as hard and irksome as filing your taxes, and yet that is where the current state of record managers remains. But not for long. Beyond will make genealogy easy and fun, through an intuitive interface designed to get rid of all irritations. It just works. Both new genealogists and expert researchers alike will find Beyond a pleasure to work with, because it helps them get things done. And there won’t be excess baggage that gets in the way. Simplicity is beauty, and beauty makes the user experience joyful and satisfying.

  • User-friendly
  • Simple
  • Easy navigation
  • Powerful search
  • Internationalization in dozens of languages
  • Unlimited undo — no more worries about accidentally deleting something

Examples of user-friendliness: Wordpress (blogging).

Principle: Collaboration using genealogy software should be easy and painless.

Solution: One of the greatest advantages of the Internet is the capability it has brought us for collaboration, and genealogy is an area where collaboration can make miracles happen. E-mailing files back and forth and merging the changes by hand is not the best way to bring about those miracles, however. Through its revision control system, Beyond will make collaboration a piece of cake. You can give access to your data to someone else (or even to just part of your tree), and you’ll easily be able to see any changes they make and decide whether to approve them. Merging has never been easier. And once you’ve got something you like, you’ll be able to publish it easily, either through a live link to a web server (dynamically updated) or PDF. If you’re working on a book, Beyond will let you select parts of your tree and save them as EPS diagrams that you can then insert directly into your Word document. Finally, Beyond will interface with other parts of the web, letting you work with Flickr photostreams, sets of del.icio.us bookmarks, WeRelate pages, and even Family Tree. No man (or woman) is an island.

  • Revision control for managing changes
  • Publishing via live link
  • Publishing via PDF
  • EPS diagrams
  • Interaction with other websites (Flickr, del.icio.us, WeRelate, etc.)

Examples of revision control: Subversion, CVS, darcs.

Principle: Genealogy software should encourage good research.

Solution: Without evidence to back them up, genealogical conclusions oft remain at the level of mere speculation. Beyond makes citing that evidence easy, avoiding the tedious monotony that often accompanies sources. You can rank information sources according to their credibility — as the source of a birth date, for example, a birth certificate holds more credibility than a death certificate for the same person, because the former was made at the time of birth, whereas the death certificate was often made seventy or eighty years later. Incorporating information like this into the evidence system makes it easy for you to come back to your conclusions later on and see why you made them. Beyond also has a built-in research “notebook,” allowing you to easily classify your notes and log your searches. Finally, non-destructive what-if scenarios let you move things around without actually harming your data, seeing what alternate conclusions would lead to. And there will also be tags (ala Flickr), parallel timelines, and much more.

  • Weighted evidence system
  • Research notebook/log
  • What-if scenarios
  • Tags
  • Parallel timelines

Examples: Backpack (research notebook), Flickr/del.icio.us (tags)

All in the backpack

My papers are finally done and so I should have more time from now on. (Finals won’t be too hard this semester, thankfully.) So, Saturday afternoon I was decluttering my room, and I discovered all my genealogy research notes from fall 2005, on my Iavicoli ancestors in Chieti, Italy, and my Shanks ancestors in Petersburg, Virginia, and my Bailey ancestors in Anson County, North Carolina. There was a ton of stuff and I didn’t really know where to start or even how to organize it.

Sunday morning in the shower, the problem came to mind again. Immediately I thought of Backpack — it’s how I now organize everything else (my to-do lists, extra notes, etc.). And I realized it would be perfect for genealogy.

It’s kind of like a wiki, in a way, but with a few more structural things added in. The basic unit would be a page (like a web page, or a folder), which you could organize however you want. (Flexibility is key — imposing much of a structure will alienate all those who would prefer a different structure. It’s better to let it flow and fit the contours of each user’s way of working.)

On each page, you’d be able to add notes, to-do items, pictures, and whatever else you’d want. Pretend you’re working on your Jones line. You could create a Jones page and basically throw all your stuff in there, and then later on sort it into subpages with the Indiana line, the Illinois line, the Canada line, etc. If you found a document on a microfilm, you could photocopy it and then scan the copy in and attach it to that page. (You could even create pages for individual people, if you had enough material. The point is, you could organize it however you want.) And if you didn’t want to scan it in, you could still put in a “placeholder” document that would let you know you have a paper copy (”This document is in my Chicago folder,” for example).

As far as the Backpackish features go, the question now is whether it’s best to just integrate with Backpack via the API or to try to do it ourselves. The advantage of Backpack is that it’s already written. The disadvantages are that it costs money for the larger accounts (>5 pages), and it’s not specifically tailored for genealogy. Hmm…

This would also act as a kind of scratchpad for research notes, an inbox where you can put things that you later put in a place that makes sense to you. At the same time, however, it’d be really nice to have a “what-if” system in place that lets you work with your actual data, molding it like silly putty into a variety of key shapes in the hope that it’ll fit the lock. It’d have to use copies of your data, of course, like cloning your ancestors and moving them around to see if any connections arise. If users feel like their data is safe and won’t be lost, and if there’s a good way to “play” (i.e., try new ideas out), then they’ll be able to explore and come up with things that wouldn’t have occurred to them otherwise. That’s the theory, at least. More later.

I also think a research log needs to be integrated into the system. There has to be some way of keeping track of what you’ve already done, so that you don’t keep retracing your steps. In my short-lived fling as a family history major, I often dreaded filling out the research logs for my classes. And then I’d get to the end and have to try to fill it in from memory, which was even less fun. There has to be a better way. I don’t know what the answer to that is, though.

Thoughts?