為什么改元“令和”,竟然成了日本程序員的魔咒?

本文來自微信公眾號:PingWest品玩(ID:wepingwest),作者: 邢逸帆


躲得過千禧年,躲不過新天皇即位。


從5月1日開始,日本就徹底告別了平成時代,步入令和元年。


而且由于天皇更替舉國歡慶,日本往年最長只有 5 天的黃金周將被加量到 10 天,也就是說,日本社畜即將迎來夢幻般的十連休!


但對于已經到來的令和元年十連休,也不是每個人都歡天喜地。因為伴隨著新元號而來的,是一系列煩死人的系統年號變更問題。


作為全球唯一保留了年號和皇歷的國家,盡管日本在日常生活中也普遍使用公歷,但無論是銀行、證券、保險等金融機構還是行政機關,都仍在使用年號紀元。


因此,從2019年5月1日正式改元開始,日本所有的電腦和軟件系統都必須在當天同步改用新年號。而在日的國際 IT 公司,更需要將公歷與日本皇歷切換,將日本使用的軟件版本日期更新為新年號紀元。


而且,1989 年開啟的長達 30 的年平成時代里,互聯網信息技術迅猛發展,比起上次改元時,今日的網絡系統對人們生活的影響已不可同日而語。如今電腦、手機、保險券甚至 ATM 機都已經接入了計算機系統,對于日本程序員來說,讓所有的計算機都在5月1日同步改元,這還是歷史上從未有過的大挑戰……


以至于一位 Twitter 網友吐槽到:在改元的祝賀氣氛里,IT 從業者看到這幅畫面卻只想罵人。



身為 IT 業不相關人士、隔壁看戲人員,大家可能無法理解日本程序員“隨時都會被拖出去祭天”的恐慌,然而在程序員甚至日本政府看來,改元確實是件關系國計民生的大事。


令和開年有點慌

盡管從小接受西式教育、業余熱衷研究蝦虎魚的明仁天皇非常特立獨行,2016 年就宣布自己將打破慣例成為第一位生前退位的天皇,然而新年號還是要等到退位前一個月才能揭曉。對于需要做出“技術性調整”的各行業人員來說,真正留給他們的時間只有短短一個月。


于是,新年號甫一公布,全日本上下立刻緊張了起來!


一些選擇手動升級的中小企業為了繼續利用已經打印出的文件,開始搶刻令和年號橡皮章,橡皮章一時洛陽紙貴。


辦公用品制造商 Hanko21 的總經理瀧口修表示,自己從4月1日起就開始親自下場和 20 多名工人加班加點在工廠里趕制令和圖章,但是他的努力沒有維持多久,因為“年號公布三天后,我們囤積的橡膠原料就全部用完了。”



而為了在一個月內對旗下的八十多個行政單位計算機系統進行快速調整,名古屋市政府撥款四億八千萬日元進行加班加點在5月1日前完成了賦稅、社會保障等重要系統的改造,但還有更多“不緊迫”的系統會留在1至7日由程序員加班完成……


當然,最發愁的還是電腦系統老舊過時的私人小企業。因為更新系統耗資巨大,有些日本公司的電腦系統已經二三十年沒有更新過了,幾乎和平成年代一樣古老,根本無法自動升級。


面對改元,山梨縣北杜市的一家老字號點心鋪可能是少有的能淡然處之的實體之一。這家店的老板在30多年前昭和時代預定賬本時,把 50 本訂成了 5000 本,整個平成時代過去了賬本還沒用完。


元號變成令和后,起碼老板今后只用改一個字了(昭和改令和)。



中小公司改元亂成一鍋粥,而那些自稱“我好了!”的公司,也紛紛出現大漏洞。


一個月前微軟表示,將通過云端向日本客戶推送令和更新包。而5月1日上午,就有還在加班的日本上班族表示 Excel 日期混亂,不僅顯示出平成31年5月1日這種不存在的日期,公歷年份還變成了 5 位數。



與此同時,北海道銀行、北陸銀行和橫濱銀行開始發生大面積 ATM 機混亂事故。所有轉賬日期都變成了1989年5月7日,至于被轉走的錢到底去了哪里利息怎么計算誰也不知道(畢竟在系統里這已經是一筆來自1989年,存了 30 年的錢),不過這三家銀行表示他們有信心盡快修復錯誤。



而這場曠日持久的改元混亂,還要持續到5月7日。


在2019年5月1日內閣會議后的新聞發布會上,日本內閣官房長官菅義偉宣布,盡管5月1日年號就已經更替為令和,但改元工作要到5月7日才會結束。“我們不會影響公眾生活。”菅義偉說,但日本民眾對此存疑。


