今日はちょっと曇り空。
とはいえ気持ちいい天候ですね。
山や川が近いからか、鵯や鳶の声もよく聞こえてきます。
さすがにキンクロハジロは見つけられなかった。
それっぽいタイトルにしましたが、そろそろネタが尽きてきたので来年は普通のタイトルでいいかな…
さて、今日は朝から名古屋に帰り、名古屋オフィスで全社オフ会になります。
開発合宿としては実質昨日までで、今日は成果発表会のみです。
このあと、各チームがどんなことをやったのか、この記事に追記してもらえるはずなのでお楽しみに!
昨日の記事はこちら。
(08:00 @kokuyouwind)
今日も朴葉味噌を食べました。
(08:30 @oosawatechnica)
どうせみんな15分くらい遅れるやろと思って前倒しスケジュールでロビー集合時間を設定してたら全員時間通りに集まっており、感無量です。前倒しで名古屋に向かう
— 大沢香織 Kaori OOSAWA (@oosawatech) 2019年4月11日
(09:00 @kokuyouwind)
さらば岐阜、さらば信長
(14:00 @kokuyouwind)
更新してる暇がなかったですが、全社オフ会が始まってます!
普段リモートのメンバーも含めて、名古屋オフィスに集結!
休憩時間もだいぶ賑わっています。
昼前に合宿の成果発表会も行いました!
生配信でお届けするのはさすがに無理なので、以下に各チームの成果報告を更新していってもらいます!
開発合宿チーム紹介(および発表順)
1: グレーが多いチーム
チーム名由来
メンバーのアイコンの色がグレーだったので。
当日はMisocaパーカーを着ていたので実質全員グレーでした。
チームメンバー
id:mallowlabs
id:torimizuno
id:nezurika
開発テーマタイトル
KPI/KGI等社内で見たい数字をredashで簡単に見れるようにする!
開発内容とかいきごみとか
合宿で行ったことは
- みんなが手軽に見れる場をつくる
- プロダクト視点、マーケ視点で出したい数値を定義する
- 自分たちで出したい数値をSQLを叩けるようになる(エンジニアだけでなくデザイナー・マーケターも)
- ダッシュボードをつくる
- GA・Google Spreadsheet・Slack とも連携させる
です。
最終的には見たい数字をダッシュボードで可視化することができました!
今回は成果物を作るだけではなく、そこから現状のユーザーの傾向なども分かることができ、
合宿後どう使っていくかが鍵になるものができたのでとても良かったです!
技術的に頑張ったことはこちら
- Google OAuth でログインできるようにした
- self hosting の Redash は Slack に URL を展開する機能がないので自分で作った
- グラフの URL を貼るだけでグラフが展開される
- リマインダーと組み合わせると◎
私達のチームはエンジニア・デザイナー・マーケターの構成だったので、
開発合宿と言いつつ難しいことは id:mallowlabs がすべてやってくれました。神。
そして開発合宿なので、デザイナーとマーケターもSQLガシガシ書きました。開発したぜ!
発表の様子
シュッ2
チーム名由来
去年と同じテーマ、同じメンバーでリベンジ参戦!なので2です。
チームメンバー
開発内容とか意気込みとか
OCRを使って紙などから請求先の情報を取り込む機能をAndroidアプリに追加しました。 去年の敗因は「スマホに処理を行わせると時間がかかりすぎて待てない」だったので今回はサーバーサイドでOCRを行うことにしました。 Google Cloud Vision APIの返す文字列は非常になめらかで過去最高の仕上がり。 実用レベルの精度やレスポンス速度が出るようになったし、開発もトントン拍子に進んだためリス村に行けて大満足でした。
3: チームカ○オ
チーム名由来
「カ○オ」=有名な電卓メーカーさんの名前が入ります。
チームメンバー
諸事情により一人チームで、一日目はリモート・二日目午後に合流というスタイルでした。
開発テーマタイトル
電卓
開発内容とかいきごみとか
説明するよりも見てもらったほうが速いです。
ご覧のとおり電卓です。
明細を入力するときに
- 合計で10000円になるように差額を入れたいんだよな〜
- 2割引の金額にしたいんだよな〜
みたいな、「ちょっと計算したものを入れたい」みたいなシチュエーションは結構多いだろうな〜というのを解決したくてガッとやりました。 あとは、現状のMisocaの請求書作成では、お取引先や明細の品目名はマウス・トラックパッド操作のみで入力することができますが、 数量や単価を変更するときはキーボードに頼らざるを得ません。
ちょっといじりたいだけなのに面倒だな...と私自身が思うことがあったので、色々と解決する究極ソリューションを考えた結果 「あ、これ電卓だわ」となりました。
ただ、Vue.jsパワーが素晴らしすぎて、合宿は二日間あるのに3時間くらいでほぼ終わってしまったので、 思いつきでまったく関係ないものももう一つ作りました。
弊社のサービスの性質上、クラウドの利用を促進したい立場ではありますが、 現場ではExcelやGoogleスプレッドシートはバリバリ利用されているとおもいます。
「そこからガッとコピーしてバーンって貼り付けてドーンって明細作れたら便利じゃね??」という雑な発想です。 なお、上記例だとGoogleスプレッドシートからコピペしていますが、簡単だったのでCSVも対応しておきました。
内容を見ていい感じに雰囲気でパースします。
というわけでチームカ○オが作ったものでした。 「いやーこれ優勝しちゃうわ〜〜」と調子に乗っていましたが、 成果発表の表彰(?)では「電卓と迷いましたが、○○チーム(別チーム)で!」というのが相次いで爆死しました。 電卓からドレミの音が出るようにするか悩んで実装しなかったので、そこさえ実装してれば優勝でしたね。
来年もがんばるぞ〜!(あと、ブラッシュアップしてリリースしたいな)
4: 端末農場
チーム名由来
以前から、iPhoneアプリの回帰テストを改善したいと思っていてAWS Device Farmを利用できないかなぁと考えていたので「端末農場」としました。ジョージ・オーウェルの「動物農場」も若干意識しました。
チームメンバー
開発テーマタイトル
由来そのままで「iPhoneアプリの回帰テスト」というタイトルでした。
開発内容とかいきごみとか
合宿の間に不完全ですが、スクリーンショットを取ってreg-suitを実行するまでできるようになったのが、何よりでした。今後、改良して、実際に使ってもらうことができるようにしたいと思っています。本筋ではないですが、Device Farm で実行するテストはAppium Rubyを利用しました。いつものRailsアプリを書くノリでiPhoneアプリのテストが書くことができるのは感動でした。
5: 編㌠
チーム名由来
コンポーネントカタログを編サンするぞ!
チームメンバー
開発テーマタイトル
Misoca の Web アプリケーションを構成する UI コンポーネントのカタログ作りをしました。
開発内容とかいきごみとか
StoryBook でコンポーネントカタログをつくり、 Jenkins + reg-suit でビジュアルテストリグレッションテストができるところまで作り込みました。 キャプチャ取得の自動化は Zisui を使いました。
Pure な Vue.js のコンポーネントを StoryBook に載せるのは比較的簡単でしたが、 jQuery + Bootstrap に依存したコンポーネントを載せるのは少々ハックが必要となり大変でした。
6: 電気羊㌠
チーム名由来
Electron = 電気羊
チームメンバー
開発テーマタイトル
「Misocaはデスクトップアプリの夢を見るか?」
開発内容とかいきごみとか
私たちのチーム、SlackチャネルとGtihub、Trelloの連携などを行い本番さながらのスタイルで開発を行いました。 チケット・PRベースでだいぶ上手く開発サイクルが回っていた気がします。
2日間で、
- ElectronのでMisocaの基本機能が使える
- クロスプラットフォーム(Windows、Mac)でインストーラーからのインストールが行える
- Nutsを使って、自動アップデートの通知・実行が可能
というところまで完成させ、 発表ではMisocaのロゴをプリントしたCDを使ってデモを行いました 💿💿
開発合宿とオフ会を終えて
そんなわけで3日間、開発合宿+オフ会と、濃密な社内イベントの様子をお届けしました。
(オフ会の午後ではワークショップも実施したのですが、これについては別記事でまとめたいと思います。)
来週はRubyKaigi2019ですね。
MisocaはSilverSponsorになっておりノベルティも配布します!
イベントが続きますが有志メンバーも多く参加しますので、合宿の話などRubyKaigiでお声がけいただければと思います。
それではみなさま、おつかれさまでした!
📢 宣伝
Misocaでは開発合宿で圧倒的成果を出したいエンジニアを募集しています!