KAZENAKAZENA
記事一覧へ

「今日」は、誰の今日だったのか

2026年8月28日 · Taro(KAZENA代表)

私たちのサーバーは、世界標準時で日付を変えます。ジャカルタとは7時間の差があります。つまり、こちらの午前0時から午前7時までのあいだ、サーバーの中ではまだ前の日が続いています。この7時間に記録された取引は、記録した人にとっては今日のもので、私たちのソフトの中では昨日のものでした。

気づいたのは仲間のEです。彼はジャカルタから少し離れた町にいて、朝が早い。8月11日の朝6時40分に、自分の端末でKAZENA Booksに伝票を1件入れようとして、日付の欄に前の日の日付が入っているのを見つけました。送られてきたのは画面の録画です。彼は日付を打ち直してから保存して、そのあとで、これは自分の端末の時計がずれているのかと聞いてきました。ずれていたのは彼の端末ではありません。

仕組みのほうを書きます。伝票の日付の初期値は、サーバーの現在時刻から作っていました。保存するときの刻印も、同じ時刻から作っています。そして、売上の日次集計が今日と呼んでいる範囲も、同じところから来ていました。3か所が別々に間違えていたのではなく、3か所が同じひとつの出どころを共有していた、というだけの話です。悪いのは出どころではありません。そこから暦の上の日付を作ってしまったことです。

数えました。6月1日から8月20日までに作られた伝票のうち、記録した人の現地時間で0時から7時のあいだに作られたものが613件。そのうち、日付の欄を手で直さずにそのまま保存されたのが488件です。この488件は、帳簿の上で、実際より1日前の日付を持っています。

月をまたいだものが19件ありました。1日の早朝に記録した取引が、前の月の集計に入っています。合計で31,400,000ルピア。年の合計は変わりませんが、月次の合計は変わります。決算の表を月ごとに見ている人には、8月が少なく、7月が多く見えていたことになります。

報告が来なかった理由も書いておきます。日付の欄は編集できます。おかしいと思った人は、その場で打ち直して保存します。直せてしまったものは、不具合として報告されません。自分が打ち間違えたのだと思うからです。使う人が自分を疑って済ませられる不具合は、こちらには一生届きません。

この7時間は、この街では静かな時間ではありません。事務所の近くの通りは5時前から動いていて、bubur ayamの屋台にはもう列ができています。夜通し開けているwarungもあります。私たちがまだ昨日として扱っていたのは、多くの小さな商売にとって、その日のうちでいちばん忙しい時間帯のほうでした。

もうひとつ、根の深い思い違いが下にありました。国から時間帯を決めていたのです。インドネシアには時間帯が3つあります。ジャカルタはWIBで+7、マカッサルはWITAで+8、ジャヤプラはWITで+9。国の設定を読んで+7と決めていた私たちは、東の島で使っている人には、さらに1時間または2時間ぶんの間違いを渡していたことになります。

弁解はしません。時刻をUTCで持つべきだ、というのは間違った考えではありません。私が間違えたのは、その先です。ある瞬間と、暦の上の日付は、別のものです。瞬間は世界のどこでも同じですが、暦日は、見る人が立っている場所で決まります。私はその2つを日付という同じ言葉で呼んで、同じ引き出しに入れていました。

テストは通っていました。自動テストはUTCの正午前後に走っていて、私たちが提供するどの国から見ても同じ暦日に収まる時刻です。境界を一度も越えない場所から、境界を検査していたことになります。いまは時刻を固定しました。23時50分、0時10分、6時59分の3つを、提供している5つの時間帯で回します。合わせて15通りが、毎回動きます。

直しました。帳簿は自分の時間帯を持ちます。国からは初期値を提案するだけで、設定でいつでも変えられます。伝票の日付の初期値も、日次と月次の集計の範囲も、その時間帯の暦日から作ります。保存の刻印はUTCのままです。並び順や記録の追跡に要るのはそちらだからで、人に見せる日付だけを、見る人の側へ寄せました。

すでに保存されている488件は、1件も書き換えていません。日付の欄は編集できる欄です。そこに入っている日付は、最終的にはその人が置いた日付であって、私たちが推測して上書きしてよいものではありません。ただ、月をまたいだ19件については、こちらから連絡して、対象の一覧と、直す場合の手順をお渡ししました。直すかどうかは、その人が決めることです。

念のため書いておきます。私は税理士ではありません。取引の日付は、それがどの申告期間に属するかを決めます。1日の違いが月をまたげば、申告の対象になる月が変わります。心当たりのある方は、月初の早い時間に記録したものを一度確かめてください。最終的な判断は、必ず専門家に確認していただくようお願いします。

いま、コードに今日という言葉が出てくるたびに、私は誰の今日かと一度だけ考えます。サーバーに今日はありません。あるのは、ある瞬間だけです。今日を持っているのは、画面の前にいる人のほうです。もしKAZENAのどこかで、日付が思っていたものと1日ずれていたら、教えてください。あなたの時計は、たぶん合っています。

あなたの声を聞かせてください

KAZENAのアプリを使った感想、直してほしいところ、「こんな機能が欲しい」という提案——インドネシアやフィリピンの中小企業オーナーさん、フリーランスの方の声こそ、私たちが一番聞きたいものです。インドネシア語・英語のメッセージには、現地を知り尽くした仲間が応えます。また、KAZENA Booksはフィリピンとインドネシアでの展開がすでに決まっています。それ以外の国で一緒に展開してくださるパートナー企業様、システムのご購入をご検討の企業様も、お気軽にご連絡ください。新しいシステム開発のご相談もお受けしています。少人数のチームのため、すぐの着手をお約束できないこともありますが——日本品質(メイド・イン・ジャパン)のものづくりで、現地の商売に寄り添う開発を、一件ずつ丁寧に。

お問い合わせへ

他の記事もどうぞ