見出し画像

『うるう!』 エンジニア泣かせの一秒間

2024年2月29日はうるう年! ハイ! 不正解! 正確にはうるう日ですって。うるう年とはうるう日がある時間調整の年を表します。該当年1月1日から12月31日までをうるう年、調整日である2月29日をうるう日と呼ぶらしいです。正直、どっちでもいいよね。
日数の少ない2月に一日追加して29日を設定するんですし、どうせなら2月29日はエクストラステージとか言っちゃって全休みにすればいいんですよ。……ハイ? 社会人にとっては一日余分に働かなければならない日ですと? いわば残業日扱いですって。それはそれはご愁傷様です!
せっかく降って沸いた本来あるはずのない24時間。どうせなら思いっきり無駄に過ごしたいですよね! 2月29日、どんな24時間でしたか? 私はコンビニ各店のおにぎりのごはん粒が何粒あるのか数えて過ごしました! 気が付いたら日が暮れてました。

というわけで葉落々の『哲学シャーク・オブ・ザ・デッド!』の時間がやって来ました!

ネットミームと化したサメのごとくにターゲットを丸呑みする。そこに物理的化学的電気的にサメ意識は存在するのか。それが哲学シャーク!今回の『大學奇譚 葉落々の準備室』は哲学回!「うるう」を哲学シャークします!

さて、うるう年、うるう日、ときたらうるう秒です。うるう秒。標準的な日本時間の中で生活していたらみんなも体感しているはずです。そう。例の午前8時59分60秒の1秒間です!

地球の公転周期は約365.25日です。その半端な0.25日を調整する予備日として(0.25×4=1)四年に一度のうるう日が制定されました。もしもうるう日が存在しなければ、一年の長さが0.25日ズレてしまいます。一年後には約6時間も日の出の時間に誤差が生じて、400年後には夏と冬が入れ替わるレベルで時間がズレてしまうそうです。

地球


宇宙航空研究開発機構(JAXA)の惑星科学者、ジェームズ・オドノヒュー(James O'Donoghue)氏は言いました。

「うるう年はかなり面倒くさいが、これ以上の方法は思いつかない」

うるう日を追加する以外にちょうどいい公転周期時間調整方法のアイディアがあったらJAXAにメールしちゃいましょー!

で、実はうるう年以上にうるう秒はシステムエンジニア泣かせの1秒間なのです。
『うるう秒は午前8時59分60秒とする』と決まっています。世界標準時間と日本標準時間には9時間の時差があるからです。
ここに一秒単位でシステムを動作させる精密なプログラムがあったとします。システムエンジニアの方が血を吐く思いで残業して組み上げたプログラムです。
さあ、午前8時59分頃。ほとんどの仕事場は稼働していることでしょう。ここで問題です。標準時間通りに運営されるシステムに余分な1秒間を付け加えてください。ただし、そのうるう秒である1秒間はいつやってくるかは未定です。1秒の狂いもなくシステムを運営させるにはどうすればいいでしょうか。
もうね、システムエンジニアの方をいじめてるとしか思えませんて。

うるう秒はいつやってくるか決まってません。地球の自転周期に1/60秒レベルでの誤差があるからです。昔は多い年で年に2回もうるう秒が採用されていました。午前8時59分60秒が年に2回もあったのです。しかしその当時はコンピュータシステムもまだ未成熟な段階でそこまで精密な時間制御は必要ありませんでした。

コンピュータ2000年問題とかありましたよね。最近になってからです。その余分な1秒がシステム障害に繋がるリスクがある、と問題視されたのは。今では数年に一度あるかないか。それぐらいまで秒単位でのうるう秒調整は行われていません。

直近では2017年1月1日8時59分60秒が最後のうるう秒でした。それ以降、うるう秒は採用されていません。そして国際電気通信連合(ITU)は2035年までにうるう秒を原則廃止すると決定しました。次回うるう秒は2024年現在も未定のままです。一部のシステムエンジニアたちはほっと胸を撫で下ろしました、とさ。

いつ実施されるか決まっていない不安定な1秒間。ロマンあるわー。

うるう秒。哲学的に解釈すれば一般生活にはまったく影響ないけれども、エンジニアを困らせるには十分な働きがある1秒間ってとこですね。

さて、ここでゲームスクリプトエンジニアを目指す人に宿題です。
スーパーうるう年ってのがあるみたいです。
うるう年は4で割り切れる年。かつ、100で割り切れる年はうるう年の採用なし。かつ、400で割り切れる年はうるう年採用。っていううるう年ルールがあります。

その100で割り切れて、かつ400で割り切れる年がスーパーうるう年だそうです。直近では2000年。次回は西暦2400年。さすがに死んでるだろうけど。
さて、うるう年の計算式をC#言語でスクリプト組んでみましょう!
うるう年はエンジニアを困らせて、プログラミング初心者を成長させる教材なのです!

葉落々の話を楽しく読めたって人はぜひぜひ『スキ♡』ボタンのクリック、ブログ記事のシェア、そしてnoteのフォローお願いします!
ご意見、ご感想ありましたら「X」にて#大學奇譚、#月見葉落々で一言コメントお願いします! 葉落々でした! 

この記事が気に入ったらサポートをしてみませんか?