iOSDC 2017 Reject Conferenceについて振り返る #iosdcrc

これはiOSDC Advent Calendar 2017 23日目の記事です。*1
前日も前々日もその前も@kiko_twさんでした。書きすぎですね。

ブログを書くまでがiOSDC JAPAN 2017です! #iosdcで本編については書いているので、後日談としてRejectConについて書きます。

iosdc-reject-conference.connpass.com

iosdc-reject-conference.connpass.com

Day 1

地元での予定や、Swift Dayが開催されるため、10日ほど帰省しつつ、リモートでゆっくり仕事をしていた*2ので、@kongmingtrapさんや@es_kumagaiさんに、福岡前入り組で集まりましょうよと話した結果、さくらインターネット株式会社様の福岡オフィスでみんなで見る会をした。

classmethod.connpass.com

参加者の半分が東京でよく見る人たちで笑った。

終わった後のイカ🦑は最高でした。 f:id:yutailang0119:20171225002202j:plain

Day 2

Day 1は完全に遊んでただけでしたが、Day 2は登壇枠でした。
ネタは CodableでAPI通信を再発明にしました。
去年のSwift Advent Calendarで書いた iOSでライブラリに頼らず、URLSessionを使ってHTTP通信する という記事のアップデートを図ったのですが、自分の中で腑に落ちた状態まで持って行けず、正直苦い思いをしました。
物知り顔で話していますが、ボク自身、まだまだURLSessionについての知識不足を感じたので、次回機会が来るまでには、 もっと調べておきたいと思っています。
Swift Dayでも素振りをさせてもらったのですが、時間の使い方とコードの並べ方が難しく、最初に予定していたライブコーディングは諦めました。
もっとライブコーディングについても、上手い人の動画を見て、練習する必要があると感じました。

こちらの記事でも言われていることですが、ボクもAPIKitの作りと思想が大好きなため、どうしても車輪の再発明感が否めないので、そこも課題かなと思っています。

URLSessionが使いやすくなってきたので、すべて自分で書くのも十分ありかなとは思いつつ、結局APIKit相当のことを書くようなことになるので、その手間はなるべく少なくしたいところではあります 🤔 なので比較的シンプルにそのあたりを解決してくれるAPIKitはやはり良いものだなと思っています。

medium.com

発表の中でも紹介していますが、URL Session Programming Guideというドキュメントがあって、これは読み物としてもおもしろいので、おすすめです。

developer.apple.com

俺コン

時間軸が前後するし、余談だけど、俺コンの運営もした。
めっちゃよかったので、来年もしたいですね。

orecon.connpass.com

orecon.connpass.com

俺コンの運営打ち上げでは、うまい肉を食べた。
なんというか、言語能力に難が出るほど、うまいとしか言えなくなった。 f:id:yutailang0119:20171225004552j:plain

まとめ

以上、これでボクのiOSDC JAPAN 2017は本当に終わり!(Advent Calendarも書いたし)
来年も開催されるといいですね!!!

*1:遅刻しました。

*2:iPhone X対応してた、めっちゃしんどかった

2017年のカンファレンススタッフ業が一旦終わった

今年は3つやった

http://yutailang0119.hatenablog.com/entry/builderscon-2017-tokyo

http://yutailang0119.hatenablog.com/entry/pycon-jp-2017

http://yutailang0119.hatenablog.com/entry/iosdc-japan-2017

正直詰め込みすぎたなと思いましたね、これ全部8~9月開催ですもんw

カンファレンススタッフで学んだ(でいる)こと

iOSDC JAPAN 2017のLTでも話したことなのですが、少し今年の振り返りをしたいと思います。

  1. 格段に物事の見方、解釈の仕方に幅ができた
  2. iOS以外も書いた (Python, Go, etc…)
  3. WEB+DB PRESSに名前が載る
  4. スケジュールの組み方
1. 格段に物事の見方、解釈の仕方に幅ができた

良くも悪くも、カンファレンス中に落ち着きができました。
特に今年のPyCon JPでは判断をする(任される)場面が多かったですが、「PyCon JPだったらこうやるのがいいよね」という考えの下での判断をできたと思います。
周りからの評価はPyCon JP 2017のエントリーに書いた通り

2. iOS以外も書いた (Python, Go, etc…)

もちろんiOS/Swiftが大好きで、まだしばらくはこれでお賃金を稼いでいきたい!!!
去年の興味はiOS + Pythonでしたが、今年は完全にiOS + Goです。
Goは自分の趣味のプロダクトとしても書いていて、良い循環が生まれました。
(もちろんPythonも書いた)

3. WEB+DB PRESSに名前が載る

buildersconのイベントレポートでvol 101に掲載されます。
書籍や雑誌に寄稿するって、なかなかハードルの高い実績だと思っていたので、こんなに早く解放できて嬉しい限り。
機会をくださったbuilderscon運営スタッフの皆様、技術評論社の稲尾さん、ありがとうございます!

4. スケジュールの組み方

最大の問題はこれです。
みんなカンファレンスの開催近すぎ。今年は2週連続で早稲田に行きました…
その中でアプリ作ったり、LTの準備したり、マグロ発注したりと、相当忙しい時期もありました。
終わってしまえば、全部楽しかったですが、次回はスケジュールの見積もりをしっかりしたいと思います…
とはいえ、すでに来年のbuildersconとPyCon JPは両方9月開催が決定しております😇
もし、これ以外のカンファレンスにも「yutaroの力を貸してくれ!」というようなオファーがありましたら、冬場の開催でお願いいたします←

そして、スタッフ業だけで有休を4日も使ってしまった😇
仕事休みすぎで解雇されないか心配だったよ…
(とはいえ、基本的に裁量は自分に預けてもらっているので、感謝はしています)

地方での生活に憧れたり、海外にも興味があったりで、来年以降がどうなるかーは全くの未定ですが、引き続きよろしくお願いします!!!

ブログを書くまでがiOSDC JAPAN 2017です! #iosdc

3つ目

iOSDC JAPAN 2017にボランティアスタッフ、スピーカーとして参加しました!

昨年は個人スポンサーでの参加でしたが、今年はボランティアスタッフとしての参加、またLTスピーカーとしても登壇しました。
2016で実行委員長の @tomzohさんと知り合って、buildersconでもお世話になりました。
また、会場が早稲田大学理工学部西早稲田キャンパスで、昨年、今年とPyCon JPでも使用していて、ある程度の勝手を知っていたので、お役に立てるかなとの思いで、スタッフ参加をしました。

iosdc.jp

何をやったか

スタッフとして

担当したことは、大きく以下のことです。

  • 受付系の諸々
  • Track Bでの進行
  • LTでの登壇

前の2つのカンファレンスが、年間を通しての活動だったことに比べると、かなり楽をできましたw それでも副隊長のandoさんや @kikumotoさんなぜか 頼っていただき、老婆心ながら、いろいろ口出してしまいましたが、お役に立てたのであれば、幸いです。

また、もうひとりの副隊長である @motokieeさんの活動量が凄まじかったので、ボクも見習った動きをしたいなぁ。

参加者として

LTスピーカーとして登壇しました!

iosdc.jp

LT内でも話したのですが、 200字程度 と設定されている概要部分に700字を超えるCfPを出して、これ以降フォームにバリデーションをかけられました。
すいませんでした… また、結構エモめの話になってしまったのは反省です…

speakerdeck.com

来年は技術トークで採択されたいので、修行を積んできます。

去年のPyCon JPに続き、今年もスピーカーの写真を撮ってもらえて、嬉しい限り

f:id:yutailang0119:20170922122931j:plain

あと、インターネット上での存在だった @omochimetaruさん@tarunonさんと話すことができたので、Twitterアイコンが入っているネームカード最高ですね!!!
もっとDiscordでも発言していきたい…

まとめ

