koogawa blog

iOS、Android、foursquareに関する話題

エンジニアサポート #CROSS2014 に行ってきたよ

今日はベルサール新宿グランドで開催された エンジニアサポートCROSS 2014 に参加してきました。このイベントに参加するのは2012年以来の2回目になります。

f:id:koogawa:20140117185019j:plain

3回目となる今回は、テーマとして「クロスでススム、クロスで変わる」が掲げられていました。

f:id:koogawa:20140117185205j:plain

やっぱりこういったエンジニアだらけのイベントに出ると、良い刺激になりますね。特にぶつかり稽古とか、若いエンジニア達が活躍しているのを見ると、自分も負けてられないなと感じます。

テストまわりの話題については、自分はまだまだ勉強不足だなーと感じました。今日は各社のテスト運用方法や方針など、貴重な話がいろいろ聞けたのでとても良かった!

f:id:koogawa:20140117185246j:plain

▲自分が得意な分野をネームプレートに貼るんですが、さすがにこれだと寂しい…(^^; 次回はもっと貼れるといいなぁ


以下は個人的なメモになります。(読み難くてすみません)

現場に聞く!テスト/CI/DevOps、実際のところどうなの

f:id:koogawa:20140117191645j:plain

  • 近頃の開発のやり方…Github/PullRequest/コードレビューなど
    • クックパッド(@hotchpotch)
      • コードレビュー用のツールも使っていた
      • ツールの生産性が低くコードレビューのコストが高すぎた
      • 2012年頭くらいからgithubを使った業務フローを考えてみた
      • 他がやっていたから、ではなく、ちょっとやってみよう的な
    • はてな(@hakobe)
      • 初めてテスト書いたのは大西さんがはてなダイアリー
      • はてな入社当時、テストはあまり定着していなかった
      • はてなブックマークの機能が増えてきたあたりでテストもやるようになった
      • CIがもり上がったタイミングでテストも書こう!ということに
    • KAIZEN (@iandeth)
      • 開発が1人から2〜3人になったときに自動化
      • チームが大きくなるとCIなしではやってられない
    • テスト書き過ぎ問題について
      • この記事 
      • テストを書きすぎると自分の足を撃ってるようなこともあるよね
      • ユニットテスト書きすぎるとリファクタリングしにくくなったりする
      • はてな
        • はてなではコードの寿命がすごく長い。はてなダイアリーとか10年。担当者も変わるので自分の意図が伝わるようにテスト書く(@hakobe)
        • C0くらいはちゃんとしようという基準。C0はそこまで大変ではない(@hakobe)
        • 開発チームによってテストツールも違う
        • 基準も結構違う
        • C0も一つの基準としてありますよねという程度
      • StackOverflowはテストしてないらしい(ワザノバより)
        • ユーザがどんどん報告してくれる
        • このアプローチもなかなかいいね
        • テストやるやらないはサービス毎の意思決定による
      • テスト書きすぎ問題もいろんな反論があった
        • 3か月で終わりのプロジェクトでそんなにテスト書いても仕方ないだろ、とか
        • そういうコンテキストじゃない
      • クックパッドには開発基盤グループがある
        • テスト環境の整備などをやっている
        • テストをどんどんやることでユーザーに価値を届けることができる
        • テストそのものでなく速度を上げるとか
        • テストは後回しになることが多い中、クックパッドは組織立ってやってるのでいいね
        • 今となっては技術カンパニーのイメージが強いけど、こうなったのはここ2,3年の話
        • だから他の会社もきっとやれる!(@naoya_ito)
      • 情報共有どうしてますか?
        • はてなはてなグループ使ってる
        • ブログ書きながら仕事する感じ
          • メールはあまり使わない
          • 誰が何やってるかすぐわかる
        • クックパッド
          • 最初は情報共有ツールなんてなかった
          • Wikiがあったけどあんまり活用されてなかった
          • はてなから来た人は違和感があった
        • こんなカッコイイコード書いたぜ!って場が必要(@naoya_ito)
          • Wikiだと誰がいつかいたのかわからない
          • ブログだとアンテナがある

スマフォOS戦国時代

f:id:koogawa:20140117191742j:plain

  • Tizen
  • PhoneGap最新動向
    • Andyさん
    • 対応OS
    • Untappdも使ってる!
    • 環境
      • HTML + CSS + JS
      • angularとか環境は問わない
    • 最新は v3.3 
    • 開発
      • CLI
        • phonegap create myApp com.example.test MyApp
        • phonegap build android
        • phonegap install
      • で実機へのインストールまでできる
  • 自動車関連OS動向
    • 渡辺さん
      • フリービット株式会社 R&D部所属
    • iOS
      • iOS in the Car
    • Android
      • Open Automotive Alliance
    • HTML VS NATIVE

残念ながら次のセッションのためここで退席。

コードレビューCROSS 〜ぶつかり稽古 2014初場所〜

f:id:koogawa:20140117191832j:plain

  • 司会
    • @kentaro アンチポップさん
  • テーマ
    • アイドル投票アプリケーションを作れ!
  • 参加者(右から)
  • DeNA部屋 - ryopeko親方、z_dogma関
    • 変数名の付け方とか
    • 結構仕様とか設計まわりの指摘が多かった
    • あらかじめ実装する前に設計をレビューする(はてな
    • 出来上がったのをいきなりレビューに出すと、オッってなる(はてな
    • レビュー時はどのくらいパフォーマンス意識してる?
      • ボトルネックになったらプロファイリング取ったりする
      • 気になるところがあれば指摘
    • 雑感
      • 最低限のセットアップ方法をREADMEに
      • SQLが意味不明
      • テストが動かない
    • マージの基準
      • 空気を読ませるプルリクはやめて
      • 言いたいこと見て欲しいところは明示しろ
  • CPAN部屋 - yappo親方、moznion関
    • 「つっこみ所がなくてつまらないのでCGI&NO Databaseでやりなおし」w
    • Perl書ける人にアプリ作らせてもつまらない
    • イマドキの大学生はCGIを知らないらしい
    • ブランチ名 unko
    • コードを批判されるとやっぱりつらい
      • コードとは関係無い所でも普段のコミュニケーションをちゃんと取っておくことが大事
    • なんでコードレビューやるのか?
      • 協力しあうことが重要。バグ出しはおまけ(DeNA
      • テストを書くことで自分が困らないようにする(CPAN組)
      • コードレビューやることで雑に書けなくなる(はてな
      • 品質が上がっていく(カヤック

技術書の未来はどっちだ!

f:id:koogawa:20140117191858j:plain

  • 出版業界は低迷してる
  • 今後どうしていくべきか
  • packtpub.com
    • 一切在庫を持たない
    • オーダーしてから作り始める(Print on demand)
    • 在庫リスクがゼロ
    • 売れない本でも気軽に作れる 
  • Print on demand
  • 入門ChefSoloを電子書籍にした経緯
    • 紙の本だとページ数に制限がある
    • 出版までに時間がかかる
    • ちなみに技術書の場合、出版社の編集者もよくわかっていないのでツッコミがほとんどないw
    • モチベーションのコントロールが難しい
  • メンテナンス
    • Kindle は内容をアップデートしても、ユーザ側が操作しなければ端末に反映されない
    • iBooksはアップデートを通知してくれるらしい
    • 本はアップデートもちろん出来ないので
  • 本の形式
    • オライリーが提唱しているHTMLBookというのがある
      • HTML + CSS
      • 普及するか?
    • ANTENNA HOUSE
    • そもそも何で各社バラバラなの?(伊藤さん)
      • 私もわからない(^^; 歴史的経緯では(鈴木さん)
      • XMLが良いとか各社意見がバラバラ
      • 覇権を握るとなにか良いことあるの??

CROSS Tech10 2014

f:id:koogawa:20140117191922j:plain

CROSS参加者のアンケートを元に2014年気になる技術トップ10ランキングを発表!!

  1. Linux
  2. AWS
  3. MySQL
  4. HTML5
  5. JavaScript
  6. Ruby
  7. DevOps
  8. CI
  9. iOS
  10. Android

ちなみに去年のアンケート結果

  1. MySQL
  2. Linux
  3. AWS
  4. HTML5
  5. JavaScript
  6. MongoDB
  7. Ruby
  8. Cloud
  9. Node.js
  10. iOS

10位以下に落ちてしまった技術たち。

  • MongoDB → 24位へ
  • Cloud → 13位へ
  • Node.js → 15位へ