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
690
業務駆動OSS開発 / Job Driven OSS Development
Yoshiki Iida
August 18, 2021
Tweet
Share
More Decks by Yoshiki Iida
See All by Yoshiki Iida
ログラスにおけるコード品質でビジネスに貢献する仕組み・カルチャー / A system and culture that contributes to business through code quality in Loglass
yoshikiiida
11
1.7k
エンジニア採用責任者と人事の邂逅 / Engineer hiring manager meet HR
yoshikiiida
1
410
EMのスケールとマネジメントがチームになるということ / Team Building And Scaling Engineering Managers
yoshikiiida
5
2.5k
チームビルディングの始め方 / How to start team building
yoshikiiida
0
68
エンジニア採用責任者のしごと / Job of engineer hiring manager
yoshikiiida
3
3.3k
エンジニアリングマネージャー業の抽象度マッピング / Abstraction mapping of engineering manager's job
yoshikiiida
13
15k
スタートアップ1人目EMになって 最初にやったこと / The first step of EM
yoshikiiida
3
1.9k
強くてニューゲームなプロダクト開発 / Product development in new game plus
yoshikiiida
12
16k
よくやるカイゼンアプローチ / Kaizen approach
yoshikiiida
1
280
Other Decks in Programming
See All in Programming
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
1
180
Elm 0.19.0 Changes
bkuhlmann
0
490
GitHub Copilotのススメ
marcy731
1
200
Anthropic Cookbook のおすすめレシピ
schroneko
7
990
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
270
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
kazumain
0
260
Apache Hive 4 on Treasure Data
ryukobayashi
0
340
見た目から始める生産性向上
ikumatadokoro
7
850
新宿ダンジョンを可視化してみた
satoshi7190
2
260
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
Debugging Ruby Performance
tmm1
70
11k
Statistics for Hackers
jakevdp
789
220k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Designing with Data
zakiwarfel
96
4.8k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
The Cult of Friendly URLs
andyhume
74
5.7k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
Side Projects
sachag
451
41k
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