Reliable software [was Re: Xah's Edu Corner: Responsible Software Licensing]
Steven D'Aprano
steve at REMOVEMEcyber.com.au
Mon Dec 19 03:05:00 EST 2005
robic0 wrote about software liabilities:
> If the software opens a file and is in the middle of writing to it,
> then the user dumps the power to the machine and ends up having to
> reformat, thereby losing all his data, at what point does the
> liability stop? And how is fault proven or dished out? Does the
> law specifically state "repeatability" in its language?
This question is hardly unique to software. All
manufacturers and suppliers have to deal with the
question of what is covered by warranty.
But it is possible to code defensively. For instance,
instead of writing directly to the user's file, you
should write to a temporary file, then when the write
is complete, you rename the temp file to the "real"
file. On some OSes that can be an atomic operation, but
even if it is not, your danger zone where a power
failure can cause the user to lose data is strongly
reduced.
As a general rule, closed source software suppliers
have a terrible reputation for responding to bug
reports quickly and in good faith. It sometimes seems
that the bigger and more successful the software
supplier is, the more likely they are to sit on bug
reports, doing nothing to fix them, and threaten to sue
if you disclose -- all the more so if it is a security
exploit.
Follow-ups to comp.lang.python please.
--
Steven.
More information about the Python-list
mailing list