iOSDC でベストトーク賞(3位)をいただきました

f:id:dealforest:20160822153003p:plain

8/19-20 にかけて開催された 400人規模 600人規模のiOSカンファレンス「iOS Developers Conference Japan 2016」にて「Xcode で快適なデバッグライフを追い求める」というタイトルで発表させていただきました。

以下、CFPより

僕は怠惰な人間です。プログラミングの大半はデバッグに時間を費やすと思っているので、なるべく早く原因に辿りついたり効率のよいデバッグライフを送りたいと常々思っています。 プリントデバッグもいいのですが Xcode には便利な機能が色々とあります。それらを使うことで簡単に原因を特定できるケースがあります。 visualize されるのは分かりやすいですよね。 それらを tips で紹介できたらなと思います。

発表資料

皆さん怠惰ですよね…? -Xcodeで快適なデバッグライフを送りましょう- #iosdc #a - Togetterまとめ

動画

(近々配信される予定ですので、後ほど埋め込みます)

ベストトーク賞(3位)

f:id:dealforest:20160824223842p:plain 投票してくださった皆様のおかげでいただくことができました、ありがとうございます!!!

発表直前まで、この話しおもしろいのか...そもそも時間内に終わるのか...と不安だらけでしたが、うまくいったようで良かったです。Diagnostics の発音が分からなくなった辺りから会場の空気が良くなったので、忘れて本当に良かったなとw

こういった賞レースとは縁遠かったので貰えるとは思っておらず、後ろでバドワイザーを飲んでLTの余韻に浸ってぼーっとしてたんで、しばらく気づかなかったです。。。

反響も多く興味も持ってもらえたようなので本当に嬉しいかぎりです。

補足

発表自体かなり駆け足気味で話してしまったので、少し補足しておきます

Xcode Plugin が動かなくなる

Xcodeバイナリから証明書を消せば一部の Plugin は使えるようになります。みんな大好き XVim は動きます

すべての Plugin が動くわけではなく一部なので何が原因か特定できず GM が出たタイミングでもう一度調べようと思っています。

詳しくは「Xcode Editor Extension と Xcode8 で Plugin が動かなくなったことについて発表してきました」をどうぞ

どの ViewController かわからない問題

symbolic breakpoint を使えば、特定のセレクタが実行されたタイミングでブレイクできるので、わざわざここかな?と推測してログを仕込んだりしなくても済むというお話でした。

LOG_CURRENT_METHOD すでに仕込まれていれば便利ですけど、人が仕込むものなので、忘れられている可能性もあったりしますしね。 あとログが出すぎでうざったいとかも Breakpoint だと、該当する箇所だけ無効にするのも簡単です。

実機のログやファイルを取得したい問題

ここで特に触れていなかったので LLDB にslack コマンドがあると思ってしまったかもしれません。すみませんでした。

LLDB のコマンド自体に slack コマンドはなく拡張しました。 gist から DL して、~/.lldbinit から import しておくと、slack コマンドが使えるようになります。

このようにデバッグ用のコードを LLDB のコマンドに寄せると、どのプロジェクトでも使えるし #ifdef DEBUG のことも気にしなくていいようになるので、ライブラリにするより LLDB のコマンドで実装するようにしています。

おわりに

iOSDC はあの規模の人数を滞りなく終えていたので、とても初回のイベントとは思えませんでした。 さらに懇親会のビールの充実感がすごくて、COEDOの鞠花がビールサーバーであったり BREWDOG やよなよなエールがあったりなど、お酒好きの自分からすれば最高の懇親会でした。

iOSDCが最高だったので写真で紹介する #iosdc

良いカンファレンスは良いビールから。

これだ!!!と思い、これからこのフレーズは使っていきたいなと思いました。

本当にこのとおりで、実行委委員長の長谷川さんはじめ、スタッフの皆さん、本当にお疲れさまでした!!!! 最高な2日間を過ごせました、ありがとございます!!!

おしらせ

iOSDC では話せなかった、もっと LLDB にフォーカスを当てた内容を発表させていただく予定です。

定員は超えていますがおそらく当日キャンセルも出ると思うので、今申し込んでも参加できる可能性が高いかなと思います。