「YAPC::Asia Tokyo 2015」8/21(金) 振り返り #yapcasia
10周年、そして、今年で終わってしまうということで最初で最後の「YAPC::Asia Tokyo」に参加してきました。
各トークセッションの流れは Togetter にまとめられているので、こちらから探すとよさそうです。
以下、視聴したトークと個人的なメモ&所感です。
世界展開する大規模ウェブサービスのデプロイを支える技術
AWS US/JP/EU の 3 リージョンでサーバ台数が多いと git pull が重い。
- Git Slave への同期
- Git Slave から Pull するときの負荷問題
Mackerel(マカレル): 新世代のサーバ管理・監視ツールを使ってるらしい。
GHE と Git Slave repository の同期が大変なので、新しくリポジトリ同期システムを作った。
所感
Consul + stretcher での deploy は規模大きくなったときに考えたい。しばらくその心配はなさそうだけど。
あと、最近だと AWS CodeDeploy (Amazon EC2 インスタンスへのコードデプロイを自動化) もあるけど、どうなんだろ?
今フロントエンドで何が起こっているのか
- スライド: What's happening in frontend now? // Speaker Deck
- YAPC::Asia Tokyo 2015で「今フロントエンドで何が起こっているのか」という話をしました – blog.koba04.com
所感
最近のfrontendをちゃんと把握できてなかったので、なんとなく流れを理解できてよかったです。
Conway's Law of Distributed Work
分散したチームで効果的に仕事をするために使うべきツールや心構えなどが発表されていた。
Distributed Work では、効果的なコミュニケーションで時間短縮できる。
リモートワークをしている場合、その場にいるかのようにコミュニケーションに入れてあげることが重要である。
Commit Messages
コミットメッセージで会話をする。
考古学者として、あとでコードを掘り起こしたときに何か手掛かりがほしいだろう?
「何を考えていて、どうしてこうなったか?」という情報がときどき失われる。
これを残さないといけない。
CODE REVIEW
コードレビューはバグを 60% 減らせるという分析がある(らしい)。
非同期コミュニケーションには適している。
すぐに返事がくることを期待しない。
Everyone should experience remote work.
まず、課題を実感して、共感して、改善するということが大切。
Have on-site meetups
一堂に会する機会を定期的につくる。
Over communicate.
「常に話す」というわけではない。
「常に書く」ということを意識する。
Share your personality
自分の個性や人格を共有するようにしましょう。
日頃のテキストチャットで共有しよう。
Off Topic の Slack channel を用意する。
Exhibit a “visible pulse.”
リモートで仕事をする場合には、自分が何をしているかアピールしなければならない。
Pick a timezone.
Standard Operating Time (SOT)
CAP THEOREM (SOME LIMITATIONS)
リモートワークでも CAP 定理が当てはまる。
Q&A
Q) リモートワークだと働きすぎる場合がありますが、どうしてますか?
A) なりますね。でも、そうすると家族が寂しくなる。
自分を律する。自分のスケジュール管理をする。
オフィスを離れるタイミング、疲れたら休む。
チームで「あなた仕事しすぎだから帰ったほうがいいよ」と声を掛ける習慣をつける。
自分の仕事に余裕を持って取り組む。
Q) Timezone が異なるとリモートワークが難しくないか?
例えば、日本とアメリカなど。
A) 日本やアメリカ毎に数人のチームを置くべきだね。
自分の意見) 実践したことがあるが On time が重なる時間帯があったので、特に問題にはならなかった。
Q) Face to face の頻度は?
A) 四半期に1回がミニマム
そのときはコードに埋没するべきではない。
中長期的な話をする場にしよう。
Q) リモートワークではモバイルは重要なツールだけど、使っているか?
A) 便利ですね。
友達や家族にとってフラストレーションになる。
時にはスマートフォンを横に置くべき。
所感
リモートワークの経験はあったので、自分のケースと照らしあわせて良い振り返りができました。
「Commit Messages がいかに大切か?」という話をするときの例えとして、「考古学者が発掘するときにヒントが欲しいでしょう?」ってのはわかりやすかった。今度、コミットメッセージの大切さを説明するときにこの例を使わせてもらおう。
※ 考古学者の仕事は、「遺跡や遺構など人類が残した痕跡を探し、発掘し、過去の人類の活動と変化を研究すること」
Electron: Building desktop apps with web technologies
所感
Demo 中心なセッションでした。
直近で、デスクトップアプリを開発する予定がないのですが、作ることがあればまず Electron を使うことになるでしょう。
esa.io – 趣味から育てたWebサービスで生きていく
「楽しく開発したい!」
自分が最近あまりできてないので見習いたい。
開発スケジュールを決めない
- モチベーションが上がったら開発する。
- ユーザからのフィードバックがモチベーションにつながる。
理想的っすねー。
開発自体にモチベーションが上がらなくなったときにどうしてるか?ってのが気になる。
Lightning Talks Day 1
LT もぜんぶ聴きました。
懇親会
懇親会の申し込みを忘れてたのだけど、チケット譲ってもらえて入場できました。
ありがとうございました!
以上、YAPC::Asia Tokyo に参加した、現場からお送りしました。