アカウント名:
パスワード:
「昭和xx年」と表示する帳票を作るソフトを作成した後、会社が倒産。 で、天皇崩御後、客先から直接連絡が来た。
倒産時にソースコードが失われていたため、プログラムの修正が不可能だけど、ソフトウェアは使いつづけたいと言われた。 結局、年号が単調増加しないとうまく動かなかった仕様だったので、「昭和71年」と表示するように帳票を作成してもらい、「昭和7」のぶぶんをホワイトで消して、上から「平成」と手書きで書いてくれと頼んだ。
そういえば、学生の頃の社会科の教科書の未来の人口増加グラフなんて平気で昭和100年とか書いてましたね。大人しく西暦とか皇紀にしておけばよかったものを・・・
そこで2000年問題ですよ。その辺の設計思想でうんぬんってのは、別に洋の東西を問わない。
perlの古いバージョンで、2桁表示の西暦で99年の次が100年になって云々なんて話、今の若もんにゃわからんのだろうなー。perl製の各種掲示板プログラムで多々こういう問題が出てのう.......(以下じじいは退散)#素でとうのようざいを問わないと入力して変換できずに悩んでしまったアレですがナニか
Perlはバージョンにかかわらず、そのような仕様です。
いや、全然 perl に限った話ではありません。
C言語の標準ライブラリ関数 localtime などは、標準ライブラリ関数 time が返す「エポック秒」を、年月日時分秒な構造体に変換する関数なのですが、その tm_year は、「西暦から1900を引いた数を表す」という仕様になってます。(「西暦を2桁表現したもの」からその仕様を保ちつつ2000年対応した結果ですね)
そのため、perl に限らず、古くから存在する「言語環境」なんかでは、この仕様をそのまま受け継いでいるものが多いです。perl は、perl -e 'print ((localtime)[5])' で 109 が表示されますし。、JavaScript でも、javascript:alert((new Date()).getYear()); は 109 と表示されます。phpは、新しいだけあって、ちゃんと2009が返ってきますね。
rubyもTime.new.yearでは2009が返ってきます。
perlは正にstruct tm;の影響でしょうね。
perlの古いバージョンで、2桁表示の西暦で99年の次が100年になって云々なんて話、今の若もんにゃわからんのだろうなー。perl製の各種掲示板プログラムで多々こういう問題が出てのう.......(以下じじいは退散)
その話でPrelを出してくるなんて、若いなあ。なーにが「じじい」だ、青二才が(笑)。
確かに、私はまだ手元がふるえたり目がかすんだりしていない、はな垂れ小僧のようです。ということで、まだまだ働けるらしいので仕事場に戻るお......#すいません
> その話でPrelを出してくるなんて、若いなあ。ぷれる?
某大学の学籍番号は、最初の2文字が、西暦2000年以前は、97, 98, 99のように西暦の下2桁でした。そして2000年以降は、A0, A1, ...のようになりました。恐らく、来年度はB0になります。
Z9の後、どうなるのか気になるんだけど、俺は生きてないだろうなぁ……
某大学の学籍番号は、「学部・学科コード3桁」「チェックデジット1桁」「入学年和暦の下1桁」「その学年での通し番号3桁」の8桁でした。昭和から平成になったころ、昭和63年入学の「XXXY3nnn」と、平成3年入学の「XXXY3nnn」で、同じ学籍番号の学生が存在するってのがありました。
学籍番号が全然主キーとして使えない…
通常は、大学に在籍できる期間は8年までなので問題なかったんでしょうけどねぇ。でも、年号が変わらなくても、休学すれば10年超えられるよなぁ…
ここで、イケてない回避策としては、「10年ごとに学科再編して、過去とカブらない学科コードを割り当ててください」って方法を推します。
それは非常に難しい問題です。
もちろん、最初から西暦や皇紀にしておくのが正解だったのでしょう。
しかし、初めに誰かが原稿に「昭和100年」と書いてしまった以上、それを訂正させるための理由は極めて不敬に当たるので、誰もそれを声に出して指摘できなかったというのが真相ではないでしょうか。
ギャグとしてはおもしろいけど、そう評価するのは極めて不敬にあたるので、その推測はマジレスとして捉えざるをえない。
そんな真相があるわけないだろ。
今風にいえばServletFilterですな。UNIX風ならPipeline
なんだかなあ。
私は某大学院に平成元年に入学しました。# 受験の時はもちろん昭和64年度入学が前提でしたよ。先日ある件で必要となって成績証明を取ったところ機械化されたためか「平成1年入学」と記載されていました。
同様のケースに対し、・元のプログラム・バイナリエディタで「昭和」→「平成」置き換え後、入力年値を全て-63するように修正の2種類を使い分けてくれと頼んだ
天皇の生死で時代の区切りを作ろうなんて、ドンダケ個人崇拝なんだか。
そう言うあなたがご推薦の西暦だって、イエス・キリストの誕生で時代の区切りを作ってるわけで、個人崇拝と無関係ではないね。
これじゃ北朝鮮のコトを笑えない。
別の方向から笑われそうだよ。紀元節なら納得する?
エポック秒使えってことだろ。
#1970年より前は使えないか・・・
エポック秒を使ったところで、西暦に依存していて、それがイエス・キリスト紀元であることに何ら違いは無いね。
新エポック秒的なものを作って、新エポック秒を新エポック秒が出来たときを基準にすれば、Geek好みなものが出来る気がする。
新エポック秒を新エポック秒が出来たときを基準にすれば
誰が作るの?それは個人崇拝につながらないの?
だいたい、暦なんてのは、たくさんの人に使われてナンボのもんなんだから、新しく提案するなんてのは、提案者が創造主とか皇帝とかでもない限り、大した意味は無いよ。だとすると、個人崇拝を必要以上に問題視しても、意味の無い結論にしか行き着かない。
Internet Time [timeanddate.com]ってのもあった(ある?)なあ。
2001年に星新一メソッドで改元しておけば999年間は安泰だったのになあ。
暦号を「ニセン」って読みの号にして、以降固定ってやつでしたっけ。
そうそう。
で、件の帳票ですが、税務署に出すものだったんです。 行政へ提出する書類の日付の記述方法に関する法律を変えてくださるのがイケてる回避策でしょうね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stableって古いって意味だっけ? -- Debian初級
平成 (スコア:1, 参考になる)
「昭和xx年」と表示する帳票を作るソフトを作成した後、会社が倒産。 で、天皇崩御後、客先から直接連絡が来た。
倒産時にソースコードが失われていたため、プログラムの修正が不可能だけど、ソフトウェアは使いつづけたいと言われた。 結局、年号が単調増加しないとうまく動かなかった仕様だったので、「昭和71年」と表示するように帳票を作成してもらい、「昭和7」のぶぶんをホワイトで消して、上から「平成」と手書きで書いてくれと頼んだ。
Re:平成 (スコア:1)
10年前は昭和表示でしたが.......
昭和100年まで使えるかも(笑
------------
惑星ケイロンまであと何マイル?
Re: (スコア:0)
そういえば、学生の頃の社会科の教科書の未来の人口増加グラフなんて平気で昭和100年とか書いてましたね。
大人しく西暦とか皇紀にしておけばよかったものを・・・
Re:平成 (スコア:2)
そこで2000年問題ですよ。その辺の設計思想でうんぬんってのは、別に洋の東西を問わない。
perlの古いバージョンで、2桁表示の西暦で99年の次が100年になって云々なんて話、今の若もんにゃわからんのだろうなー。
perl製の各種掲示板プログラムで多々こういう問題が出てのう.......(以下じじいは退散)
#素でとうのようざいを問わないと入力して変換できずに悩んでしまったアレですがナニか
Re:平成 (スコア:2)
Perlはバージョンにかかわらず、そのような仕様です。
HIRATA Yasuyuki
Re: (スコア:0)
Javascriptか何かで「西暦-1900」を返してるの無かったっけ?
単純に「+1900」して使えば2000年を超えても問題無いのに、
下2桁だと勘違いして「'19'+」で表示してると、
2000年が19100年になってしまうとか。
Re: (スコア:0)
Re:平成 (スコア:2, 興味深い)
いや、全然 perl に限った話ではありません。
C言語の標準ライブラリ関数 localtime などは、
標準ライブラリ関数 time が返す「エポック秒」を、年月日時分秒な構造体に変換する関数なのですが、
その tm_year は、「西暦から1900を引いた数を表す」という仕様になってます。
(「西暦を2桁表現したもの」からその仕様を保ちつつ2000年対応した結果ですね)
そのため、perl に限らず、古くから存在する「言語環境」なんかでは、
この仕様をそのまま受け継いでいるものが多いです。
perl は、perl -e 'print ((localtime)[5])' で 109 が表示されますし。、
JavaScript でも、javascript:alert((new Date()).getYear()); は 109 と表示されます。
phpは、新しいだけあって、ちゃんと2009が返ってきますね。
Re:平成 (スコア:1)
rubyもTime.new.yearでは2009が返ってきます。
perlは正にstruct tm;の影響でしょうね。
Re: (スコア:0)
その話でPrelを出してくるなんて、若いなあ。
なーにが「じじい」だ、青二才が(笑)。
Re:平成 (スコア:2)
確かに、私はまだ手元がふるえたり目がかすんだりしていない、はな垂れ小僧のようです。
ということで、まだまだ働けるらしいので仕事場に戻るお......
#すいません
Re: (スコア:0)
> その話でPrelを出してくるなんて、若いなあ。
ぷれる?
Re:平成 (スコア:1)
某大学の学籍番号は、最初の2文字が、西暦2000年以前は、97, 98, 99のように西暦の下2桁でした。
そして2000年以降は、A0, A1, ...のようになりました。恐らく、来年度はB0になります。
Z9の後、どうなるのか気になるんだけど、俺は生きてないだろうなぁ……
1を聞いて0を知れ!
Re:平成 (スコア:1)
某大学の学籍番号は、「学部・学科コード3桁」「チェックデジット1桁」「入学年和暦の下1桁」「その学年での通し番号3桁」の8桁でした。
昭和から平成になったころ、
昭和63年入学の「XXXY3nnn」と、平成3年入学の「XXXY3nnn」で、
同じ学籍番号の学生が存在するってのがありました。
学籍番号が全然主キーとして使えない…
通常は、大学に在籍できる期間は8年までなので問題なかったんでしょうけどねぇ。
でも、年号が変わらなくても、休学すれば10年超えられるよなぁ…
Re:平成 (スコア:1)
チェックデジットの計算方法に元号と十の桁が使われていると少しはごまかしが効きそうですが......
チェックデジットとしての機能が低下するか
------------
惑星ケイロンまであと何マイル?
Re:平成 (スコア:2)
ここで、イケてない回避策としては、
「10年ごとに学科再編して、
過去とカブらない学科コードを割り当ててください」
って方法を推します。
Re: (スコア:0)
> でも、年号が変わらなくても、休学すれば10年超えられるよなぁ…
復学時等に番号を再交付するのが当初意図されていた運用で、
それがちゃんと引き継がれなかったのでは無かろうか?
Re:平成 (スコア:1)
Re: (スコア:0)
それは非常に難しい問題です。
もちろん、最初から西暦や皇紀にしておくのが正解だったのでしょう。
しかし、初めに誰かが原稿に「昭和100年」と書いてしまった以上、
それを訂正させるための理由は極めて不敬に当たるので、
誰もそれを声に出して指摘できなかったというのが真相ではないでしょうか。
Re: (スコア:0)
ギャグとしてはおもしろいけど、
そう評価するのは極めて不敬にあたるので、
その推測はマジレスとして捉えざるをえない。
そんな真相があるわけないだろ。
Re:平成 (スコア:1, 興味深い)
元号が変わる対応を開発するなんて不敬に当たるからでしょうかね^_^;
Re: (スコア:0)
西暦もそう。「4桁にしときましょう」って言ってた。
#そうでないものを見すぎていたせいでもあるが
Re:平成 (スコア:1, 興味深い)
Re: (スコア:0)
今風にいえばServletFilterですな。
UNIX風ならPipeline
なんだかなあ。
Re: (スコア:0)
Re:平成 (スコア:1)
私は某大学院に平成元年に入学しました。
# 受験の時はもちろん昭和64年度入学が前提でしたよ。
先日ある件で必要となって成績証明を取ったところ機械化された
ためか「平成1年入学」と記載されていました。
Re: (スコア:0)
同様のケースに対し、
・元のプログラム
・バイナリエディタで「昭和」→「平成」置き換え後、入力年値を全て-63するように修正
の2種類を使い分けてくれと頼んだ
Re: (スコア:0)
「イケてない回避策」
じゃないのか?
年月日を表現するなら全部西暦に統一してしまえば済む話を、
こんな小手先のゴマカシをするから、あと20年くらいすれば、
天皇が死んで同じようなドタバタを起こすんだ。
天皇の生死で時代の区切りを作ろうなんて、ドンダケ個人崇拝なんだか。
これじゃ北朝鮮のコトを笑えない。
Re:平成 (スコア:1)
天皇の生死で時代の区切りを作ろうなんて、ドンダケ個人崇拝なんだか。
そう言うあなたがご推薦の西暦だって、イエス・キリストの誕生で時代の区切りを作ってるわけで、個人崇拝と無関係ではないね。
これじゃ北朝鮮のコトを笑えない。
別の方向から笑われそうだよ。
紀元節なら納得する?
Re: (スコア:0)
エポック秒使えってことだろ。
#1970年より前は使えないか・・・
Re:平成 (スコア:1)
エポック秒使えってことだろ。
エポック秒を使ったところで、西暦に依存していて、それがイエス・キリスト紀元であることに何ら違いは無いね。
Re:平成 (スコア:2)
新エポック秒的なものを作って、
新エポック秒を新エポック秒が出来たときを基準にすれば、
Geek好みなものが出来る気がする。
Re:平成 (スコア:1)
新エポック秒を新エポック秒が出来たときを基準にすれば
誰が作るの?それは個人崇拝につながらないの?
だいたい、暦なんてのは、たくさんの人に使われてナンボのもんなんだから、新しく提案するなんてのは、提案者が創造主とか皇帝とかでもない限り、大した意味は無いよ。
だとすると、個人崇拝を必要以上に問題視しても、意味の無い結論にしか行き着かない。
Internet Time [timeanddate.com]ってのもあった(ある?)なあ。
Re:平成 (スコア:1)
2001年に星新一メソッドで改元しておけば999年間は安泰だったのになあ。
Re: (スコア:0)
暦号を「ニセン」って読みの号にして、以降固定ってやつでしたっけ。
Re:平成 (スコア:1)
そうそう。
Re: (スコア:0)
あなたは昭和の人間ね。
Re: (スコア:0)
で、件の帳票ですが、税務署に出すものだったんです。 行政へ提出する書類の日付の記述方法に関する法律を変えてくださるのがイケてる回避策でしょうね。