何事驚慌?


也許有人不理解,“年號不過是一個名字而已,會造成這么大的影響嗎?”


事實是,年號與日本的計算機系統和各種證件的計數系統息息相關,一旦出現混亂,輕則證件失效,重則金融交通系統崩潰。


比如著名的“駕照迷思”。平成29年發放的駕照有效期至平成32年(2020年),然而在這個日期來臨前日本就已經進入了令和時期,理論上平成32年是不存在的。


人工操作時還比較好加以判斷,然而對于六親不認的計算機來說,所有有效期在平成31年4月30日以后的契約合同證件證券,全部都是無效的。



此時,就需要程序員們上陣迅速修改系統,保證人們的正常生活了。


而在平成12年(即2000年)2月,因為日本程序員忽略了2000年是個大閏年,沒有在系統里加入29日,這一天在北海道札幌市拿月票卡通勤的上班族統統被堵死在路上,造成了交通癱瘓和大面積遲到。


雖然犯這種低級錯誤的真實原因已經不得而知,但總覺得換做用公元紀年的話,應該挺好發現2000年是閏年的。


因為年號和計算機系統實在過于煩人,維基百科專門在日語“元號”條目中加入了“元號與計算機”這一欄,長篇大論元號的種種弊端。



日本程序員受的苦,外人真的沒法數。


令和之后會更慌

盡管令和的劫已經快渡完了,但日本程序員的夜明還遠遠沒有來到……


在2019年開年之初,有一位程序員小姐姐在 Twitter 上提醒大家:“比起新元號對應問題,還有更需要擔心的事哦~昭和 100 年就快要到了哦~”



她的言論立刻引發大量轉發,評論區一片程序員的悲鳴。



日本的昭和時代從1926年開始,1989年結束,歷經 64 年,因此昭和年號最多只有 64 年。那么讓日本程序員聽了就要跪的昭和 100 年又是什么鬼?


這還要歸功于前代程序員綿延三十年甩來的巨鍋。



1989年,日本經歷了昭和到平成的改元,那時的電腦還比較原始,內存只有 64-128KB,每一個 bit 都至關重要,程序員只能想方設法從各種地方摳內存。于是,在記錄日期時,年份都只會記錄后兩位,比如1989年1月1日,就會被記錄為 890101。


然而一旦到了2000年,巨大的 bug 就出現了。由于只保留后兩位數,銀行里面的電腦可能把2000年解釋為1900年,從而算錯利息甚至直接消除賬面記錄,而你在1999年12月31日23:59分打了三分鐘的電話,電話局的賬單卻可能出現負數計數而導致系統崩潰(-100年+3分鐘)。


這就是大名鼎鼎的千年蟲問題。


在全球同行都為千年蟲焦慮不已的同時,先代日本程序員們卻靈機一動……


如果繼續延用昭和年號計數的話,千年蟲問題就會被推后 25 年,即昭和 100 年( 2025 年)才歸零!比別人多了 25 年,肯定足夠我們解決問題了!


所以如今日本政府和企業的系統里表面上看起來一團和氣,實則一直在底層為昭和續命。


然而眼看令和元年都來了,清算的日期還有六年就要到了,新一代日本程序員們面對 COBOL 等上古語言開發的系統卻更加迷惑了。


“銀行和大企業的基礎系統像古董一樣脆,怎么也不能更新……!”


“30年40年前的代碼根本沒有說明文檔,剩下的部分也沒有追加變更記錄!”


“法律規定的5年追訴期早就過了,因為人事變動,當年的負責人全都找不到了。”


日本程序員大型崩潰,只能祈禱到 2025 年自己已經轉行了……



當然看熱鬧不嫌事大的人也是存在的。


“從平成到令和時代,昭和100年問題即將到來,好像被遺忘的時代的亡靈要來了,這不是很帥嗎?”


到那時面對“時代的亡靈”,日本程序員會不會想出新的甩鍋辦法,那就是另一個故事了。


至于當年甩鍋的老程序員則表示,“誰能想到 20 年后你們還在用這一套啊!!”



本文由 PingWest品玩 授權 虎嗅網 發表,并經虎嗅網編輯。轉載此文章須經作者同意,并請附上出處(虎嗅網)及本頁鏈接。原文鏈接:https://www.huxiu.com/article/297369.html
本網站所有文章如無特別注明均為原創。作者: ,復制或轉載請以超鏈接形式注明轉自 浩銘資訊網
原文地址《為什么改元“令和”,竟然成了日本程序員的魔咒?
分享到:更多

相關推薦

留言與評論(共有 0 條評論)
   
驗證碼: