iOSDC 2018 に参加して登壇してきた

f:id:banjun:20180907230358j:plain

パンフ,うれしい。

プロポーザルと登壇

iOSDCには2016,2017と参加してきて3年目,初めてプロポーザルを出した。30分枠とLT枠と出して,30分の差分更新のトータルパフォーマンスのほうが採択された。VFLの話もしたかったな...?

5000行のUITableViewを差分更新する by ばんじゅん🍓 | プロポーザル | iOSDC Japan 2018 - fortee.jp

https://fortee.jp/iosdc-japan-2018/proposal/3ae8b788-8df5-4f1e-8862-7c5170a14d36

今回プロポーザルを出したのは,そろそろ勉強会慣れもしたし喋れそうかな?と思ったのもあるが,まわりで,プロポーザルを出す,いくつ出す,15分と30分と両方出したほうがいいらしい,みたいなプロポーザル提出時点での盛り上がりがかなりあり,雰囲気に釣られて出した部分も大きい。つまりノリである。 年間の大きめのカンファレンスというとtry! SwiftとiOSDCとあるが,どちらかというとiOSDCのほうが好きなことを喋っているという要素が大きい印象がある。言葉にしづらいが。

f:id:banjun:20180907234857j:plain

photo by mzp

f:id:banjun:20180911224529j:plain

photo by iOSDC Japan: iOSDC Japan 2018の写真を公開しました - iOSDC Japan スタッフブログ

登壇自体は緊張したのもあったが,30分喋り続ける体力のほうがつらかったかもしれない。iOS界隈でこれ以上大きいハコで喋ることはなかなか無さそうだし,いまできる範囲でいちばん経験値積めそうなことが出来ました(レベルアップ)という実績解除っぽくてとてもよい。

f:id:banjun:20180908001425j:plain

登壇中と前後はワークアウトにして心拍数をとっていた。ライブとおなじ。それなりに高い。なぜか10分くらい喋ったところが高い。

資料とまとめ

トークの内容的には,UITableViewの差分更新がなにか知らないところから入ってもメリットが分かるようになっていて,ほとんどの場合はライブラリを入れるだけで利用できるけれども,大きな行数の場合には遅くなってしまうかもしれない,そういうときにパフォーマンス解析するにはどうしたらいいだろう?という流れになっている。パフォーマンス向上ネタをいくつも持っていても,ボトルネックがそこにあるかどうかというのは勘で当たったり当たらなかったりする。Instrumentsで見れば事実が分かる。知らないボトルネックが登場したら,それはSwiftの内部や,UIKitの特徴を新しく知ることになり,それはそれで知見になる。そういう手段も持ち合わせておくと気が楽になるし,差分更新をどんどん使っていけたら良い。

speakerdeck.com

togetter.com

YouTube配信もそのうちあるはず?

実況の様子を後からみるの楽しい。まとめてくれたかっくんありがとう。 登壇で言いたいことってなかなか言葉で伝えづらいものだなと感じたが,ツイートをみるときれいにまとめられていて,そう言えばいいのかみんな賢いすごいと思いながら読んだ。

記述ミスへの指摘を実況+Q&Aでしてくれた方もいて,もやっとしたままにせず共有されたのは良かった。(speakerdeckはその後修正して更新した,はずだが,反映されてないかも...)

Ask the Speakers

そうか登壇するとAsk the Speakersもやることになるのか~と感動していた。来てくれた方は本当にありがとうございます。うれしかった。 人がこないときは並行しているセッションのスピーカーと喋ったりというのも良い機会だった。

登壇練習

いままでの他の登壇では発表練習らしい練習をしたことがなかったが,今回は2回発表練習をした。社内勉強会での発表練習と,Timersでの登壇練習会。

mokumoku-ebisu.connpass.com

