Wednesday, October 26, 2022

Tracking changes made to a flight

This is probably the most passive aggressive feature I've ever done.  I'll explain why, but first let me explain the functionality.

I've had a few requests for the ability to track changes made to a flight since it was first saved, due to local authorities in a few jurisdictions deciding that doing so was a requirement for electronic logbooks.  

I already have a form of this functionality already for signed flights. When a flight is signed, I save a copy of the salient (I'll discuss "salient" below) details of the flight (I refer to it as a hash, but it technically isn't one) so that I can always tell if any of those "salient details" have been modified since being signed.  This is important because the signature is an attestation to the facts of a flight, and the entry no longer represents what was certified by the signing authority.  Details are here, but this is important and useful functionality to verify that the signature is valid.  As a bonus, the hash is saved in such a manner that I can determine which edits have been performed, allowing the student to undo their changes (and thus re-validate the signature if it once again matches its original signed state).

The new feature expands this ability to unsigned flights.  If you enable this functionality, then when you save a new flight, it will also produce the hash.  If you then modify that entry, you'll see the modifications in-line (on the web) and you'll see the fact of the modification in a print view (an asterisk next to the date; I don't want to waste ink and muck up the layout for purposes of showing the changes).  As with signed flights, if you revert the changes, then its goes back to being "unmodified".  If a flight is signed, then the flight is "reset" and the version that is signed provides the new baseline for modifications.  Note that enabling this feature does NOT turn on tracking for existing unsigned flights.

But it's a really stupid feature that just clutters your workspace and doesn't even solve the problem that I believe it is trying to solve.  It literally adds no value.

Allow me to back up and get philosophical for a moment.

I've found in life that one of the most useful questions is "what problem are you solving."  

It's incredibly powerful for two reasons.  The first is because the better you understand a problem, the more self-evident workable solutions become and the more clearly you can weigh one against another.  

But the other is that it helps us recognize when we already have a solution in mind that is blinding us to other, potentially better solutions.  (Heck, sometimes it can even help us figure out that we don't really have a problem at all!)

Tracking changes to un-signed flights is a solution, not a problem, so if I ask the question "what problem does it solve", I realize that nobody has addressed this head-on.

I can only guess that it has to do with verifying that nobody is fudging things and backfilling data.  

But if that's the problem to solve, tracking changes is a terrible solution, for a variety of reasons:

  • It's ineffective, because it is easily worked around.  After all, if you delete a flight and add a replacement flight, there's no way to determine that the newly entered flight was a replacement for the deleted flight.  (And if you have to track deletions, then doing bulk-edits or multiple tries when you import your logbook makes you look like a terrible fraudster).  We pilots already operate on an honor system: if I have an entry from a solo flight I made on Friday, that is credible only because I say that I actually took that flight.  I could be lying to pad my logbook, and change tracking does nothing to help that.
  • It's arbitrary, because it imposes a requirement beyond what paper has, while paper is still acceptable.  In a paper logbook, you can easily insert time (say, night flying or solo time) in a manner that cannot be detected (even for signed flights).  I've heard the counter argument that many edits (deleting flights, modifying existing data) cannot easily be done because you'll see the scratch-out or the "3" clumsily turned into an "8"; while that's true, it's also pretty easy to just get a new paper logbook and transcribe entries if you're really determined.  But again, since I'd think the most common source of fraud here would be adding non-existent experience (what value is there in hiding actual experience?), that's an edge case: it's easy to insert additional landings, approaches, or times into existing flights - or even entire new entries - on paper in an undetectable manner.  Thus a different standard is being applied to logbooks based on the medium, but with no clear rationale for doing so.
  • It's ambiguous.  I mentioned "salient details" above. I do this because there are a lot of things that simply do not matter to the integrity of a record: if you add or remove images/videos, or if you make it public or private for example (neither of which even exists in the paper world).  For signed flights, I've excluded such values from the hash to avoid needlessly invalidating a signature.  I've yet to see any authority asking for change tracking actually define what constitutes a "change" to be tracked.  The requirement is similarly vague about what, precisely needs to be recorded about each change or whether it is OK to treat the flight as unmodified if you make a change and then change it back.
  • It's insanely noisy.  If you fix a misspelling, if you remember that you forgot to log cross-country time on a given flight, if you do anything to correct a legitimate error, it flags the flight as being modified.  Good luck distinguishing fraud from legitimate edits.  (My old paper logbook is full of such corrections/additions, as I fixed math errors or went back to add experience that I had acquired but hadn't logged at the time).
  • Worst of all, it's completely pointless because it is redundant.  Particularly if you submit a printed version at a job interview or to authorities, you are already affirming that "yes, this is my true and accurate logbook"; that's why there's a place to sign each page.  And, of course, signed flights already have the mechanism so there's an additional layer there for training where a 3rd party is certifying the truth of the records.
And if that's not the goal, then...seriously, what problem is being solved?  I want to know!  I have no other theories, but perhaps someone here does?  

Anyhow, this silly and boneheaded functionality is now live.

No comments:

Post a Comment