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
Elixirで祝日が欲しかった……
Search
arumi8go
September 07, 2017
Technology
0
1.3k
Elixirで祝日が欲しかった……
第三回SpeeeKaigiの発表資料
arumi8go
September 07, 2017
Tweet
Share
Other Decks in Technology
See All in Technology
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
180
Kotlinで型安全にバイテンポラルデータを扱いたい! ReladomoラッパーをAIと実装してみた話
itohiro73
3
290
ソフトウェア品質を支える テストとレビュー再考 / 吉澤 智美さん
findy_eventslides
1
740
LLM APIを2年間本番運用して苦労した話
ivry_presentationmaterials
11
10k
어떤 개발자가 되고 싶은가?
arawn
1
460
サブドメインテイクオーバー事例紹介と対策について
mikit
16
7.7k
AI時代におけるドメイン駆動設計 入門 / Introduction to Domain-Driven Design in the AI Era
fendo181
0
470
戦えるAIエージェントの作り方
iwiwi
23
11k
こんな時代だからこそ! 想定しておきたいアクセスキー漏洩後のムーブ
takuyay0ne
3
340
2025 DHI Lightning Talks
digitalfellow
0
110
ソフトウェアテストのAI活用_ver1.50
fumisuke
0
220
Amazon Q Developer CLIをClaude Codeから使うためのベストプラクティスを考えてみた
dar_kuma_san
0
360
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
RailsConf 2023
tenderlove
30
1.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
960
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Transcript
Elixirで祝⽇が欲しかった……
⾃⼰紹介 • ⼭浦 航/@arumi8go • Elixir歴: ⼀週間と少し • ウデマエ: B
• 最近の悩み • ⼀年に⼀回彼⼥に振られかける事
Elixirって? • ErlangのBEAM (Erlang VM)と呼ばれる仮想環境で動作する • Erlangの関数を呼び出せる • 関数型 •
並⾏処理機能 • ⾼い耐障害性 • Ruby界隈でも有名なJosé Valim⽒が開発 • Rubyistがとっつきやすくなっている • While⽂がなく再帰処理で表現する
本題
Elixir⽤のライブラリーをHex に公開しました!!
None
なんぞこれ • ⽇本の祝⽇を取得したり祝⽇かどうか判断したりするライブラ リィィィ • Build toolは Mix • 超クソコード
• なんちゃってメンテナンスフリー(後で詳しく)
なんでこんなもん作ったの? • Elixirの勉強の為 • 勉強の成果として残せるものが作りたかった • ⼀国⼀城の主になりたかった • 祝⽇取得ライブラリが少なかったので⼈の⽬に触れる機会が多 いかも?
出来ること > HolidayJapan.holiday? ~D[2017-05-04] :true > HolidayJapan.name ~D[2017-05-04] ”みどりの⽇”
仕組み • 処理しやすい形に整形した祝⽇データをJSONで所持 • そのJSONを読み込んで検索を⾏う
なんちゃってメンテナンスフリー • メインの処理の改修とかリファクタはやる気が起きるが何年に ⼀回しか更新されない祝⽇データの更新が⾯倒 • なのでできるだけ頑張らずに変更を感知し更新する処理を作成
ぼくのかんがえた(ry 祝⽇データを公開 してくださってい る外部サイト様 HolidayJapan HolidayJapanUpdate(escript) Docker or Server or
Mac 祝⽇定義file更新
まるまるシェルスクリプトに 祝⽇データを公開 してくださってい る外部サイト様 HolidayJapan HolidayJapanUpdate(escript) Docker or Server or
Mac 祝⽇定義file更新 Update.sh
定期実⾏ • ⽉⼀実⾏ • 省エネでMacのcronに任せる形に……
送られてくるPRが此⽅ こちら
作られたPRの差分を確認してmergeするだけ!
これで忘れた頃にPRが作られるはず!
今後の⽬標 • クソコードを綺麗にして、どこに出しても恥ずかしくないよう にする • Elixirのcalendarクラスとよしなに何かできないか模索 • 祝⽇データの取得をGoogle Calendarから⾏うように変更 •
⽬指せメジャーバージョン
ご清聴有難うございました!