自分がコアをしていないカンファレンスでのスタッフは今年唯一だったのですが、多くの学び、気づきがありました。ぜひ輸入していきたいと思います。
また、本業に1番近いのは、iOSDCなので、来年も何かしらで関わらせてもらえたらいいなと思います。 (残念ながら来年のPyCon JPは会場が変わりますが、なにかしら今までの経験を活かせるのではと思います)

このiOSDC JAPAN 2017で今年のカンファレンス業はおわり!

最後にお気に入りの写真達をあげておきます f:id:yutailang0119:20170922123819j:plain f:id:yutailang0119:20170922123823j:plain

ビールを激写されるtomzohさん

f:id:yutailang0119:20170922123828j:plain よくわからないメンバーだけど、よさ

ブログを書くまでがPyCon JP 2017です #pyconjp

2つ目

PyCon JP 2017にスタッフとして参加しました!

昨年に引き続き、PyCon JP 2017のスタッフをしました。
去年より他でやることが増えたため、100%の注力をしたかと言われると難しいですが、今年も楽しめました!!!

pycon.jp

何をやったか

スタッフとして

昨年とは、チーム編成が変わったため、メディアチームからシステムチームに移籍しました。

今年もボクに求められてる大きなタスクの1つはモバイルアプリです。

PyCon JP 2017

PyCon JP 2017

  • PyCon JP
  • ナビゲーション
  • 無料

今年もiOSAndroid共にアップデートをすることができましたが、満足度は40%の出来となってしまいました。
原因としては、チーム編成が行われたことで、良くも悪くも人が流動したため、なかなかチームとしての動きまで形作れなかったなぁという思いです。
課題としつつ、次回はよりよいものにしたいと思います。
(なお、App Storeに上がっているものをiOS 11で開くと、クラッシュして開けないという深刻な問題があることが判明しています。Xcode 9/Swift 4対応してデバッグビルドすると問題がないので、原因を調査中です。)

とのことなので、リリースすれば直ります!

ただ、去年に比べると、Pythonを読んだし、書いた気がしますw

カンファレンススタッフ自体が初だった去年に比べて、肩肘張らずにやれたし、俯瞰的に考えれるようになったと感じられたので、自分の成長を感じました。
一般社団法人PyCon JP代表理事寺田さんにも、「yutaroは瞬発力がある」と自分がいないところでも、話してくれていたようで、非常に嬉しく思います。
それ以外にも自分が思っている以上に、自分のことを高評価してくれている方々がいて、それだけで糧になりますね。

参加者として

参加者としてはたまたまスタッフ控室に戻った時に、ライブ中継されていた@shimizukawaさんの発表が、とても興味深く、忙しい中でも立ち止まって聞いてしまいました。

pycon.jp

Pythonのprotocolについての話で、ちょうど最近SwiftのProtocol-Orientedに興味があったので、Open Spaceでshimizukawaさんと@massa142さん@takuan_oshoさんと話しました。非常に楽しかったので、別の人も交えてまた話したいです。

f:id:yutailang0119:20170922024726j:plain

まとめ

今年のPyCon JPでは、あくまで去年の延長としての活動に収まりましたが、自分の成長を感じることができて、個人としては非常に意義のある機会になりました。
多くの課題が見えたし、来年も引き続き座長の吉田さんから、「来年のアプリもよろしく頼む」 と熱烈なオファーを頂いたので、少なくともアプリはやります。
何より、ボクの社外活動の代名詞になっていて、外部の方からの評価をいただいてますし、ボク自身、テスト的にライブラリの入れ替えをしてみたりしているので、やらないということはないですね。 そんなボクと一緒にPyCon JPのモバイルチームで活躍してくれるAndroid担当とデザイン担当を募集中です。

とりあえずXcode 9/Swift 4対応終わらせないと。

ブログを書くまでがbuilderscon 2017 tokyoです #builderscon

1つ目。1ヶ月以上経ってしまいましたが、やっと落ち着いたので。

builderscon 2017 tokyoにスタッフとして参加しました!

