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
HaskellでIoTやってます/iot_cases_with_haskell
Search
CycloneT
November 09, 2019
Technology
0
320
HaskellでIoTやってます/iot_cases_with_haskell
Haskell JP 2019のLTで話した内容です。
HaskellをWebAPIのバックエンドとしてIT/IoT向けに活用している事例の紹介です
CycloneT
November 09, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
2
1.2k
エンジニアが組織に馴染むために勉強会を主催してチームの壁を越える
ohmori_yusuke
2
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
65k
Azure Developer CLI と Azure Deployment Environment / Azure Developer CLI and Azure Deployment Environment
nnstt1
1
140
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.2k
kintone開発組織のDevOpsへの移り変わりと実践
ueokande
1
170
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.2k
CloudBruteによる外部からのS3バケットの探索・公開の発見について / 20250605 Kumiko Hennmi
shift_evolve
3
240
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
8
950
ローカル環境でAIを動かそう!
falken
PRO
1
170
面接を通過するためにやってて良かったこと3選
sansantech
PRO
0
140
mnt_data_とは?ChatGPTコード実行環境を深堀りしてみた
icck
0
210
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.3k
Typedesign – Prime Four
hannesfritz
41
2.6k
Done Done
chrislema
184
16k
Designing Experiences People Love
moore
142
24k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
1
82
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Optimizing for Happiness
mojombo
378
70k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Transcript
© Upside LLC. HaskellでIoTやってます 2019/11/9 CycloneT (twitter: @cyclone_tr) 1
© Upside LLC. Haskellで仕事をしたい︕ 2 ¤ Twitterで「Haskellで仕事をしたい」というのをたまに (︖)⾒ます ¤ テーマ「Haskellを仕事で使ってるケース」の紹介
¤ もしかしたら参考になるかも︖(ならないかも)
© Upside LLC. ⾃⼰紹介&会社紹介 ¤ ⾃⼰紹介 ¤ 藤原 淳(CycloneT :
@cyclone_tr) ¤ 元々は無線技術が専⾨ ¤ 去年からIoTコンサル会社でIoT⽀援をやってます ¤ Haskell歴は短いです。「型操作完全に理解した」 ¤ 会社紹介 ¤ Upside合同会社 ¤ 社員4⼈(代表+エンジニア2⼈+アシスタント) ¤ IT / IoT⽀援に関することならなんでも
© Upside LLC. Haskellとの出会い ¤ 前の会社(MVNO︓いわゆる「格安SIM」会社)にて、 B2C販売システムをPHPで開発(委託) → バグ対応に苦労した ¤
B2B開発の技術選定中にHaskellを知った → 「コンパイルが通る=ちゃんと動く」 の世界にびっくり ¤ 今の会社でのメイン内製ツールに 「Haskell使わないとスケジュール的にミートしない」
© Upside LLC. プロジェクト⼀覧(2018/5〜2019/11) プロジェクト名 実施場所 ステータス サーバ / フロント
/ エッジ 養殖業⽀援 バリ島(インドネシ ア) 実証実験 Haskell / Elm (⼀部PHP) 浮⿂礁漁⽀援 ⽯垣島(沖縄県) 実装実験 Haskell (Reflex) / GPS受信 機 延縄漁⽀援 ⽯垣島(沖縄県) 実証実験 Haskell (Reflex) ⾷事予約管理 ⼩⾕村(⻑野県) 本運⽤ Haskell / Elm 安否確認 ⼩⾕村(⻑野県) 実証実験 Haslell / Elm / 環境セン サー(Sigfox) インフラの障害検知 ⾸都圏にて検証中 開発 Haskell / Elm / 障害検知セ ンサー(LTE) PCパーツ販売 オンラインサービス 本運⽤ PHP (Laravel) 技術資料ダウンロー ド管理 オンラインサービス 本運⽤ Haskell / Elm
© Upside LLC. Haskellの利⽤パターン ¤ WebAPI(バックエンド) ¤ Servant ¤ Persistent/Esqueleto(他のORMにおきかえるかもし
んない…) ¤ Elm-export(他のものに置き換えしたいが時間が) ¤ Xlsx(エクスポート機能は⼈気) ¤ フロントエンド+バックエンド ¤ Reflex(すいません、まだ何も語れません)
© Upside LLC. 中⼩企業・⾃治体向けのIoT案件 ¤ 実装としては、ある意味「Webアプリ」のような感じ ¤ ユーザは「何が欲しいか」がわからない ¤ 本当に欲しいものを掘り出せるかどうかが勝負
¤ そうなると…. ¤ 機能追加、修正はあたりまえ ¤ リファクタリングをがつがつできないと厳しい ¤ (開き直って)「要求仕様を固めるために実装する」 スタイル ¤ 設計と実装を密結合にしちゃえ〜
© Upside LLC. Haskellを使うメリット ¤ ビジネス的に ¤ 開発速度と品質が両⽴する ¤ 規模が⼤きくなってもしんどくならない
¤ エンジニアリング的に ¤ 皆さんご存じですよね ¤ 個⼈的に ¤ やっぱり楽しい
© Upside LLC. まだいい答えはないですが ¤ Haskellerの採⽤ ¤ 会社の現状としては「実装以外に求められる要素が多 すぎる」 ¤
Haskellを扱う会社を増やす ¤ 今後の活動の⼀環としたい 採⽤とかはともかくとして、「HaskellでIoTに取り組んで みたい」という⽅は、懇親会でお気軽に声をかけてくださ いな