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
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineer...
Search
naoya_s
January 31, 2020
Programming
37
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
(エンジニアに送る)人に優しくなるための3つの方法 / 3 Ways for Engineers to Be Kind to People
naoya_s
January 31, 2020
More Decks by naoya_s
See All by naoya_s
静的解析ツールの刷新に向けた取り組み
suginao
1
410
RuffではじめるPython開発 / Python Development with Ruff
suginao
0
70
AWS SAMをさわってみた話 / Try AWS SAM
suginao
0
47
全国在宅勤務制度のすゝめ / Practice of National Telecommuting System
suginao
1
24
サーバーレスなAPIサービスの全容 / All of the serverless API services
suginao
0
1.4k
Other Decks in Programming
See All in Programming
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
240
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1.2k
Creating Composable Callables in Contemporary C++
rollbear
0
200
Performance Engineering for Everyone
elenatanasoiu
0
270
ローカルLLMでどこまでコードが書けるか -縮小版 / How much code can be written on a local LLM Shortened
kishida
2
180
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
310
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
1B+ /day規模のログを管理する技術
broadleaf
0
130
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
340
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
120
Featured
See All Featured
The Curse of the Amulet
leimatthew05
2
13k
Navigating Team Friction
lara
192
16k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Claude Code のすすめ
schroneko
67
230k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
340
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
310
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Evolving SEO for Evolving Search Engines
ryanjones
0
240
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Practical Orchestrator
shlominoach
191
11k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.9k
Transcript
(エンジニアの方々に送る) 人に優しくなるための 3つの方法 Webナイト宮崎 Vol.8 ~てげ良いコード書きたい~
お前誰よ?? 名前:杉田 尚弥(@suginao17) 出身:宮崎 所属:株式会社アラタナ 趣味:辛麺
良いコード is 何?
先生に聞いてみた!
None
None
今回話す、”良いコード” 他人(レビュアー)が見て 理解しやすい・親切なコード
どうやったら書けるの? ・エンジニア個々人が努力する💦 ・プロジェクトやチーム単位で コーディング規約を設ける😩
否
結論: エンジニアが疲弊するだけなので ツールやライブラリを使おう!
【フォーマッタ】 flake8, black 【静的型チェッカー】 mypy 【ツール・エディタ】 pre-commit VSCode PyCharm
フォーマッタ 【flake8】 ・PEP8に加え、シンタックスエラーまでチェックする ・pyflakes(論理的なエラーを検知) ・pycodestyle(規約に準拠しているか検知) ・mccabe(循環複雑度の高いコードを検知) ・設定ファイルで自由に規約を変更できる
フォーマッタ 【black】 ・PEP8に準拠しているかのチェック ・制限が強く自由に設定ができない → 導入が楽 ・flake8と相性が悪いので、一部設定を変える必要有
None
静的型チェッカー 【mypy】 ・Python3.5で実装された型ヒントを静的に解析する ・実行前に型エラーを検知できる ・可読性を担保する
ツール 【pre-commit】 ・フックスクリプトを管理する ・GitHubで公開されているリポジトリを指定して実行できる ・任意のタイミングで処理を実行できる ・コミット前にフォーマット ・プッシュ前に型チェック
エディタ 【VSCode】 ・設定ファイル次第で可能性は∞👍 ・設定沼にハマらないように注意 【PyCharm】 ・Pythonを書くんだったら、間違いない ・設定しなくても、だいたいのことができる
【言語別対応表】 並べたものの、あまりピンとこない... 大体あってる!? おまけ Python PHP JavaScript フォーマッタ black PHPMD
Prettier リンター flake8 PHPCS ESLint 型チェック mypy Phan Flow
ツールを上手に使って 人間に優しくなろう! 最後に