昨年末に行われた第一回はボランティアとして参加しましたが、その打ち上げで @lestrratさんからリクルーティングされて、今年はコアスタッフとして関わらせてもらいました。

builderscon.io

何をやったか

担当したことは、大きく以下のことです。

  • 広報系タスク、ブログ主導
  • スポンサー様ノベルティ関連の手配
  • パネルディスカッション登壇
  • マグロ🐟

どれもそれぞれにKPTはあるのですが、やはり印象深いのは、マグロでしょうかw

blog.builderscon.io

developer.hatenastaff.com

こちらの副賞ですが、定例ミーティング(飲み)で、完全に思いつきで話したことが、スタッフ一同に刺さってしまい、実施の方向に進みました。
発案してしまった手前、調査と段取り、発注を担当することに。

本マグロ一尾を注文したのは、人生初の経験になりました。

f:id:yutailang0119:20170922015850j:plain

不用意な発言をすると、面白いことになります。これがカンファレンススタッフの醍醐味です←
正直、開催までの時間も短く、 あたふたしましたが、参加者の皆様、主賓の id:Soudai とそのご家族にも、大変喜んでいただけたようで、大成功となりました!
会場を提供してくださった株式会社はてな様、そして、主賓なのに多大な工数を使ってくれたそーだいさん、大変ありがとうございました!!!
さて、来年はどうしたもんか…🤔

それ以外にもイベントレポート記事の執筆をさせてもらいました。
なんと天下の WEB+DB PRESS です!!!
10月発売のvol 101に掲載されます。 (TBD: リンク)
まさか、こんなに早くWEB+DB PRESSの執筆者欄に載る実績を解放できると思っていなかったので、非常に嬉しいです。
手を上げてみるものですね。

まとめ

マグロが終わったことで、1ヶ月遅れでボクのbuilderscon 2017 tokyoは終わった訳ですが、すでに来年の動き出しが、少しずつ始まっています。
今年のカンファレンススタッフ業まとめ記事でも書きましたが、来年以降の動き方は考えつつ、来年のbuildersconにも関わりたいなと思っています。
まずは、11月の肉、やっていくぞ!!!

iOSDC Japan 2017にCfPを出しました! #iosdc

周りのレベルが高く、すでに少し心が折れ気味ですが、5つ出したので、まとめておきます。 iosdc.jp

1. iOSDCだけではもったいない!iOSアプリケーションエンジニアの他言語コミュニティ生存戦略 [LT]

iosdc.jp

以下はCfPでまとめきれなかった部分も含んだ概要です。

PyCon JPでiOSアプリ開発を担当していたり、buildersconのスタッフをしたりと、iOS/Swiftに限らないコミュニティに属しながら、学んだことやiOSアプリエンジニアとしての価値、他言語カンファレンスに参加することの意義についてお話します。
私は以下のような不安に、日々怯えていました。

  • Appleが大きく方向転換したら生き残れるのか…
  • 自分の価値は、多言語のコミュニティ内であるのか..
  • Swift以外の言語は仕事で書いてないけど、いざ放り込まれた時に、キャッチアップしていくためには…

これらの不安はiOSアプリエンジニアに限った話ではないとは思いますが、特にiOSという独特な環境の下での生きている我々は、サーバーサイドやインフラについて怖いというイメージが先行してしまっているのではないでしょうか。 このトークでは昨年から他言語のカンファレンススタッフとして活動していく中で感じた、コミュニティでのiOSアプリケーションエンジニアとしての生き残り方を紹介します。聞いた方が、まずは他言語のカンファレンスに足を運んでくれることが目標です。

iOS以外のプログラミング言語カンファレンスのスタッフもしている経験から、他のコミュニティにも飛び込んでみようという話を5分で話します!

2. CodableでAPI通信を再発明 [30min]

iosdc.jp

