青空な日々

ITエンジニア関連で興味あることをアウトプットして共有したいブログ

大岡山でもくもくしてきました!

はじめに

昨日、東急目黒線の大岡山で開催されたもくもく会に参加してきました!

「ジャンルは問わず」ということでしたが主催者の方はAndroidでもくもく予定とのこと。
私も9月からAndroidアプリ開発を初めたので、
他社のAndroidエンジニアのお話を聞けたらいいなぁと思い参加してきました。

詳細はこちら。 connpass.com

主催の方は、ほんDさん。 twitter.com

大岡山?

大岡山という場所を知ってますか?

私は通勤で通っていたので名前は知っていましたが、
降りたことはありませんでした。
大岡山は東急目黒線の駅で、目黒から急行で5分の場所にあります。

もくもく会の会場が『大岡山北口商店街』を少し行った先にあったので、
そのあたりをブラブラしました。
恐らく下町の雰囲気が好きな方にはグッと来ると思います。
個人経営の本屋さんがあったり、
おもちゃ屋さんとかプラモ屋がありそう!ってなる感じのアレです。

時間に余裕がなかったので写真を取ったり横道に入ったりできませんでしたが、
下町や商店街の雰囲気がメチャメチャ好きな感じでした。
いつか行きたい場所がまた増えましたw

もくもく会

場所

場所はほんDさんが所属されている会社、アフリカインキュベーターさんのオフィスでした。
オフィスが普通のマンションの一室なので、
もくもく会というよりは友達の家で「スマブラやろうぜ!」みたいな雰囲気。
お硬い感じがなくて敷居がすごく低く参加しやすかったです。

詳細は上にあげたもくもく会のページからみれますー。

参加者と規模感。

参加者は私を含めて6人。
定年退職されたシニアのエンジニアの方も参加されていて、
メチャメチャ刺激を受けました!
別の参加者の方も言っていましたが「あんなふうに年を取りたい」という感じ!
見習いたい。

また個人的に、私がゲスト出演したpodcast『deploy.fm』関係者が多く居たのもポイントでした。
主催のほんDさんが3回目のゲスト、私が4回目、
そして参加者の中にはパーソナリティのTakasyさんも参加されていました。
(このもくもく会も『deploy.fm』で知りました)

deploy.fmはこちら。 takattata.github.io
他にも一昨日の勉強会でご挨拶した脱脂綿さんも参加されていたので、
知らない人ばかりでツライ…という感じにはなりませんでした。

もくもく会でやったこと。

今回はサンプルのAndroidアプリのコーディングしました。
このサンプルアプリを作る目的は、この9月からAndroid開発で勉強したことの復習と、
後日Qiitaのアウトプットネタにしたかったからです。

ですが、自前のMacbookでの開発環境構築が途中だったので、
その構築の合間(必要ファイルのDL時間など)にブログも書いてました。

他の人はAndroidや、DjangoやSwiftをやられていました。
皆さんかなり静かに作業されていたので、かなり集中されていたようです。

2時間15分ほど作業してそれぞれの成果を簡単に発表。
仕事で気になっていた部分の改修をして、動く成果を発表していた方もいました!
その後はAndroidアプリの開発で気になる以下の部分を質問したりディスカッションしたり。

  • アーキテクチャは何を使っているか?
  • モダンな作りに変える苦労
  • Dagger2使ってますか?メリットは?
  • 端末特有の挙動やテストについて

アーキテクチャは何を使っているか?

その場ではMVVMが多かったです。
まだ何も採用していないがMVVMにしようと思っている方や、
以前はそういったアーキテクチャを使わずにいたがMVVMに変えた、という方もいました。

モダンな作りに変える苦労

レガシーからモダンな作りに変える簡単な工夫や、銀の弾丸はないかなぁと思い質問。
やはり皆さんオーソドックスに、
新しい機能はモダンな作りで、
既存の機能をちょっとずつ直していく、
という話をされていました。

できれば時間を取ってガッと作り直してしまいたいのが本音ですが、
なかなかそうはいかないですね…。

Dagger2使ってますか?メリットは?

ライブラリの話しをしているときにDagger2を使われている方がいたので質問。
自分の認識だとテストする際に楽できるらしいぐらいの認識だったので、
実際使われている方のお話を聴いてみました。

使われている方は実装が楽になる、という点を話していました。
Daggerは依存性注入という訳し方をされていますが、
あるクラスのインスタンス化に必要なクラスのインスタンス(依存性)を自動で用意してくれるそうで、
コーディング時にアレもコレもインスタンス化してという苦労が減るそうです。

ちらっと見せてもらったソースでは10個以上のクラスを指定していたので、
これを手動でインスタンス化するのは面倒だからDaggerで、というのは頷ける話し。

端末特有の挙動やテストについて

端末によって写真のフォーカスが合わないなどの特有の問題が出ることがあるそうです。
こういった端末依存の問題にどう対応していますか?という質問。

だいたいの人が端末を用意してやるしか無いよね、という感じ。
ちなみに自分の会社は端末ごとのテストはそんなに熱心にやっていません。
なので自分はあんまりハマった試しが無いです。

質問された方は〇〇という端末だったらという分岐を実装したらしいです。
端末独自処理で対応するのは他にもある話だそうで、
他の参加者の方が参加した勉強会でもそういう話が出たそうです。

またカメラについては端末メーカーがSDKを出しているかも?という情報も。
ハマったら一度調べてみる価値はありそう。

感想

そんな感じでだいたい3時間ほどお邪魔させてもらいました。
もくもく回には初めて参加させてもらいましたが、
集中して作業する以外にも、相談や意見交換に行くのもいいですね。

特に会社で使用している技術や言語は会社の"当たり前"に染まってしまいがちです。
フラットな目で判断するためにも、他のエンジニアの話しを聴いてみるのは非常に良い経験でした。

刺激がもらえた事、知見が得られた事は非常に良い経験だったので、
またもくもく会に参加してみようと思いますー。