つきあってくれたみなさんには感謝している。特に,Timersで,他のスピーカーの練習をレビューする側で4時間くらい(??)やっていて,これは聴いてフィードバックするというのは大変なことだなと実感した。 フィードバックはそれ自体が良い影響があるが,発表練習がなによりも良いのは,その期日までに進捗が出る,ということで,これは助かった。さすがに作らずに練習はできない。技術的内容とか構成以外だと,どこが意外とウケないとか,ここ意外とウケるんだ,とか,そういうのが役に立った。録音しておいたので後でどのスライドが何分くらいか分かるし,自分の発表を聴くことで,喋りの反省と喋る内容を記憶するのに,役に立った。

もくもく会で資料準備

茅場町モバイルアプリもくもく会 #2 - connpass

7月から, @shiozaki_study さんと,もくもく会の主催をするようになったので,そこでも登壇資料を作っていた。Instrumentsのスクショを集める作業が意外と難しくて何度かやりなおす必要があったので。もくもく会だから,コードを書かなければならないということはない。が,コードを書いて進捗だしている人たちが楽しそうだったので,やはり今度はコード書けるように準備をしておこうと思いながらスクショ作業をした。また9月も開催するのでぜひ来てね(いつも参加枠が一杯になってから宣伝してしまうやつ...)。

茅場町モバイルアプリもくもく会 #3 - connpass

iOSDC当日のいろいろ

トークセッションが並行でいくつもあるので,選ばなければいけない。Interactive Round Table (IRT)もあり,アンカンファレンスもあり,スポンサーブースまわりで喋るのもよし,Ask the Speakerも行きたいのあるし,どこに行くべきか。聴かなかったトークも良いものであるという情報が流れてきて,やはり・・・あとでチェックしなくては,となる。まるでWWDCのときのように,どんどんとチェックすべきタスクが積まれていく,というような話を聴いた。なるほどその通りである。

アンカンファレンスの自由さもよい。(わいわいswiftcに行った)。休憩時間ごとに,「フリーのIRTもひとつ用意してあります」ってアナウンスされてると,これは何かテーマを出したらいいんじゃないかって思いをめぐらすことになるのもよい。macOSの話をするまでには至らなかったのだけれど。予定されていたIRTのなかでは,autolayout/storyboardに行った。Visual Format Languageこそ至高。時間がいくらあっても足りないのでは感があった。VFLの項目だけネタとして出して,登壇の時間なので登壇してきたら,VFLネタそのあとのIRTで拾ってくれていたらしい。

f:id:banjun:20180907234643j:plain

それとは別に,コードレイアウトアンケートがあったのでVFLの領域を書き足しておいたのだが,増えていたらしい・・・一体誰なんだ・・・。

f:id:banjun:20180907235017j:plain

ある日の朝はドーナツが置いてあった。すくなくとも私が辿り着いたときにはフレンチクルーラーはなかった。

f:id:banjun:20180907235200j:plain

ある日の朝は野菜になっていた。

macOS nativeシンポジウム

なぜか,たまたま,iOSDCに隣接して,macOSネイティブ勢のシンポジウムがあった。たまたまなのでiOSDCの話に混ぜるのは不自然かもしれないが,なぜかたまたまなので混ざることもある。iOSDCのオープニンの懇親会とかぶっていたが,レアリティという意味ではmacOSネイティブのほうが高いので,これに参加していた。

macos-native.connpass.com

macOSネイティブ勢はすぐ昔話になりがちという印象があるが,シンポジウムのトークはむしろ,歴史を観察・分類し,現時点ではこうなっている,という話の傾向だった。いま作っているmacOSアプリをどうするか,これから作るものはどうするか,という視点で勉強になった。

とはいえ懇親会で老人会のようなネタ振りをして盛り上がってしまったのも事実で,Instrumentsの前って何をつかってましたっけ?みたいな話が出来る場があって本当に楽しいなと思った。

なぜ60人キャパに対し30人しか集まらないのか・・・。みんなmacOSアプリ使ってるはずだし開発環境も既に整っているはずだし,もっとネイティブアプリ自作しようよ。

おわりだよ~

f:id:banjun:20180907234747j:plain

f:id:banjun:20180911230111j:plain

次は俺コン&リジェクトコンで。聴きたかったトークあるから楽しみ。iOSDCで話せなかった人とも話したい。話しかけてくれるとうれしい。。