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
Crystalで殺せ
Search
さっちゃん
November 29, 2016
Programming
0
840
Crystalで殺せ
Crystalで作る簡單インタラクティブCUI。Crystalで面倒臭い作業を殺せ
さっちゃん
November 29, 2016
Tweet
Share
More Decks by さっちゃん
See All by さっちゃん
みんなのオブザーバビリティプラットフォームを作ってるんだがパフォーマンスがやばい #mackerelio #srenext
ne_sachirou
0
1.6k
作ってよかったgraceful shutdownライブラリ #kyotogo
ne_sachirou
0
1.4k
path 依存型って何?
ne_sachirou
0
780
野生の onbording と onbording 設計 #kyototechtalk
ne_sachirou
0
690
メトリックはいかにして見え續ける樣になったか #devio2022
ne_sachirou
0
120
名實一致
ne_sachirou
0
720
まかれるあなとみあ ―Mackerel のしくみを理解する 30 分― @ Hatena Engineer Seminar #16
ne_sachirou
0
3.2k
tacit programming : Point-free, Concatenatives & J
ne_sachirou
0
1.1k
Monitoring Containerized Elixir
ne_sachirou
1
1.1k
Other Decks in Programming
See All in Programming
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.6k
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
170
[SF Ruby Feb'26] The Silicon Heel
palkan
0
120
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
170
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
500
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
130
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
410
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
1.6k
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
20260315 AWSなんもわからん🥲
chiilog
2
170
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
500
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
500
Featured
See All Featured
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
75
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.2k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
52k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
The Spectacular Lies of Maps
axbom
PRO
1
630
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
980
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
For a Future-Friendly Web
brad_frost
183
10k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Crystalで殺せ
.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)
⾯倒臭い作業って在りますよね スクリプトを書きませう 何で書きますか?
#!/bin/bash の代はりにPerlで の代はりにRubyで
#!/bin/bash の代はりにPerlで の代はりにRubyで の代はりにCrystalで
#!/usr/bin/env crystal
Crystal • 作るのが速い! • 動くのが速い! • binaryにして配れる!
樂に成りましたね御⽬出度う!
樂に成りましたね御⽬出度う! (╯°□°)╯︵ ┻━┻
樂に成らない(#l _ l)
⾯倒臭い作業には⼈間の確認や選択が要るものがいっぱい 例: 更新してよいものだけ更新する 例: 消していいものだけ消す
⾯倒臭い作業には⼈間の確認や選択が要るものがいっぱい ⇓ GUIなら對應出來ますね!
GUIを作らう • Java • XAML • Webサービス • Electron 等…
/bin/bash <<越えられないハードル<< GUI
Crystal <<越えられない⾯倒臭さ<< GUI
スクリプトの⼀部だけをinteractiveにしませう
`git cleanup-branch` https://github.com/ne-sachirou/git-cleanup-branch
SelectableTextUI ⊂ git-cleanup-branch NCursesのwrapper
C FFIをwrapするのは安全ではない しかしCrystalは安全ではない! CrystalはC FFIをwrapするのが簡單!
Crystal • 作るのが速い! • 動くのが速い! • binaryにして配れる! • NCurses使ひ放題!
Crystalで⾯倒くさい作業を殺せ