Thinking about a dive site "schema"

Linus Torvalds torvalds at linux-foundation.org
Thu Jan 29 10:13:14 PST 2015


On Thu, Jan 29, 2015 at 9:04 AM, Henrik Brautaset Aronsen
<henrik at synth.no> wrote:
>
>> The first two are mandatory. If you don't have a name and GPS coordinates,
>> you don't have an entry in this data base.
>
> I disagree to this.  It has happened to me many times that I add a site and some notes and a picture, but I add the GPS coordinates later.

Quite frankly, I personally *violently* disagree with anything that
doesn't have GPS location.

There's a few reasons:

 - if you only have the divesite name, you can damn well just write it
in the dive notes as the name. It's not a "divesite", it's just a note
for the dive itself.

 - if you don't have a GPS location, everything else turns into pure
and utter crap.

Let me explain that second one by just pointing to the absolute *shit*
that other dive logging models do, and explain why that pure and utter
garbage is exactly why you have to have a GPS location.

Most dive site descriptions are this messy combination of
"region/country/area/sitename".  And to look them up without a GPS
location, you now have to know/agree on this. It sounds simple, but
it's a f*cking disaster.

It's a disaster because:

 - you can't do it as one string (do we say "Turtle Reef, Maui,
Hawaii", or "US, Hawaii, Maui, Lahaina, Turtle Reef" or whatever?)

 - so now you have to have multiple fields for the location (see all
the disasters that are divinglog etc). Country? That's just stupid,
you'd write "Hawaii". County? City? Name of water body? All that
insane crap tnat crazy formats like UDDF have separate tags for,
because their dive site database idea is fundamental shit, shit, shit.

 - that in turn means that most people won't even bother, and the ones
that do are still going to be annoyed about it.

 - and even if you had perfect people, it all won't work *either*,
since localization etc means that country and region names will be in
random languages that people use. If you are a Finnish diver, you'll
often use the Finnish names for countries. Do you really want to have
that kind of confusion.

In other words, you *cannot* sanely build a dive site list without a
GPS location. Seriously. It's impossible. I guarantee you that all it
will cause is confusion, lots of duplicate entries, and pure and utter
*shit*.

In contrast, what happens when you have a GPS location? Let me
describe exactly what happens:

 - you'll still have people who mistype the name of the dive site, and
different dive operators will call the same site different things
(native names, dive operator names, English versions of the divesite
name etc etc). But it's a simple name, like "Pinnacles" or "Cathedral"
or whatever, and nobody cares about the whole "which county" kind of
crap.

 - but nobody will care, because you *index* it by location, and the
way you find it is that you can use a map to look up the rough area
and then get a list of existing dive sites, and pick one (or decide
that none of them match, and make a new one).

 - adn if you care about "country" etc, there are nice geolocation
services that will look it up from the GPS, but almost nobody will
care, because what people actually want is the map marker. Which GPS
obviously also gives you.

So quite frankly, without GPS, the whole thing is just shit. Really.

Don't do entries without GPS. Because without GPS location they really
aren't dive site entries, they are just useless noise.

If you don't have GPS locations, just write your damn name in the dive
description, and you're done, and everything works exactly like it
works right now. If you regularly dive at the same place without gps
coordinates, the existing name auto-completion will still do the right
thing, and there is no real downside. It won't be a *site* in a
separate database, but as I have tried to make clear, without a GPS
location, you cannot make a sane site database anyway, so nobody
should care.

                                    Linus


More information about the subsurface mailing list