Page 1 of 1

Dive site data

Posted: Wed Feb 12, 2020 10:10 pm
by jbergler
Hi folks,

New user here, I'm looking to import my logbook data into the app and I have a few confusions about the Dive site Data. Hopefully someone can help me think through how to use the fields.

In my head, a dive site has a name and a country at minimum. Beyond that you might add other information like the type of water, experience, photos, etc.

When I create a dive, it appears that the fields for a site are displayed in the UI followed by some other fields like City/Island and then another section for country.

What are the second and third sections here attached to?
It feels like it might make more sense if it was re factored into two data models:

1) dive site, including more fields to help group things. Eg:
name: Koh Bida Nai
city/Island: Phi Phi Islands
body of water: Andaman Sea
country: Thailand

2) operators, including the location of the Dive Shop etc.

This way, you would minimize re-entering information when you enter dives and potentially make integrations for pulling dive site info from the internet easier & cleaner if that's ever something you would consider.

Re: Dive site data

Posted: Thu Feb 13, 2020 9:18 am
by support

Dive Log maintains three tables in its database to capture information about "location". The first is the Dive Site, the second is the City and the third is the Country. These three location items can be attached to any dive (they can also be attached in various ways to other items like Trips for example). Each of thee items can be used by multiple dives and if you edit that item, it will be reflected in each dive that it is attached to. The goal is to maximize the reusability of these items to minimize the amount of data that you need to enter.

For example, let's say that you go on a dive trip to the Big Island of Hawaii this year. You might create a "Country" entry as "Hawaii, USA" that would would use for every dive during your stay on the Big Island. During the first few days of this trip you might dive on the west side of the island so you create a City item called "Kona". Then you would use that City, Country pair for each dive that you do at various sites that you create like "Turtle Heaven", "Kaiwi Point", "Suck'em Up", etc.). Then later i the trip you do a few dives out of the city of Hilo so you create a new City "Hilo" and re-use the Hawaii, USA Country and create new sites for each dive you do in Hilo. Then the following year you travel to Hawaii again, but this time visit Maui. So you can use the "Hawaii, USA" country again, create a new City "Maui" and enter new sites for each dive you do in Maui.

The items that are "grouped" with each location item (Dive Site, City, Country) are specific to that location element. For example, the Currency item makes sense for a Country, but not necessarily for a City or Dive Site. Water Type is associated with the Dive Site because you could visit one fresh water site and one salt water site from the same City/Country.

The ability to create new location items and edit them in the Dive itself is a convenience feature.Typically, once you've entered a number of location items you find yourself reusing them on multiple dives and just assigning them when entering the dive. You can visit the Location tab to edit the various Location items independent of dives as well as create nw ones. If you edit a Location item (either on the location tab or fro a dive) those changes will be reflected in all the dives that use that item.

I hope that helps get you started with the way Dive Log treats Location data.



Re: Dive site data

Posted: Thu Feb 13, 2020 4:35 pm
by jbergler
Hey Greg, thanks for the detailed response. That makes sense in many ways.

From playing around in the UI, I think I see that selecting a dive site on a blank dive pulls in the city / country relations that were last(?) used for that dive site.
If that's right, maybe a small improvement to the search UI is helpful here.

I have two dive sites with the same name in different countries. Could/should the string representation of a dive site be "$site->name, $site->country->name" or something similar for the search list when selecting a site.

Separately, it might be useful to copy and paste your response into a getting started / how to use the fields section of the docs for the app. I tried looking there before I posted and didn't find anything.

Re: Dive site data

Posted: Thu Feb 13, 2020 6:03 pm
by support

I'm glad that my explanation was of some help. Hopefully other looking at the forums will find our exchange helpful. I'll also look at adding a reference to this information in our Blog. Unfortunately we don't have a good "how to get started guide" anywhere at this pointing time, but we are considering ways to add such a guide.

You are right that when you enter a dive site that has been previously used it will pull in the City (and then this cascades to pull in the last Country used with that City) automatically. If you happen to change the City used with the Dive Site for a particular dive future uses of that site will bring in the one most recently used (for example, when the Dancer fleet moved the Sun Dancer II from Palau to Belize my first dive on the Sun Dancer II in Belize pulled in Palau automatically since I had previous dove from that boat in Palau but after I changed it for that dive to Belize the future uses of Sun Dancer II pulled in Belize).

Having the same dive site name in two different countries is a bit of a challenge when selecting the site for a dive for sure. One helpful thing is that Dive Log will always present them in the same order, so if you happen to pick the wrong one it is easy to go back and get the right one the second time. That said, I can certainly look for some way to annotate the dive site options as you are seeing them in the list. That is a good idea and shouldn't be too hard to accomplish (always a risky statement!). Thanks for mentioning this.



Re: Dive site data

Posted: Thu Feb 13, 2020 6:40 pm
by jbergler
Sounds reasonable enough. I can work with it as is for now and if you find a way to make it clearer in the future that's awesome.