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
業務駆動OSS開発 / Job Driven OSS Development
Search
Yoshiki Iida
August 18, 2021
Programming
1
760
業務駆動OSS開発 / Job Driven OSS Development
Yoshiki Iida
August 18, 2021
Tweet
Share
More Decks by Yoshiki Iida
See All by Yoshiki Iida
ログラスが面白いと思う理由をマネージャーがエモく語ってみる / 20240829 vs LT
yoshikiiida
1
780
質とスピードを両立するログラスのホールチームQA / 20240827 QASaaS_findy
yoshikiiida
2
140
エンジニア組織30人の壁を超えるための 評価システムとマネジメントのスケール / Scaling evaluation system and management
yoshikiiida
11
3.3k
スクラムの成熟と壁 〜スケーリングの議論から見えたもの〜 / Maturity and barriers in Scrum
yoshikiiida
4
1.9k
スタートアップにおける組織設計とスクラムの長期戦略 / Scrum Fest Kanazawa 2024
yoshikiiida
17
6k
ログラスの選考プロセスにおけるアトラクト戦略 / Attraction strategy in Loglass interview process
yoshikiiida
7
3.1k
QA経験のないエンジニアリング マネージャーがQAのカジュアル面談に出て 苦労していること・気づいたこと / scrum fest niigata 2024
yoshikiiida
2
3.9k
ログラスにおけるコード品質でビジネスに貢献する仕組み・カルチャー / A system and culture that contributes to business through code quality in Loglass
yoshikiiida
12
2.3k
エンジニア採用責任者と人事の邂逅 / Engineer hiring manager meet HR
yoshikiiida
2
610
Other Decks in Programming
See All in Programming
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
250
CSC305 Lecture 26
javiergs
PRO
0
140
Go の GC の不得意な部分を克服したい
taiyow
2
770
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
320
42 best practices for Symfony, a decade later
tucksaun
1
180
良いユニットテストを書こう
mototakatsu
5
2k
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
290
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
1
170
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
720
Recoilを剥がしている話
kirik
5
6.6k
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Language of Interfaces
destraynor
154
24k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
Rails Girls Zürich Keynote
gr2m
94
13k
Producing Creativity
orderedlist
PRO
341
39k
Transcript
仕事ではじめるOSS 2021/08/18 #osscontributelt Yoshiki Iida 業務駆動OSS開発
Yoshiki Iida (@ysk_118) エンジニアに始まり、スクラムマスター、プロダクトオーナー、マネージャー、執行 役員を経験し、現場のチームビルディングから部署を超えた会社全体の改善な ど、アジャイルな組織づくりの推進を行ってきました。現在は株式会社ログラスに てソフトウェアエンジニアとしてプロダクト開発に携わっています。 書籍「Scrum Boot Camp
The Book 増補改訂版」コラムニスト。 一般社団法人アジャイルチームを支える会 理事。 $ whoami
ログラスについて は、事業進捗を可視化することで 柔軟で高精度な経営推進を実現する プランニング・クラウドサービスです。
ログラスについて
ログラスについて
• Metabaseの紹介 • 学びやポイントなど Topic
ログラスとMetabase • 経営ダッシュボード機能で MetabaseをEmbedして利用 • お客様でBIツールを用意していなく ても、財務データの可視化をログラ ス上で行える
Metabaseとは • OSSのBIツール ◦ Cloud版とセルフホスティング版があ る ◦ エンタープライズ版はOSSに加えて認 証や埋め込みなどのカスタマイズが可 能になる
• Clojure, React • Metabase, Inc.が開発
Metabaseとは • https://github.com/metabase/ metabase/ • 多言語展開していることもあるからな のかIssueがとても多い • 開発は活発でリリースも多い
• ダッシュボードの絞り込みUIで複数選択すると表示がおかしくなるバグ ◦ 具体的にはプレースホルダが正常に処理されない • 使えなくないが、埋め込みでお客様に提供していてかなり目立つところな ので修正したかった 今回修正したバグ
Metabaseの多言語対応 • POEditorで翻訳プロジェクトを管理 している ◦ https://poeditor.com/join/project/ynjQmwSsGh • poファイルからフロント、サーバーサ イドそれぞれの翻訳JSONを生成し 読み込んでいる
• フロントはttagというライブラリを使っ ている
• 今回のような複数選択できるUIだと、一つ選択しているときは1 selection、二つ以上選択しているときは2 selectionsとなる • 日本語では一つの場合も二つ以上の場合も「n個の選択」なのでpoファイ ルからJSONに変換する際に言語間の違いを考慮する必要がある 言語間の複数形の取扱の違い ※Pluralのほうが複数形のプレースホルダ
• 当初は翻訳プロジェクト側だけ修正すれば直ると思っていたがそれだけで は直らなかった JSON生成ロジックの修正 ↓
• 複数形の文字列に関してもプレースホルダがあれば変換処理が行われる ように修正 JSON生成ロジックの修正
• 複数言語で検証して修正を確認! JSON生成ロジックの修正
• poファイルからJSONを生成するロジックを追うのが難しかった ◦ Shell ScriptからClojure Scriptを実行していてjsonファイルを生成し ているコードをgrepして追っていった 難しかったポイント
• 開発環境構築はDeveloper Guideが整備されており特段つまづくことは なかった ◦ https://www.metabase.com/docs/latest/developers-guide.html • 関連Issueが多く一気に倒せた(逆に言えば結構放置されていた😇) よかったポイント
• 大きいプロダクトの多言語対応の仕組みを学べた • 大きいプロダクトなので追いついていないIssueも多くあり、 貢献感を感じられる機会が結構ありそうということがわかった • 泥臭いコードもあり自信をもらえる • 業務上の必要性が高いところにOSSを利用していると コントリビュートのモチベーションは高めやすい
◦ 属人性などのリスクはさておき、一エンジニアの機会創出としてはよい 学びとまとめ
https://job.loglass.jp/ We are hiring