Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AIが無かった頃の素敵な出会いの話
Search
コドモン開発チーム
July 20, 2026
Programming
49
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIが無かった頃の素敵な出会いの話
コドモン開発チーム
July 20, 2026
More Decks by コドモン開発チーム
See All by コドモン開発チーム
5分で問診!Composer セキュリティ健康診断
codmoninc
0
250
アラート疲れからの脱却 - リソースタグで仕分けるSlack通知戦略 / Breaking Free from Alert Fatigue – A Slack Notification Strategy Using Resource Tags for Routing
codmoninc
0
34
SREに優しいTerraform構成 modulesとstateの組み方 / terraform-modules-state-for-sre
codmoninc
0
360
モノリスなプロダクトの「ほどよい」リプレイス戦略 / A "Just Right" Replacement Strategy for Monolithic Products
codmoninc
0
130
Don't Just Patch — MOTTAINAI! Learn Security from Laravel CVE Diffs
codmoninc
0
240
ソースコードで比較する React / Vue / Svelte の セキュリティ設計思想 / security design philosophy react vue svelte
codmoninc
5
640
少人数SREチームが、長寿なシステムを構築・運用するための取り組み / Efforts by a Small SRE Team to Build and Operate Long-Lived Systems
codmoninc
0
350
フルリモートのその先へ〜パパね、いつも家にいるけどちゃんとこうして働いてるよ〜 / Beyond Full Remote
codmoninc
0
660
多様な働き方を支えるチーム開発カルチャーと 今後の展望 / Team Development Culture Supporting Diverse Workstyles and Future Outlook
codmoninc
0
560
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
850
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
520
霧の中の代数的エフェクト
funnyycat
1
390
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
120
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
190
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
420
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
190
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
4.3k
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.5k
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
770
Code Reviewing Like a Champion
maltzj
528
40k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
510
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
380
Designing for Timeless Needs
cassininazir
1
360
We Have a Design System, Now What?
morganepeng
55
8.2k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
HDC tutorial
michielstock
2
740
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
190
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Transcript
AIが無かった頃の 素敵な出会いの話 株式会社コドモン 松浦 康介
※先にご案内※ 5分ギリギリなので 早口です🙏 2
いやはや AI時代ですね 3
Github Copilotの登場は 2021年 4
ChatGPTの登場は 2022年 5
ここ4年ですごく浸透 6
今日はAI時代の前の ノスタルジーな話 7
さて、それは何年前の話? 8
今から遡ること 9
444年前の話 10
1582年 11
時は戦国 12
安土桃山時代 13
1582年の 有名な出来事 14
本能寺の変 (1582年6月21日) 15
1582年6月 歴史が変わった 16
この年の10月 17
暦史も変わった 18
ここでクイズ 19
1582年10月4日の翌日は? 20
1582年 Q. 10月4日の翌日は? A. 10月15日(+11日) 21
123 4 5 6 7 8 9 10 11 12
13 14 15 10日間くらい スキップされてる 22
1582年は 10月5日〜14日 存在しないらしいです 23
ウソみたいな真実 24
え?何言ってるの? って感じですよね? 25
でも本当なのです 26
何が起きたか 27
当時使われていた ユリウス暦から 28
現行のグレゴリオ暦に 変わった 29
ユリウス暦はうるう年の 考慮がやや弱く 30
実世界と暦が10日間くらい ズレてしまっていた 31
例: 夏至とか冬至の日付と 実世界の明るさがズレちゃう (あくまでイメージとして) 32
グレゴリオ暦では うるう年の扱いを改善する 33
ユリウス暦→グレゴリオ暦 に変えよう in 1582年 34
by グレゴリウス13世 35
変えるにあたって すでに約10日ズレいる 36
まあ、省いちゃおう (強気の運用回避) 37
みたいな流れらしい 38
ちなみに 39
うるう年の判定 40
as 隠れ Hello World (みんな一度は通るのでは?) 41
覚えてますか? スラスラ言えちゃう? 42
(私は言えない) 43
西暦年号が 1. 4で割り切れること 2. ただし、100で割り切れて 400で割り切れない年は平年 44
一般解 45
function isLeapYear($year) { // 「4の倍数かつ100の倍数でない」 // または「400の倍数」なら true return (
($year % 4 === 0 && $year % 100 !== 0) || $year % 400 === 0 ); } 46
実はこれ、 現行のグレゴリオ歴での うるう年の定義 47
ユリウス暦の判定は シンプル 48
function isLeapYear($year) { // 「4の倍数かつ100の倍数でない」 // または「400の倍数」なら true return (
($year % 4 === 0 && $year % 100 !== 0) || $year % 400 === 0 ); } 49
function isJulianLeapYear($year) { // 4の倍数はうるう年 return $year % 4 ===
0; } 50
4で割り切れたらうるう年 という割り切り 51
でも実運用上のズレは 割り切りにくい 52
そのズレを抑える例外が グレゴリオ暦では追加 53
ユリウス暦(4の倍数) + いくつかの修正(例外) = グレゴリオ暦 54
みたいなイメージ (コード上は) 55
ここから小話 56
私がなぜこれを知ったか 57
私のキャリアが始まった 2009年(グレゴリオ暦) 58
Javaを勉強 JavaDocとか色々読んでた (PHPじゃなくてごめんね) 59
日付関連のパッケージで 偶然訪れた素敵な出会い 60
java.util.Calendar setLenient(boolean) 61
Lenient means 寛容 62
setLenient(true) 不正な日付を黙って繰上げ補正 (ちなみにデフォルト動作) 63
setLenient(false) 不正な日付で IllegalArgumentException 64
「不正な日付」とは? 65
うるう年 ◯2028年2月29日 ×2029年2月29日 66
存在しない日付 ◯2026年7月31日 ×2026年7月32日 67
存在しない日付2 ユリウス暦とグレゴリオ暦の狭間 ×1582年10月5〜14日 68
これを「暦狭間の戦い」と言う (言わない) 69
この暦の「狭間」の話 70
PHPでの暦の扱いは? 71
基本、寛容らしい 72
checkdate() 73
1582年10月5〜14日の 存在しない日付 →許容(優しい) 74
グレゴリオ歴の仕様上は◯ その運用実績としては△ 75
こういうことなのかな (正確じゃない、ごめんね) 76
これはAIに聞いた (誠実であろう) 77
ちなみにグレゴリオ暦も 完璧じゃなく、ズレるらしい 78
実際の1年(太陽年) 約365.2422日 365.0日ではない 79
「1年」の長さ 天文学的な1年 (太陽年) 約365.2422日 0.2422日の端数 ユリウス暦 平均365.2500日 約11分長い グレゴリオ暦 平均365.2425日
約26秒長い 80
1年あたり26秒ズレ 81
どうやら 約3300年に1日ズレるらしい 82
つまり、今から1274年後の 西暦3000年 83
現行グレゴリオ歴と実世界は 1日ズレる 84
その日まで 共に長生きしましょう 85
西暦年号が 1. 4で割り切れること 2. ただし、100で割り切れて 400で割り切れない年は平年 3. 4000で割り切れる年は平年 86
うるう年の判定に 条件を追加する案もあるらしい 87
が、まだ実現していない 88
なぜなら、 1000年以上も先のこと 89
かつ、 地球の自転速度も関係する 90
ちなみに、地球の自転は 少しずつ遅くなっているらしい (1000年後の予測が難しい) 91
つまり、自然現象の話と 制度としての暦の話があり 現時点で決めにくい 92
AIに聞いても答えが出ない系 面白いですね〜 93
そしてうるう年の話は 「AIに答えを聞く」じゃ 辿り着きにくい系 94
これで私の話は おしまいなのですが 95
デフォルトで「寛容」な みなさんへ改めてお願い 96
ここまでの話、 間違いがあるかもしれないので 97
setLenient(true) //寛容 98
とご理解いただけると ありがたいです 99
なにとぞ 🙏 100
さて、 地球(自転)を取り巻く環境も 大切ですが 101
子どもたちを 取り巻く環境も大切 102
私はそういう思いが強く そういう会社にいます 103
お時間あれば スポンサーブースに ぜひお越しください 104
ありがとうございました 105
None