Friday, 23 January 2015

First steps to building a simple genealogy log tool

It has been too hot the past few days to do any actual coding (my home office is not air conditioned 8^( ) so I have been some thought into just what part of my genealogical toolset to tackle first. The easy decision was to re-visit my genealogy log tool.

A genealogy log tool is a relatively simple affair - simply a database tracking research efforts. Nothing particularly fancy, but I need to make sure I am recording enough relevant information about research sessions and I need to make sure the database is searchable so I can readily find results from previous sessions. I have a simple tool already that is little more than a spreadsheet, but I know I can do better.

Having decided on a research log, the next big decision is what platform do I target? I could make it a tablet app - a log would seem to be ideally suited to tablet devices, as they are easy to carry around to libraries and archives, so that is one option. Another option is to do a web-based app which would be accessible on any device anywhere you have internet connectivity.

If I choose the tablet route, I can do an iPad app relatively quickly, but if I want to also target Android that will require a little more effort. I don't have a great deal of experience with Android, so this might be a nice little project to brush up on my skills and through a couple of recent courses I have a few incentives to write Android apps - a programming contest I could enter and a free gift card offer from Amazon. That could be fun, but would mean I'd be writing two genealogy log apps - one for iOS and one for Android. Do I really want to double my workload?

The web-app route then seems to be the way to go - I'd only have one codebase and the app would work on any device, including iOS, Android and desktops. This would be an ideal opportunity to dust off my Ruby on Rails training at last.

Now that I have decided on a platform (Ruby on Rails) I just need to brush up my knowledge and look into some user authentication/authorisation tools to allow multiple users. So I have been spending the past two days reading up on Ruby Gems and getting totally overwhelmed with all the options available. I think my decision will be between Devise and sorcery. Both gems can work with OAuth so I can let users log in with Facebook or Twitter accounts, although that would mean I'd have to get a Facebook account so I can get an API token to use OAuth.

No comments:

Post a Comment