James, I know exactly what you mean, I've started my dive log project two or three times now. Usually after I spend any time with Dive Manager from Suunto.
Its actually a lot harder than most people think to actually organize the data in a truely useful fashion, and the UI is a problem unto itself.
To make matters worse, I would ideally like to have the program run on a PC and a Pocket PC so that I can actually enter info shortly after a dive, while I still remember it. But I would like to look at the info on a full PC too. That's not so much of a programming problem, but more of a UI design issue.
I did finally figure out the way to actually manage the data is to put it in an XML file, that way you can move it easily, it can be displayed on a web if you want fairly easily, and it doesn't take all that much overhead. There are better technologies, but in this case simpler seems to actually be better.
What would be interesting here from a non programmers point of view would be a discussion on what kind of features and user interface the perfect dive program would have. I've listed a few already. But others I can think of include:
- Ability to merge two dives together in the log to treat as one dive. Lets face it there are some dives that the computer logs say are two separate dives technically, but in all honesty dropping down to a platform to tie off a buoy and then come back up to wait on students shouldn't be considered a dive.
- Ability to store log info for multiple people and associate that with a single dive. For instance my wife, daughter and I dive together, and it would be nice to enter in the observations from the dive, the site, weather and other info once for all three of us.
- Print out dive logs on different sizes of paper. Of course if I get a Pocket PC version, I might just stop keeping the paper.