iOSアプリ開発では、WebAPIとJSONでのやり取りがほぼ不可欠となっています。また、巨大な通信ライブラリに依存した実装がほとんどで、よくわからずに使われていることもあるのではないでしょうか。 このトークでは、初級者向けにURLSessionとSwift 4で追加されるCodableを組み合わせ、一般的なiOSアプリで想定されるWebAPI通信を実装してみることで、ライブラリの優位性、必要可否について検証してみます。 ライブコーディングにも初挑戦したいと思います。

ボクの中での、本命です!!!
URLSessionを使ってAPI通信を行い、サードパーティライブラリを使うメリット、デメリットについてお話したいと思っています!
ライブコーディ (もどき) にも挑戦します!!!

3. iOSアプリエンジニアのためのCocoa Appコトハジメ (iOSDC駆動開発) [15 or 30min]

iosdc.jp

日夜iOSアプリを作る我々は、iOSと同じくらいmacOSに触れているはずにも関わらず、Cocoaフレームワークは敬遠されがちです。かくいう私もやるやる詐欺で手付かずでしたが、今回のiOSDC駆動開発でAPIクライアントアプリを作ってみました。【絶賛作成中!!!】このトークでは、取り組んでみてわかったiOSとの違いと共通点の共有、実際にしてしまった勘違いや躓きポイントを赤裸々にお話し、皆さんがCocoaフレームワークと仲良くなるきっかけになればと思っています。

iOSDC駆動開発で作っているCocoa Appについてのトークです。macOSのアプリ作成は初めてのチャレンジで、ハマりどころがかなりありますが、iOSアプリエンジニアのみなさんがチャレンジするきっかけになるようなトークにしたいと思います。

4. アプリ譲渡、それは突然訪れた ~明日は我が身でも、過剰な不安をしないために~ [15min]

iosdc.jp

「アプリ譲渡?そんなの自分には関係ないでしょ?」 そう思っていた時期がボクにもありました。 突然、アプリ譲渡になるという知らせ。調べてみても、中々有益な情報には出会えません。不安に駆られながらも、ボクはアプリ譲渡という実績を解除しました。 このトークでは、譲渡元、譲渡先それぞれの操作をしてみた実体験から、事前準備、移行作業、事後作業で行ったことを解説し、明日アプリ譲渡することになった時に、少しでも不安を払拭できるようなお話をします。

昨日のSwift愛好会で話したネタなのですが、実は現在絶賛ハマり中で、途中までしか話せていません…
iOSDCまでにはまとめられると思うので、完全版でお話できればと思っています。

5. アプリ譲渡、それは突然訪れた ~明日は我が身でも、過剰な不安をしないために~ [LT]

iosdc.jp

4の話のLT版CfPです。がんばって5分にまとめます。

以上、5つ!!!

正直、もっと熟考して、数より質で勝負してもよかったかなぁとも思っています。
高度な話ではないかもしれませんが、よろしくお願いします!!!

WWDC 2017 keynote 個人的まとめ #wwdc

今年もやってきましたWWDC!!!

今年こそは現地で参加したいと思っていましたが、見事に外れました。
転籍もろもろでお金がなかったので、実際行ってたら生活やばかったと思います。

今回はヤフー株式会社 LODGE様で行われたWWDC Extended Tokyo 2017 で参加してきました。
いつも家で1人だと、睡魔との戦いなので、みんなで集まって見れるのはよかったです。

とりあえずメモとして公開で、後で直す

イントロ by Tim Cook

16million の登録 5300人の参加者 75カ国から

tvOS watchOS macOS iOS すべてのOSがうまくいっている

今回は6つのトピック

tvOS

Apple TVで検索が楽になっている 50のパートナーによって、数多くのチャンネルが選択できるようになった amazonがパートナーに参加、prime videoも追加

Apple Watch (watchOS)

  • watchOS4
    • Face
      • Siriが欲しい情報を、場所、時間から推論して、パーソナルな情報をFaceに表示してくれる
      • サードパーティアプリにも対応
      • 万華鏡Faceの追加
      • ウッディ、ジャシー、バズ・ライトイヤーのFaceが追加
    • ACTIVITY
      • よりパーソナライズ
    • ジムのマシンとの連携
    • Music
      • アートワークを表示させることで、視覚的にわかりやすく
      • workoutアプリにも組み込まれ、使いやすくなります。
    • Dockは垂直UIに変化
    • Background機能の充実
    • Bluetoothの拡張

