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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
コドモン開発チーム
July 20, 2026
Programming
420
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 コドモン開発チーム
AI時代のPHP開発にASTクエリツール で コードベースの地図を作る / ast-query-tool-php-codebase-map
codmoninc
0
57
コネクションをピン留めさせずに SELECTクエリのタイムアウトを設定した話
codmoninc
0
71
コドモンに入社してAI活用により、 設計がより重要だと感じた背景
codmoninc
0
83
実装・設計だけでなく、運用・保守にもAIを広げてみた / We Took AI Beyond Coding and Into Operations and Maintenance
codmoninc
0
74
5分で問診!Composer セキュリティ健康診断
codmoninc
0
970
アラート疲れからの脱却 - リソースタグで仕分けるSlack通知戦略 / Breaking Free from Alert Fatigue – A Slack Notification Strategy Using Resource Tags for Routing
codmoninc
0
46
SREに優しいTerraform構成 modulesとstateの組み方 / terraform-modules-state-for-sre
codmoninc
0
400
モノリスなプロダクトの「ほどよい」リプレイス戦略 / A "Just Right" Replacement Strategy for Monolithic Products
codmoninc
0
310
Don't Just Patch — MOTTAINAI! Learn Security from Laravel CVE Diffs
codmoninc
0
270
Other Decks in Programming
See All in Programming
Building a Meta Ray-Ban display app
akkeylab
0
110
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
170
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.6k
Cloudflare is Agents
chimame
0
160
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
550
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
270
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
220
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
900
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
110
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Making the Leap to Tech Lead
cromwellryan
135
10k
We Have a Design System, Now What?
morganepeng
55
8.3k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
240
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
460
Measuring & Analyzing Core Web Vitals
bluesmoon
9
950
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
790
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
330
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