| The
worldwide cost of the y2k bug has been estimated to $600 billion (which is
about the market capitalization of Microsoft or twice the annual savings
of the GATT agreement). When the world passed January 1 without major
glitches, someone asked: Can we have a refund? Some have seen the
y2k bug as a major global conspiracy intended to boost earnings of
selected software developers and consultants. Yet the story of y2k in
SuperMemo is a good illustration how real the danger of y2k really was |
This is the history of the
millennium bug in SuperMemo
- 1987 - first versions
of SuperMemo were not y2k compliant. SuperMemo was then often run directly
from a floppy disk with all user knowledge and the program stored on a
single 360K diskette! This made every single bit and byte very precious!
Secondly, SuperMemo was just a home-grown experiment that was not supposed
to last 13 years!
- 1991 - first commercial
releases of SuperMemo for DOS were y2k compliant with respect to the
learning process. SuperMemo counts time by adding 16-bit interval to the
first day of the learning process which is a number of days after January 1,
1980. This should make it possible to use the program for 179 years after
1980, i.e. until the year 2159. SuperMemo 6 for DOS could be considered to
suffer from the y2160 bug as it would interpret the year 2160 as 1980
- 1999 - SuperMemo World
receives increasing volumes of e-mail in reference to the y2k bug. All
versions of the program have been double-checked and tested for potential
problems. The official stand was: There is no y2k bug in SuperMemo ... until
... a user in Poland noticed that years displayed in Monthly burden
in SuperMemo 6 for DOS are jumbled as
soon as the date changes to the year 2000
- Jan 1, 2000 - first day
of the new millennium passes without any signs of imminent trouble
- Jan 6, 2000 - a user in
Poland notices that the problem spotted in SuperMemo 6 is also present in
the Polish compilation of SuperMemo 7.4 for Windows (this does not affect
the English release)
- Jan 9, 2000 - a user in
Slovenia reports a "small y2k bug" in Import : Learning
process in SuperMemo 99. Her report is scheduled for standard processing
without much notice
- Jan 11-16, 2000 - an
increasing number of users report Import : Learning process is
useless! The problem is ranked top-priority
- Jan 17, 2000 - rude
awakening: all versions of SuperMemo starting with Build 8.4 of January 1997
contain a y2k bug! The
learning process backup export to text files uses two digits to code the
year and when those two numbers reach .00, they are blatantly
misinterpreted as the year 1900 -- a classic y2k bug!
Y2K has hit SuperMemo so late for two reasons: (1) import will fail only on
scheduling repetitions of items that have last been repeated already in the
year 2000. This requires a standard several-days interval to pass before the
bug could be spotted, and (2) few users actually use the import
option. It is only needed in case there is a need to restore the backup
(e.g. in case of a loss of files, virus, etc.) or, as it was the case among
those who noticed the bug, the users use the export/import options to move
the learning process between two large and identical collections on two
computers (e.g. at home and in the office). Conclusion, we are not out of
woods yet with y2k glitches, esp. that the infamous leap year exception is
still to come at the end of February
- Jan 18-20, 2000 - in
three consecutive days, we have posted three updates to the three main lines
of SuperMemo for Windows: 16-bit SuperMemo 8.4, low-price 32-bit SuperMemo
98 and the newest SuperMemo 99
- Feb 15, 2000 - first
customer report arrives in reference to problems with upgrading SuperMemo 7
files to SuperMemo 98. It does not look like a millennium bug at all
- Feb 25, 2000 - second
millennium bug is discovered in all versions of SuperMemo 8 and
later. The bug was hidden in procedures that upgraded SuperMemo 7 files. It
would wrongly interpret dates of repetitions made in the year 2000 or later.
Ironically, the erroneous procedure was written to perform the exactly same
function as the analogous procedure that was earlier found to cause problems
with Import : Learning process. These two procedures were written
independently and included the exactly same error!
- Feb 28, 2000 - new
releases of SuperMemo 8, SuperMemo 98 and SuperMemo 99 are made available.
These fix the problem documented on Feb 25, 2000. Both Import : Learning
process and Import : From SuperMemo 7 use the same date
conversion procedure now (earlier it was redundantly duplicated in these two
different program modules)
- Mar 22, 2000 - y2k bug
has also been confirmed to exists in a component of the ancient SuperMemo 6
toolkit: transfer.exe. The nature of this bug is the same as in all
cases described above. We do not plan to release an update to transfer.exe.
If you still use SuperMemo in DOS and have downloaded SuperMemo Toolkit, it
is recommended that you delete transfer.exe
All registered users of
SuperMemo can receive a relevant free update! If
your SuperMemo is dated before Feb 28, 2000, you can receive update instructions
by writing to SuperMemoMail
(please quote your registration number, order number or user password -- if you
remember neither, quote your full name and country)
Users of SuperMemo 8 and
SuperMemo 98 can simply download the update and replace sm8.exe or sm98.exe
file. To download click here:
Important!
Learning process is Y2K compliant in all versions of SuperMemo! You do not need
to update if you meet these conditions:
- you do not need to import
learning process backup from a text file
- you do not transfer your
repetitions between different collections via a text file (including Transfer
node)
- you do not plan to import
SuperMemo 7 databases or those databases do not include repetitions made in
the year 2000 or later
|
We
apologize for the inconvenience related to upgrading your SuperMemo!
Your time is very precious to us and we highly regret that the notorious
y2k problem had to creep in SuperMemo |
Frequently Asked Questions
(Tomasz Szynalski, Poland, Sep 7,
1998)
Question:
I have been using SuperMemo 6 Public Domain [for DOS] for years (this
version seems enough!). However, I have recently noticed that it suffers from the
millennium bug! If I buy SuperMemo 99, can I be sure that my learning process will be safe?
Answer:
Indeed there is a Y2K problem in SuperMemo 6.
However, it probably touches only handling dates in the monthly calendar of repetitions.
This should not affect the learning process per se! As for SuperMemo 99, there
were some glitches and we had removed them all within three days since the
moment they were documented (see above)
(Przemyslaw Bak, Poland, Nov 2,
1999)
Question:
I use SuperMemo 6 as this is the only version that would run under Linux. I heard
of Y2K bug in SuperMemo 6. Will I have to give up
SuperMemo in 2000?
Answer:
You will be able to continue after Dec 31, 1999:
- There is only a problem with displaying dates in Monthly Burden in
SuperMemo 6. This should not affect your learning process
- We consider digging out the old SuperMemo 6 code and fixing the
problem in question if we get more user complaints
- The only component that may cause problems is transfer.exe
from SuperMemo Toolkit. It is recommended that you delete this file
- Inprise announced Delphi support
for Linux in the year 2000, and if it only becomes feasible, we will attempt to port
SuperMemo 99 to Linux