Near the beginning of every new year, there is a flurry of activity in
open source projects as their developers perform the ritual update of
copyright dates in the source code. Here's one example of many, from
PostgreSQL:
commit 07c05fef8794be091fd2f271f3a500a152f1712c
Author: Bruce Momjian <bruce@mmmmmmm.nn>
Date: Sat Jan 2 16:58:17 2010 +0000
Update copyright for the year 2010.
COPYRIGHT | 2 +-
configure | 4 ++--
configure.in | 2 +-
contrib/adminpack/adminpack.c | 2 +-
…
1053 files changed, 1061 insertions(+), 1061 deletions(-)
Everyone does it, because everyone's always done it. Too bad it's a
complete waste of time.
There are good reasons to include a copyright notice somewhere in your
source code, even though they are no longer mandatory under the Berne
convention. A dated notice makes it clear to anyone who sees the code
that it is under copyright, and who the owner is; and it provides an
indication of how long the copyright protection will persist.
The date in copyright notices is supposed to be the date of
first publication. Copyright protection for the work begins at
that time and extends for a fixed period. The continued existence or
republication of the work in subsequent years obviously has no effect on
the copyright term. It makes sense to change the date only if you are
publishing a new work that will receive copyright protection
independently from the work it was derived from. Minor incremental
changes to the original do not qualify.
A major new version with many changes may qualify (whether it
does or not is a matter of fact, not law), but even so, it makes sense
only to update the copyright notice at the time of release, not every
January; and the new notice should mention only the current year, not
add it to a list of years gone by. It makes no sense whatsoever to
include a range of dates:
-Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
+Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
A related problem is that people like to spread copyright notices and
other boilerplate
nonsense all over their code. There are always parts of every source
tree that are only ever touched by the ritual annual copyright update.
(Yes, I've spoken to more than one lawyer about this.)