Mac (macOS)

  • macOS Sierra -> macOS High Sierra
    • Safari
      • Speed (World fastest desktop’s browser
      • Autoplay bloking
      • Intelligent Tracking Prevention
    • Mail
    • Photo
      • 表示のsort、filterが充実
      • 顔認識に名前をつけると、他のデバイスにも同期
      • 編集機能がPhotoshopレベルに充実
      • Photoアプリで作ったアルバムをサードパーティで印刷できる
    • Data
      • HFS -> AppleFile System
        • iOS 10.3で使われたやつ?
    • Video
      • H.264 (4k対応?)
      • Metalの活躍
    • Metal2
      • Up to 10x draw call
    • DeveloperKit
      • Metal for VR
      • Stream VR SDK
    • リリース
      • macOS High Sierra betaは今日から
      • 6月末にPublic beta
      • 秋に正式リリース
  • 新型iMac
    • 21.5-inch
    • Retina 4K 21.5-inch
    • Retina 5K 37-inch
      • VRコンテンツを作るならこれ
      • 64GB RAM版
  • 新型Mac Pro
    • Kabylakeを搭載
  • iMac Pro
    • 黒い!!!!!!!!
    • 27-inch型と同じフォルムだが、workstationクラスのパフォーマンス
    • 排熱効率の改善
    • 8-10-18 Code Xeon Processor
    • Faster code compiling

iOS

Installed Base iOS 10: 86% Android 7: 7%

  • iOS 11
    • Message
      • App Drawerが新しく
      • Message in iCloudで全てのデバイスで同期
    • Apple Pay
      • Apple Payの50%はアメリカの小売業によると推測される
      • 個人間送金に対応
    • Siri
      • アイコン変わったね
      • 発音がDeep learningで進化
      • 翻訳 (日本語は未対応)
      • SiriKit
      • Siriはコンテキストを理解できるようになる
        • 時間や場所で、ほしいと思われる情報を出せるようになる
    • Camera
      • H.264でより鮮明な写真に
      • Depth API
    • Photos
      • 川の流れる画像のフレームを結合して、いい感じの画像にしてくれる
    • Control Center
      • デザインがかなりよくなった
    • Home Screen
    • Notification Center
    • News
      • Siriが最適なニュースをキュレーション
    • 文字入力
      • 既に見たことがある文字を学習していて、サジェストに出してくれる
    • Map
      • モールの内部のMapにも対応 (Tokyoも対応)
      • 空港にも対応
      • ナビは法定速度、車線の指示もしてくれる
    • Do not disturb Driving
    • HomeKit
      • Speakerに対応
      • 周囲の人とパーティープレイリストを作成して、みんなで1つのプレイリストを作成できる
    • Apple Music
      • 誰がどんな音楽を聞いているのかを表示 (公開、非公開を設定可能)
      • MusicKit: Apple Musicにフルアクセス可能
    • AppStore
      • Todayタブの追加
        • 毎日新しいアプリを見つけることができる
      • Gamesタブの追加
      • Appsタブの追加
      • Searchタブが1番右に移動
      • 詳細画面のデザインがかなり変更されている
    • MachineLearning
      • バッテリーを監視、充電を学習して、消耗を減らす
      • Core ML
    • AR
      • ARKitの提供
        • Wingnut AR
        • Micro softのMRに近い
    • iOS 11は今秋リリース
    • Developer betaは今日から

iPad

  • iPad Pro
    • 10.5-inch
      • Full Screen キーボード
      • JISキーボードもサポート
    • 120Hzのフレームレート
      • 24Hz, 48Hzにも自動で対応できる
    • Camera
  • iPad+iOS 11

Apple Music

  • HomePod
    • Rock the house: 大音量
    • Spatial awareness
    • Musicologist
  • Home assistant