Chapitre 9. Une recette pour une IA durable
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Dans les années 1990, de nombreux systèmes stockaient les dates en utilisant deux chiffres pour l'année - "97" pour 1997, "99" pour 1999, et ainsi de suite - afin d'économiser de la mémoire et de simplifier la manipulation des chaînes de caractères. Cela a bien fonctionné jusqu'à l'approche de l'an 2000. Soudain, "00" pouvait signifier 1900 ou 2000, et d'innombrables systèmes risquaient de mal fonctionner ou de tomber en panne parce qu'ils ne pouvaient pas désambiguïser le siècle. C'est ce qui a conduit à la frénésie mondiale connue sous le nom de bogue de l'an 2000 sur le site.1
Dans la hâte de corriger les systèmes avant le passage au nouveau millénaire, les développeurs ont eu recours à diverses solutions palliatives. L'un d'entre eux consistait à ajouter un indicateur de "conformité au passage à l'an 2000" ou à définir des règles arbitraires pour interpréter les dates, par exemple en supposant que toute année inférieure à 20 signifie 2000-2019, et que toute année 20 ou supérieure signifie 1920-1999. Le code pouvait ressembler à ceci :
definterpret_year(year):ifyear<20:return2000+yearelse:return1900+year
Et à côté, les développeurs écrivaient souvent des commentaires du genre :
# Temporary Y2K fix. Remove by 2010.
Bien sûr, 2010 est venu et est parti, mais le code est resté. Personne ne savait ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access