@hoto17296
• Bot 職人
あいさつしてくれる Bot
家計を管理してくれる Bot
家電を操作してくれる Bot
• 「明日6時に起こして」と言うと次の日の

朝6時に照明とテレビが点く
• 帰る前に「エアコンつけて」と言うと

家についたときに部屋が涼しい
趣きのある Bot
二十四節気
• 季節を 24 に区切ったもの
• それぞれの節気について「暦便覧」に

書き記されている
2015年の二十四節気
節月 節(せつ) 中(ちゅう)
春
1月 立春 (2月4日) 雨水 (2月19日)
2月 啓蟄 (3月6日) 春分 (3月21日)
3月 清明 (4月5日) 穀雨 (4月20日)
夏
4月 立夏 (5月6日) 小満 (5月21日)
5月 種 (6月6日) 夏至 (6月22日)
6月 小暑 (7月7日) 大暑 (7月23日)
秋
7月 立秋 (8月8日) 処暑 (8月23日)
8月 白露 (9月8日) 秋分 (9月23日)
9月 寒露 (10月8日) 霜降 (10月24日)
冬
10月 立冬 (11月8日) 小雪 (11月23日)
11月 大雪 (12月7日) 冬至 (12月22日)
12月 小寒 (1月6日) 大寒 (1月20日)
二十四節気を
Bot に知らせてもらおう
え、それって
特定の日付に投稿するように
設定すればいいだけでは?
('ω'メ) No.
二十四節気の日付は
毎年変わります
公転軌道 と 黄経
春分点 ( 0 )
近日点遠日点
太陽
地球
黄経
二十四節気と黄経
節月 節(せつ) 中(ちゅう)
春
1月 立春 ( 315 ) 雨水 ( 330 )
2月 啓蟄 ( 345 ) 春分 ( 0 )
3月 清明 ( 15 ) 穀雨 ( 30 )
夏
4月 立夏 ( 45 ) 小満 ( 60 )
5月 種 ( 75 ) 夏至 ( 90 )
6月 小暑 ( 105 ) 大暑 ( 120 )
秋
7月 立秋 ( 135 ) 処暑 ( 150 )
8月 白露 ( 165 ) 秋分 ( 180 )
9月 寒露 ( 195 ) 霜降 ( 210 )
冬
10月 立冬 ( 225 ) 小雪 ( 240 )
11月 大雪 ( 255 ) 冬至 ( 270 )
12月 小寒 ( 285 ) 大寒 ( 300 )
二十四節気の日付は
黄経によって決まるので
毎年微妙に違う
つまり
この機能を実装するためには
「今日の年月日」
から
「今日の黄経」
を求めれれば
いいわけですね
必要なパラメータ
• 地球の公転周期
• 365.242190402 日 (太陽年)
• 2015 年の春分点
• 3月20日 22時45分 (UT)
• 地球の公転軌道の離心率
• 0.0167
ケプラーの第二法則 (面積速度一定の法則)
いろいろがんばった
(解説略)
現在の日付から黄経を求める
node モジュールが完成
あとはテキトーに
Hubot に組み込んで
ごにょごにょやる
すると
Bot が二十四節気を知らせてくれる
とても趣きがある
ところでみなさん
お気づきでしょうか
「それって、先20年くらいの
二十四節気の日付をググって
リスト化して参照すれば
計算しなくてもよくね?」
( ◠◠ )☛ 気付いてしまったか
▂▅▇█▓▒░( ω )░▒▓█▇▅▂
うわああああああ
それなりの労力をかけて
特に便利でもない機能を
わざわざ面倒くさい方法で
開発するの、最高に無駄
だがそれがいい
生産性を極めた先に
クリエイティビティはない
つまらない無駄は
徹底的に効率化して
おもしろい無駄に
全力を注ごう
エンジニアの生き方って
そういうものだと思う
参考
• こよみのページ
• 太陽の黄経と地心距離
• 面積速度一定の法則と春分・秋分
• 二十四節気 - Wikipedia
• 春分点 - Wikipedia

趣きのある Bot