Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AIが無かった頃の素敵な出会いの話
Search
コドモン開発チーム
PRO
July 20, 2026
Programming
610
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIが無かった頃の素敵な出会いの話
コドモン開発チーム
PRO
July 20, 2026
More Decks by コドモン開発チーム
See All by コドモン開発チーム
夫婦で子育てするための育児標準化
codmoninc
PRO
0
330
関数型プログラミングに出会って考え方の幅が広がった話 / server_side_kotlin_meetup_20_functional_fujimura
codmoninc
PRO
0
16
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
860
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
420
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
640
「正解の仕様」を求めて、決断する
codmoninc
PRO
0
99
AI時代のPHP開発にASTクエリツール で コードベースの地図を作る / ast-query-tool-php-codebase-map
codmoninc
PRO
0
480
コネクションをピン留めさせずに SELECTクエリのタイムアウトを設定した話
codmoninc
PRO
0
480
コドモンに入社してAI活用により、 設計がより重要だと感じた背景
codmoninc
PRO
0
150
Other Decks in Programming
See All in Programming
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
残高管理から台帳サービスへの進化
artoy
1
200
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
1k
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
phperだってパンチカードでコーディングしたい
o0h
PRO
0
330
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
790
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.2k
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
110
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
120
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Practical Orchestrator
shlominoach
192
12k
Optimizing for Happiness
mojombo
378
71k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
320
Speed Design
sergeychernyshev
33
2.2k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
820
Believing is Seeing
oripsolob
1
240
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Ethics towards AI in product and experience design
skipperchong
2
430
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
Navigating Weather and Climate Data
rabernat
0
560
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