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
コーディング規約で悲しみを生みたくない話
Search
Hirotaka Miyagi
September 13, 2019
Technology
0
280
コーディング規約で悲しみを生みたくない話
第一回 RubyでLTしちゃわナイト(
https://corundum.connpass.com/event/140161/
) で発表したLTの資料です。
Hirotaka Miyagi
September 13, 2019
Tweet
Share
More Decks by Hirotaka Miyagi
See All by Hirotaka Miyagi
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
8
1.8k
to B プロダクトで Vite + React Router を採用して半年後の感想 / Impressions after 6 months of using Vite + React Router
mh4gf
12
4.3k
Playwright で一番小さく始める VRT と、次のステップの選択肢
mh4gf
14
3.1k
学習しながらアーキテクチャを進化させていくためのモノレポ
mh4gf
3
900
pnpm workspace実践ノウハウ
mh4gf
9
3.9k
sassc-railsを利用している我々は、Sassの@importの非推奨化をどのように乗り越えていくか
mh4gf
4
1.9k
ProductionでRails6マルチDB対応を小さく始める
mh4gf
1
1.3k
平成Ruby会議 株式会社タイミースポンサーセッション
mh4gf
0
550
平成.rb 株式会社タイミー チーム開発紹介資料
mh4gf
0
710
Other Decks in Technology
See All in Technology
What if...? 처음부터 다시 LLM 어플리케이션을 개발한다면
huffon
0
1k
Git 研修 Basic【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
310
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
フルリモートワークはエンジニアの夢を叶えたか? #cm_odyssey
mamohacy
2
600
Git 研修 Advanced【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
200
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
150
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8k
20240717_イケコパ代表Copilot_in_Teams会社でこう使ってます
ponponmikankan
2
430
JBUG岡山 #6 WordCamp男木島の チームビルディング
takeshifurusato
0
150
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
開発と事業を繋ぐ!SREのオブザーバビリティ戦略 ~ Developers Summit 2024 Summer ~
leveragestech
0
630
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
21
2.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Adopting Sorbet at Scale
ufuk
71
8.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
17
1.5k
Music & Morning Musume
bryan
43
5.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
26
2.1k
Embracing the Ebb and Flow
colly
81
4.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
Building Effective Engineering Teams - LeadDev
addyosmani
47
2.2k
The World Runs on Bad Software
bkeepers
PRO
63
11k
Fireside Chat
paigeccino
25
2.8k
Documentation Writing (for coders)
carmenintech
63
4.2k
Transcript
Copy Right © Taimee.inc 2019 - 1 コーディング規約で悲しみを生み たくない話 株式会社タイミー
宮城 広隆
Copy Right © Taimee.inc 2019 - 2 自己紹介 - 宮城広隆
- GitHub/Twitter @MH4GF - 株式会社タイミー - Ruby/Rails歴は1年半
Copy Right © Taimee.inc 2019 - 3 コーディング規約 みなさんのプロジェクトにはコーディング 規約はありますか?
Copy Right © Taimee.inc 2019 - 4 コーディング規約あるある - 悲しみを生みがち
Copy Right © Taimee.inc 2019 - 5 コーディング規約あるある プロジェクトに特化したものであるほど辛 くなっていく
Copy Right © Taimee.inc 2019 - 6 コーディング規約あるある 作りたくない
Copy Right © Taimee.inc 2019 - 7 コーディング規約あるある しかし、複数の答えがある場合、チーム としてどれかを選択したくなる時がある
Copy Right © Taimee.inc 2019 - 8 コーディング規約あるある その小さな例を紹介します
Copy Right © Taimee.inc 2019 - 9 Time型のオブジェクトをstringに変換する
Copy Right © Taimee.inc 2019 - 10 Time型のオブジェクトをstringに変換する Time::DATE_FORMATSを定義するとDRYだよ、と新しくチームに参加 したエンジニアが教えてくれた
Copy Right © Taimee.inc 2019 - 11 Time型のオブジェクトをstringに変換する こうできる
Copy Right © Taimee.inc 2019 - 12 Time型のオブジェクトをstringに変換する - 記述量が少ない
- 設定を一つのファイルで管理できる 良さそう
Copy Right © Taimee.inc 2019 - 13 Time型のオブジェクトをstringに変換する 数ヶ月後、新しく入ってきたエンジニアが出してくるPR にはstrftimeが使われていた
↓ FYIとしてto_sで変換できるよとレビューをした
Copy Right © Taimee.inc 2019 - 14 Time型のオブジェクトをstringに変換する これが新しいエンジニアが入るたびに続く…
Copy Right © Taimee.inc 2019 - 15 Time型のオブジェクトをstringに変換する 別の方法としてI18nがある
Copy Right © Taimee.inc 2019 - 16 Time型のオブジェクトをstringに変換する 別の方法としてI18nがある
Copy Right © Taimee.inc 2019 - 17 Time型のオブジェクトをstringに変換する - DATEFORMATより記述量は多いが、I18nはRails
を使う開発者なら馴染みがある
Copy Right © Taimee.inc 2019 - 18 チームでの議論が続いた - strftime
- DATE_FORMAT - I18n
Copy Right © Taimee.inc 2019 - 19 ここまで プロダクトの価値には何も寄与していない
Copy Right © Taimee.inc 2019 - 20 チームでの議論が続いた チームで議論した結果、基本的にはI18nを使うのがい いだろうが、強制はしない、という結果になった
Copy Right © Taimee.inc 2019 - 21 終わり - コーディング規約を作るなら、驚き最小な方を選ぼ
う - 本当に強制するメリットはあるのか