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
330
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
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
110
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
120
“社内”だけで完結していた私が、AWS Community Builder になるまで
nagisa53
1
390
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
430
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
230
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
700
mrubyと micro-ROSが繋ぐロボットの世界
kishima
2
270
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
4
1.7k
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
1.1k
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
240
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
KATA
mclloyd
29
14k
Being A Developer After 40
akosma
90
590k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Making Projects Easy
brettharned
116
6.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Music & Morning Musume
bryan
46
6.6k
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に取り組んで みたい」という⽅は、懇親会でお気軽に声をかけてくださ いな