{"id":149,"date":"2009-12-30T09:36:19","date_gmt":"2009-12-30T07:36:19","guid":{"rendered":"http:\/\/www.fantascienza.com\/blog\/blackpig\/?p=149"},"modified":"2009-12-30T09:36:19","modified_gmt":"2009-12-30T07:36:19","slug":"y201k","status":"publish","type":"post","link":"https:\/\/luigirosa.com\/index.php\/2009\/12\/30\/y201k\/","title":{"rendered":"Y2.01K"},"content":{"rendered":"<p>Dopo <a title=\"Quand\u2019\u00e8 la fine del mondo informatico?\" href=\"http:\/\/luigirosa.com\/2009\/10\/quande-la-fine-del-mondo-informatico\/\" target=\"_blank\" rel=\"noopener\">averci scherzato<\/a> tempo fa, pare che il problema della data nei software non sia sparito del tutto.<\/p>\n<p>Il problema dell&#8217;anno 2000 era serio, anche se le conseguenze non sarebbero state quelle &#8220;previste&#8221; dagli &#8220;esperti&#8221; catastrofisti interrogati dalla stampa, la quale era a caccia pi\u00f9 di sensazionalismi che di notizie. In ogni modo, sia con lo sforzo preventivo sia con l&#8217;intelligenza degli utilizzatori il problema dell&#8217;anno 2000 \u00e8 stato superato.<\/p>\n<p>Durante il periodo di caccia al baco precedente il primo gennaio 2000, i protocolli di test per verificare il software prevedevano, ovviamente, l&#8217;utilizzo di date successive all&#8217;anno 2000 nelle normali operazioni del software.\u00a0 Ok, ma <strong>quanto <\/strong>successive al 2000? 2001? 2005? 2010? 2100? 3000?<\/p>\n<p><!--more-->La risposta esatta era, ovviamente, funzione sia della vita prevista del software sia del tipo di memorizzazione della data, sia della &#8220;finestra&#8221; di tempo dei dati in archivio.<\/p>\n<p>Immaginiamo che il software abbia solamente due caratteri per l&#8217;anno che vanno da 00 a 99. Senza introdurre campi aggiuntivi (di &#8220;epoca&#8221;), io posso gestire solamente 100 anni. A questo punto, si <em>tira una riga<\/em> e si assume che se il valore \u00e8 minore di (ipotizziamo) 50, \u00e8 una data del nuovo millennio, altrimenti \u00e8 una data del XX secolo.<\/p>\n<p>Tutto bene, ma se quel software ha una base storica che inizia dal 1921? Nessun problema, si <em>tira la riga<\/em> al 20, tanto chi mai utilizzer\u00e0 ancora questo software nel 2020?<\/p>\n<p>Purtroppo sta succedendo (ed \u00e8 successo proprio a me) che alcuni software abbiano <em>tirato la riga <\/em>al 9, ovvero se l&#8217;anno (a due cifre) \u00e8 compreso tra 0 e 9 si parla del 2000, altrimenti \u00e8 il 1900. Qualche giorno fa ho ricevuto da un cliente un export di dati da un software con dei calendari di eventi sia appena passati sia nell&#8217;immediato futuro: gli eventi fino al 31\/12\/2009 hanno la data corretta, quelli successivi sono collocati nel 1910.<\/p>\n<p>Visto che il problema dell&#8217;anno 2000 era sentito nel mondo informatico da molti anni prima della fatidica data, \u00e8 facile che il software in questione sia stato dichiarato <em>Y2K compliant<\/em> con il solito &#8220;trucco della finestra&#8221; descritto sopra, pensando che nessuno l&#8217;avrebbe pi\u00f9 utilizzato nel 2010.<\/p>\n<p>Il primo gennaio 1910 era una sabato, mentre il primo gennaio 2010 sar\u00e0 un venerd\u00ec: se dopodomani qualche software che state utilizzando dir\u00e0 che \u00e8 sabato, non avr\u00e0 semplicemente &#8220;perso&#8221; un giorno&#8230;<\/p>\n<p><strong>Aggiornamento 2\/1\/2010<\/strong>: <a title=\"SpamAssassin\" href=\"http:\/\/spamassassin.apache.org\/\" target=\"_blank\" rel=\"noopener\">SpamAssassin<\/a> ha <a href=\"https:\/\/issues.apache.org\/SpamAssassin\/show_bug.cgi?id=6269\" target=\"_blank\" rel=\"noopener\">un problema<\/a> con le date nel 2010. Pare che il problema sia stato risolto se usate sa-update.<\/p>\n<p><strong>Aggiornamento 3\/1\/2010<\/strong>: <a href=\"http:\/\/www.smh.com.au\/business\/businesses-stung-by-boq-computer-bug-20100103-lmys.html\" target=\"_blank\" rel=\"noopener\">BusinessDay riporta<\/a> che In Australia i POS della Bank of Queensland all&#8217;inizio del 2010 sono inspiegabilmente saltati al 2016 (via <a href=\"http:\/\/tech.slashdot.org\/story\/10\/01\/03\/1312209\/2016-Bug-Hits-Text-Messages-Payment-Processing\" target=\"_blank\" rel=\"noopener\">Slashdot<\/a>).<\/p>\n<p><strong>Aggiornamento 3\/1\/2010<\/strong>: <a href=\"http:\/\/gizmodo.com\/5439093\/time+traveling-windows-mobile-year-2016-texts-are-a-bug-not-a-feature\" target=\"_blank\" rel=\"noopener\">Gizmodo segnala<\/a> che i telefoni cellulari con <a href=\"http:\/\/it.wikipedia.org\/wiki\/Windows_Mobile\" target=\"_blank\" rel=\"noopener\">Windows Mobile<\/a> 6.1 e 6.5 leggono la data degli SMS dopo il 31\/12\/2009 come 2016.<\/p>\n<p><strong>Aggiornamento 4\/1\/2010<\/strong>: Anche <a href=\"http:\/\/www.symantec.com\/connect\/forums\/official-status-sepm-definitions-stay-31-12-2009-last-updated-04-jan-2010\">Syamantec Endpoint Protection Manager ha problemi con le date di quest&#8217;anno<\/a>.<\/p>\n<p>Mi fermo qui con l&#8217;elenco. I problemi sono ben di pi\u00f9.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dopo averci scherzato tempo fa, pare che il problema della data nei software non sia sparito del tutto. Il problema dell&#8217;anno 2000 era serio, anche se le conseguenze non sarebbero state quelle &#8220;previste&#8221; dagli &#8220;esperti&#8221; catastrofisti interrogati dalla stampa, la quale era a caccia pi\u00f9 di sensazionalismi che di notizie. In ogni modo, sia con [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","activitypub_content_visibility":"local","activitypub_max_image_attachments":3,"footnotes":""},"categories":[11,20,25],"tags":[42,43,64,87,103,196,259,494],"class_list":["post-149","post","type-post","status-publish","format-standard","hentry","category-informatica","category-programmazione","category-sicurezza","tag-42","tag-43","tag-anno","tag-baco","tag-bug","tag-duemila","tag-informatica","tag-y2k"],"_links":{"self":[{"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/posts\/149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/comments?post=149"}],"version-history":[{"count":0,"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/posts\/149\/revisions"}],"wp:attachment":[{"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/media?parent=149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/categories?post=149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/luigirosa.com\/index.php\/wp-json\/wp\/v2\/tags?post=149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}