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
800
Crystalで殺せ
Crystalで作る簡單インタラクティブCUI。Crystalで面倒臭い作業を殺せ
さっちゃん
November 29, 2016
Tweet
Share
More Decks by さっちゃん
See All by さっちゃん
みんなのオブザーバビリティプラットフォームを作ってるんだがパフォーマンスがやばい #mackerelio #srenext
ne_sachirou
0
1k
作ってよかったgraceful shutdownライブラリ #kyotogo
ne_sachirou
0
1k
path 依存型って何?
ne_sachirou
0
440
野生の onbording と onbording 設計 #kyototechtalk
ne_sachirou
0
550
メトリックはいかにして見え續ける樣になったか #devio2022
ne_sachirou
0
69
名實一致
ne_sachirou
0
600
まかれるあなとみあ ―Mackerel のしくみを理解する 30 分― @ Hatena Engineer Seminar #16
ne_sachirou
0
3k
tacit programming : Point-free, Concatenatives & J
ne_sachirou
0
790
Monitoring Containerized Elixir
ne_sachirou
1
890
Other Decks in Programming
See All in Programming
RDBの世界をぬりかえていくモデルグラフDB〜truncus graphによるモデルファースト開発〜
jurabi
0
150
tsconfig.jsonの最近の新機能 ファイルパス編
uhyo
6
1.4k
Infrastructure as Code でセキュリティを楽にしよう!
konokenj
6
1.4k
◯◯エンジニアになった理由
gessy0129
PRO
0
620
Beyond the RuboCop Defaults
koic
2
490
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
1
120
推しの夫に恋のGPS「ときメーター」#M5Stack #IoT #M5JPTour2024
riyu
0
220
ファーストペンギンBot @Qiita Hackathon 2024 予選
dyson_web
0
210
Go製CLIツールGatling Commanderによる負荷試験実施の自動化
okmtz
3
670
GitHub Copilot Workspace で我々のアプリ開発がどう変わるのか?
shuyakinjo
0
860
Интеграционное тестирование: как приручить хаос
mariyasaygina
0
510
Micro Frontends for Java Microservices - dev2next 2024
mraible
PRO
0
190
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1365
200k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
1
250
Debugging Ruby Performance
tmm1
73
12k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Scaling GitHub
holman
458
140k
Music & Morning Musume
bryan
46
6.1k
Being A Developer After 40
akosma
84
590k
The Cult of Friendly URLs
andyhume
77
6k
The Cost Of JavaScript in 2023
addyosmani
43
5.8k
Web Components: a chance to create the future
zenorocha
310
42k
Creatively Recalculating Your Daily Design Routine
revolveconf
217
12k
Visualization
eitanlees
143
15k
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で⾯倒くさい作業を殺せ