koogawa blog

iOS、Android、foursquareに関する話題

Stack Overflowで最も多く支持されたiOS関連の質問ベスト10(2019年版)

f:id:koogawa:20191207224439j:plain

どうも、koogawa です。

今年は Stack Overflow の reputation がついに 6,000 を超えました🎉

f:id:koogawa:20191207224726p:plain

そんなわけで、とうとうiOS アドベントカレンダーも最終日ですね! 今年も昨年に引き続き「今年Stack Overflowに投稿されたiOSに関する質問」の中で、Vote数(投票数)が多かった質問、つまり デベロッパーから支持の多かった質問 をまとめてみました。

それでは10位から順に見ていきましょう!

※2019年12月16日(日本時間)時点での情報を元に集計しています

第10位:Xcode 10.2 で iOS 10 未満のシミュレーターを動かそうとするとクラッシュする問題(61票)

stackoverflow.com

さて、今年の第10位に輝いたのはこの質問です。Xcode 10.2 で iOS 10 未満のシミュレーターを動かそうとすると、次のエラーを吐いてアプリがクラッシュするという内容です。

dyld: Library not loaded: /usr/lib/libauto.dylib Referenced from: /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation Reason: no suitable image found. Did find: /usr/lib/libauto.dylib: mach-o, but not built for iOS simulator

これはコードベースが Swift の場合のみ発生する問題で、Objective-C では発生しないとのことです。

この問題の原因ですが、結論から言うと Xcode のバグだったようです。

https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_1_release_notes

ワークアラウンドとして、/usr/lib/swift ディレクトリをシミュレータのランタイムルートに作成することにより、この問題を回避できるよ!と簡潔に説明した回答がベストアンサーに選ばれていました。

私はこの問題には直面しなかったんですが、質問・回答ともに多くの票を集めていることから、世界中の開発者がこのバグの影響を受けたのではないでしょうか。

第9位:Xcode 11.2 で Module compiled with Swift 5.1 cannot be imported by the Swift 5.1.2 compiler が出る問題(63票)

stackoverflow.com

Xcode 11.0 でコンパイルされたフレームワーク (今回の例では RxSwift)があり、これは Xcode 11.1 でも問題なくインポートできました。しかし、Xcode 11.2 にアップデートしたところ

Module compiled with Swift 5.1 cannot be imported by the Swift 5.1.2 compiler

というエラーが出てしまいました。私はこのエラーの対処には慣れており、Xcode 11.2 を使用して RxSwift を再コンパイルすれば解決できることを知っています。しかし、Swift 5.1 の主な機能は「モジュールの安定性」ではなかったのでしょうか?モジュールの安定性が得られたため、フレームワークは新しい Xcode のリリースごとに再コンパイルし続ける必要はないという印象を受けましたが、明らかにそうではありません。このようなことが起こる理由を説明できる人がいればとても嬉しいです。という質問です。

最も多くの票を集めた回答は、

WWDC のビデオ https://developer.apple.com/videos/play/wwdc2019/416/ で説明があるよ!フレームワークのビルド設定で

BUILD_LIBRARY_FOR_DISTRIBUTION = YES;

を設定すると、Xcode 11.0(Swift 5.1)を使用してコンパイルしたフレームワークXcode 11.2(Swift 5.1.2)でコンパイルできるようになるよ!

という内容でした。しかし、これでもエラーが発生するというコメントも寄せられ、今現在もベストアンサーには至っていません。

第8位:Xcode 10.1 が iOS 12.2 をサポートしてない問題(66票)

stackoverflow.com

はい、出ました!Xcode x.y が iOS x.y をサポートしてない問題です。数年前からこの企画をやっていますが、この手の質問はホントに毎年出てきます。

今回も DeviceSupport をネットから入手して、

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

にリネームしてコピーすれば解決するよ!という回答がベストアンサーに選ばれていました。(この方法は非公式の解決法なので自己責任で!)

第7位:Xcode 11 の debugger がものすごく遅い問題(68票)

stackoverflow.com

Xcode 11 にアップデートしてから debugger がものすごく遅くなってしまったよ、という内容です。とくにブレークポイントを貼ったときが顕著で、プログラムがブレークポイントに到達すると30秒ぐらい停止してしまうとのことです。

実はこれ、私も感じてました・・!ブレークポイントを貼って、さらに変数の中身を表示しようとするとインジケーターが30秒以上回った状態になるんですよね。

configurations -> Manage schemes -> Edit scheme -> Run -> Diagnostics tab の順に開いて、各チェックボタンを外せば速くなる、という回答がもっとも票を集めていましたが、「解決しない」「そもそも"遅い"ってどういうこと?」というコメントが多数寄せられています。この質問には2019年12月時点でもベストアンサーが選ばれていません。

第6位:iOS13 で UISegmentedControl の色を変える方法が変わってる問題(71票)

stackoverflow.com

iOS 12 までは tintColor で UISegmentedControl の色を変えることができていたけど、iOS 13 から効果がなくなった!という内容です。

たしかに、iOS 12 まではtintColor で色を変えることができました。

f:id:koogawa:20191219220508p:plain

しかし、iOS 13 からは UISegmentedControl の見た目が変化し、色を変えるプロパティとして selectedSegmentTintColor が追加されています。

f:id:koogawa:20191219220525p:plain

このプロパティの使い方や、色を設定する上での注意点について詳しく解説した回答がベストアンサーに選ばれていました。

参考

第5位:iOS 13.2 の WKWebView が謎のエラーを吐き続ける問題(83票)

stackoverflow.com

iOS 13.2 beta をインストールして以来、ずっと次のようなエラーが出続ける問題です。

2019-10-10 12:10:47.867830+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:47.908698+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:47.908814+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:47.934169+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:47.947668+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:47.964375+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.193556+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.193723+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.193941+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.194012+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.195679+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.200432+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.207225+0200 (...) [Process] kill() returned unexpected error 1  
2019-10-10 12:10:48.207298+0200 (...) [Process] kill() returned unexpected error 1 

Storyboard 上の WKWebView を含む ViewController をロードするたびに発生しますが、クラッシュはしないようですね。

実はこの原因は WebKit (またはOS自身)のバグにあるようです。

ちなみに2019年12月現在、このバグはまだ直っていないようです😢

第4位:ダークモードを回避することはできるの?問題(152票)

stackoverflow.com

はい、出ました!ダークモードに関する話題です!

iOS 13 からダークモードが追加されるけど、私は対応する予定はないよ!なんとか回避できない?という質問ですね。このQ&Aを見た方も多いのではないでしょうか!?

Info.plist の UIUserInterfaceStyle に Light を設定すると回避できるよ!という回答がベストアンサーに選ばれていました。しかし、この回答に対するコメントを見ても分かる通り、この回避策だと審査が通らないという声もあります。一番確実なのはダークモードに対応すること、なんでしょうね😅

第3位:Provisioning profile doesn't include 〜 エラーが出ちゃう問題(183票)

stackoverflow.com

第3位はプロビジョニングプロファイルに関する質問でした!

いつものようにアプリを実機ビルドしようとすると、次のエラー出てしまって困っている、という内容ですね。シミュレーターでは起こらないようです。

  1. Automatic signing is unable to resolve an issue with the "LearningSpriteKit" target's entitlements. Automatic signing can't add the application-identifier and keychain-access-groups entitlements to your provisioning profile. Switch to manual signing and resolve the issue by downloading a matching provisioning profile from the developer website. Alternatively, to continue using automatic signing, remove these entitlements from your entitlements file and their associated functionality from your code.
  2. Provisioning profile "iOS Team Provisioning Profile: #####.LearningSpriteKit" doesn't include the application-identifier and keychain-access-groups entitlements.

この原因ですが、結論から言うと一時的なサーバー証明書の問題だったようです。

上記のissueが関連していて、Apple からも 558,000 の証明書が無効になったとアナウンスが出ています。

この問題により、GoDaddy, Google, そして Facebook も影響を受けたようです。

この経緯を簡潔に説明した回答がベストアンサーに選ばれていました。ちなみに、今日現在、この問題は解消されています。

第2位:iOS 13 でモーダルがフルスクリーンにならない問題(286票)

stackoverflow.com

はい、出ました!iOS 13 でのモーダル問題です。

今まで

self.present(vc, animated: true, completion: nil)

のように書けばフルスクリーンでモーダルが表示されたのに、iOS 13 ではセミモーダル(半モーダルと呼ぶ人もいる)になっちゃうよ!どうして?という内容ですね。

「問題」と書いてしまいましたが、これは立派な仕様であり、WWDC 2019 の Platforms State of the Union でもこの新しい Card Presentation について触れられていましたね。

f:id:koogawa:20191223205750p:plain

この経緯とフルスクリーンにする方法について解説した回答がベストアンサーに選ばれていました。

let vc = UIViewController()
vc.modalPresentationStyle = .fullScreen // これでフルスクリーンになる
self.present(vc, animated: true, completion: nil)

第1位:Xcode 11.2 にアップデートしたら UITextView でクラッシュする問題(339票)

stackoverflow.com

今年1位に輝いたのはあの UITextView でクラッシュする問題でした!!

Xcode 11.2 にアップデートしてアプリをビルドすると

*** Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException', reason: 'Could not instantiate class named UITextLayoutView because no class named UITextLayoutView was found; the class needs to be defined in source code or linked in from a library (ensure the class is part of the correct target)'

というエラーログをとともにアプリごとクラッシュするけどなんで!?という内容です。

この質問には多くの回答、コメントが寄せられ、現在は Highly active question(非常に多くの回答がついたため、これ以上回答が追加されるのが制限されている状態)になっています。

Workarounds について詳しく解説した回答がベストアンサーに選ばれましたが、今現在の最良の解決方法は「Xcode 11.2.1 にアップデートしろ」ということになっています。

総括

ダークモードに関する質問は少なめ

今年発表された iOS 13 の目玉機能の一つとして「ダークモード」がありましたが、それに関する質問は思ったより多くありませんでした。技術的な質問ではなく、ダークモードを回避するにはどうしたらいいの?という質問が第4位にランクインしていたのも興味深いですね。

私が公開しているアプリもダークモードには対応しましたが、特に大きな問題もなくスムーズに進めることができました。このあたりの対応の進めやすさも質問が少なかった要因の一つかもしれませんね。

やはりモーダルの仕様が変わった影響は大きかった?

iOS 13 からモーダルのスタイルがデフォルトでセミモーダルになりましたが、やはりこれに戸惑った開発者も多かったようです。従来のフルスクリーン表示戻す方法についての質問(第2位)は300票近く集めていましたね(昨年の1位より票が多い!)。このQ&Aを参考にした開発者の方も多いのではないでしょうか?

投票数は全体的に増加傾向

投票数は年々減少傾向にあったのですが、今年は久しぶりに増加しました!昨年の1位(Xcode 9.3 から見知らぬ plist ファイルが追加された問題)が123票だったのに対し、今年の1位(UITextView でクラッシュする問題)はなんと300票以上を集めていました。

要因としては、単純に困った人が多かったのと、ダークモードの登場など、インパクトのある変更が今年は多かったからでは?と感じています。

以上、10日間に渡って2019年のランキングをお送りしました!

というわけで、12月1日から始まった iOS アドベントカレンダーも本日で終了です。エントリーされた皆様、お疲れ様でした!

来年もまた需要があればやるかも!?*1

*1:毎年読んでくれている方がいたらぜひコメントください!需要が知りたいです!

宮崎に友達が遊びに来てくれたら連れていきたい場所ベスト5

f:id:koogawa:20191201011858p:plain

宮崎IT関連勉強会 Advent Calendar 2019 の5日が空いていたので埋めてみます (技術と関係ない内容ですみません🙏)

なお、ベスト5、と書きましたが順位に意味はありません。思いついた順です。

では、さっそくいってみましょう!

第5位. 冷や汁が売ってる自動販売

宮崎ではなんと冷や汁自動販売機で買えます!美味いです!そしてちょっと高い!

第4位. 電車と空港が同時に見られる公園

運が良いと電車と飛行機の離陸が同時に見られます!

なかなかレアだと思いますが如何でしょうか?

第3位. フェニックスブルーイング

知人がやっているビールのお店です。IPAペール・エールがオススメです。毎週飲んでます🍺

第2位. The Beach Burger House

海を見ながら食べられるのがGood!インスタ映え間違いなしです!ワシはインスタやらないけど。

第1位. 肉麺 もみじ

最後はここ!本当に美味しいです!シメに「追い飯」を入れて食べるのが最高です。

宮崎中心部にあるので時間があるならぜひ行ってみてほしいです(日曜祝日は休みかも)


明日は、shogo0525 さんの登場です!

「宮崎に住むエンジニアさんに20の質問」に回答してみる

宮崎IT関連勉強会 Advent Calendar 2回目の登場です😁

今回は自分が言い出しっぺでもある「宮崎に住むエンジニアさんに20の質問」に回答してみたいと思います。

ぜひ、他の皆さんも回答して Advent Calendar に記事を書いてみてくださいね!

それでは、さっそくいってみましょう!

Q1: 名前orハンドルネームを教えてください(よければ由来も教えてください!)

koogawa と名乗っております。これは一番最初に入社した会社での社員アカウントから取りました。

Q2: 宮崎ご出身ですか?

いいえ、関東出身です。自然の多いところで子育てするという夢を叶えるため、2年前に東京から移住してきました!

Q3: 宮崎の好きなところは?(場所や食べ物などなんでも)

人混みが少ないところ、自然が多いところ、子どもたちが素直なところ、です!

Q4: 宮崎に住んで不便に感じることはありますか?

Apple Store が無いところ!AirPods Pro のような流行りの製品はまず店舗に置いてません。

Q5: 欲しい技術書はいつもどこで買っていますか?

カリーノのツタヤに意外と売ってます!あとは大体Amazon

Q6. プログラミング以外の趣味や特技があれば教えてください

クラフトビールが好きで、今まで500種類以上のビールを飲んできました🍻

あと、最近はできていませんが、子供が生まれる前はアマチュアバンドでドラムを叩いてました。

Q7: よければエンジニア歴を教えてください

2005年デビューなのでそろそろ15年になるんじゃよ👴

Q8: 好きな言語はなんですか?

Swift, Objective-C, Kotlin

Q9: 苦手な言語はありますか?

VBScript はもう触りたくないです。

Q10: 普段はどこで働いていますか?(オフィス、自宅、コワーキングスペース等)

フルリモートということもあり、働く場所はとくに決まっていません。

複数のコワーキングスペースを契約してまして、働く場所はその日に決める感じです。 雨の日は自宅で作業することが多いです。

Q11: 勉強会やセミナーなどには参加してますか?

Webナイト宮崎という勉強会に運営として参加しています。

東京や福岡で開催されるカンファレンスにも毎年遠征しています。

また、最近では Code for MIYAZAKI というプロジェクトに参加し、行政と絡みながら面白いプロダクトを作っています。

Q12: 普段やられている技術関連の情報収集方法があれば教えてください

情報収集は Twitter がメインです!

以前、地方に住むエンジニアがこの先生きのこるにはという発表したのでよろしければ!

Q13: 好きなエディタを教えて下さい

Xcode, VSCode, Android Studio を交互に使い分けています。

Q14: お気に入りのコード管理ツール、プロジェクト管理ツールがあれば教えて下さい(Git, Backlog, Bitbucket など)

仕事・プライベートともに GitHub が中心ですね!

Q15: キーボードや周辺機器にこだわりはありますか?

Apple 純正のワイヤレスキーボード(M9270J/A)を愛しています。アルミではなくプラスチック製のやつですね。今はもうメルカリなどでしか入手できません。

f:id:koogawa:20191202013214p:plain
https://support.apple.com/ja-jp/HT201186#7

Q16: 尊敬しているエンジニアやロールモデルはいますか?

CTO と呼ばれる人たちは基本的にリスペクトしています。

地方に移住したエンジニアのロールモデルはまだ少ないので、自分がロールモデルになっていけたらいいなと思ってます。

Q17: デスクトップの壁紙はどんな壁紙ですか?

Macについてくる、昼夜の時間帯で変化するやつが気に入ってます。

Q18: 「フラグが立つ」「スタックに積む」「ポインタがずれる」など、ついつい日常会話で使ってしまうプログラミング用語があれば教えてくださいな。

あのお店は UI/UX が良くない、とかついつい使ってしまいます。

Q19: よいエンジニアの条件を3つあげてください。

  • 親切なこと
  • 自走できること
  • 技術が好きであること

Q20: あなたにとってプロフェッショナルとは?

「やりたいこと」を「楽しく」やる人。

誰かの受け売りなんですが、自分の子供に「父さんな、お前たちを守るためにやりたくない仕事を仕方なくやってるんだ」なんて言いたくないですよね。


宮崎IT関連勉強会 Advent Calendar 2019、明日は mather314 さんです!

今後はStack Overflowの質問がupvoteされたときのreputationが倍になります!過去の質問にも適用

こんにちは。Stack Overflow 活動中の koogawa です。もうすぐ reputation が 6,000 を超えそうです。

f:id:koogawa:20191114094704p:plain

今朝、Stack Overflow からこんなメールが来ていたので解説します。

※そもそも reputation, upvote って何?という方はこちらのスライドをご覧ください

今後は質問がupvoteされたときも+10される

今までは自分の質問がupvoteされたとき(つまり、他のユーザーから良い質問!と認められたとき)は reputation が +5 されました。これが今後は倍の +10 になります。

f:id:koogawa:20191114095124p:plain

これまでは「良い回答」に価値が置かれていたのが、今後は「良い質問」にも価値が置かれるようになるというわけですね。この流れはなんか Quora に似てるなーと感じました*1

過去に投稿した質問にも適用

この変更は、過去に自分が投稿した質問に対しても遡って適用されるようです。再計算は2019年11月15日までに完了するようなので、自分のプロフィール画面を確認してみることをおすすめします。いきなりreputation が増えてるかも!?

***

今回なぜこのような変更が行われるか、については下記公式ブログに詳しく書かれています。

stackoverflow.blog

*1:Quoraは良い質問をした人に報酬が払われるシステムがあります

iOSDC Japan 2019 前夜祭に参加してきたよ #iosdc

今年もやってまいりました!iOSDC Japan 2019!

iosdc.jp

会場はおなじみ、早稲田大学 西早稲田キャンパスです!去年も来たのであまり迷わずにたどり着けました👍

f:id:koogawa:20190905234906p:plain

さっそく今年のノベルティであるトートバッグを頂きましたが、今話題のダークモードにもちゃんと対応している辺りはさすがだなぁ、と思ってしまいました。

f:id:koogawa:20190905234952p:plain

ビールもデプロイされていたそうですが、残念ながら私が到着したときには売り切れでした😂

聴いたセッション

仕事で遅れて参加したため、今回は所さんの「Advanced Segue (2019年のSegue事情)」のみ聴講しました。

Advanced Segue (2019年のSegue事情) by 所友太 | トーク | iOSDC Japan 2019 #iosdc - fortee.jp

speakerdeck.com

最初に会場アンケートがあり、「ご担当のアプリでStoryboardを使っている人」という質問にはたくさん手が上がりました。しかし、「Segueを使っている人」という質問になると手を上げる人は半分ぐらいに減っていました。

しかし、このセッションを聞いて Segue に対する考え方が変わった方は多かったと思います。以下、内容メモです。

  • Segueの種類
    • Standard Segue(ViewControllerを開く)
    • Embed Segue(ViewControllerの入れ子
    • Unwind Segue(特定のViewControllerまで遡る)
    • Custom Segue(なんでもアリ)
  • Segueを使うPros
    • Storyboardで完結できる部分が増える
    • prepareForSegueなどで一元管理できる
    • Apple Wayから外れない
  • Segueを使うCons
    • ViewControllerのinitializerを自分で呼べない
    • prepareForSegueが複雑になりがち
  • iOS 13 で大幅に進化を遂げた Segue
    • Segue Action の登場
    • 任意のViewControllerのイニシャライザが使えるように!
    • prepareForSegueが複雑になりがちという問題も解消!
    • Segue 良いのでは?
  • より高度な使い方
    • Unwind Segue 便利
      • どこからでも任意のVCに戻れる コードなしでUnwindできちゃう
    • Custom Segue は何でもアリ
      • 画面遷移のかわりにopenURLするなんてこともできちゃう

セッションを聴くまでは1画面:1Storyboard =Segue 使う機会はない、と思いこんでいましたが、

id: f:id:KishikawaKatsumi さんのこのツイートを見て、なるほどなぁ、と。

そんなわけで

明日もいろいろ聴いてきます!

プルリクエストを作る際に画像を Markdown から丁度よいサイズの img タグに変換してくれる Chrome extension「ImgConverter for Github」が超便利

プルリクエストを作る際、スクリーンショットを添付することはよくありますよね。

たとえばアプリのスクリーンショットを普通にアップロードすると自動で Markdown にしてくれるんですが、このままだと画像が大きすぎるんですよね😩

f:id:koogawa:20190814225249g:plain

仕方ないので、画像を予め小さくリサイズしてからアップするか、img タグを使ってサイズを 50% ぐらいにするのですが、これがまためんどくさい😤*1

そこでこんなツイートをしたところ、とても有益な情報をいただきました。

早速使わせて頂きましたが、まさに求めていたものはコレだ!という感じでした。

f:id:koogawa:20190814225916g:plain

img タグなのでサイズも簡単に調整できちゃいます👍

ImgConverter for Github は下記リンクからインストールできます。 chrome.google.com

*1:たまに img タグにしてくれるんですが、条件がわかっていません

PHPカンファレンス福岡 2019 #phpconfuk に参加してきたよ

今年も行ってきました!PHPカンファレンス福岡!

phpcon.fukuoka.jp

今年で3回目の参加です。会場はもちろん福岡ファッションビル

f:id:koogawa:20190629222457j:plain
梅雨らしい天気ですね

今年は早い時間帯の高速バスを予約できたため、3回目にして初めて遅刻せずに到着できました😂

f:id:koogawa:20190629221942j:plain
開会式前に到着できたのは多分初めて

今年もカンファレンスTシャツを頂きました!さっそくこれに着替えて会場をブラブラしてました。

f:id:koogawa:20190629222010j:plain
色が鮮やか!

今年も素晴らしいセッションが盛り沢山でした。そのうちいくつかをピックアップさせていただきたいと思います。

f:id:koogawa:20190629222025j:plain
昼休みに食べた肉肉油そば@らーめん二男坊



PHPerの採用面接でぼくらは何を伝えあうべきか

登壇者: kurikazu さん

speakerdeck.com

社員数2,000名規模のWebサービス会社でエンジニア採用を担当されている kurikazu さんによる発表です。kurikazu さんは、採用面接では自分が「何を大事にしているか」を交換するのが大事、と強調されていました。たしかに何が幸せなのかは人によって違いますよね。kurikazuさんはそういったことを普段から意識されているそうです。

面接って「通る/落ちる」みたいな話になりがちですが、応募者が会社を判断する場でもあるんだよなぁ、と改めて思いました。

3ヶ月で20万行を消すためにやったこと

登壇者:naopr さん

speakerdeck.com

メルカリの naopr さんによる発表です。PHPで書かれたプロダクトのコードをマイクロサービス化する準備として、不要なコードを3ヶ月で20万行消したときのお話でした。

最初に不要なAPIをリストアップし、それが本当に不要なのか(使われているのか)をひとつひとつ調べながら進めていったそうです。とても根気のいる作業で、結果的に Revert が必要なPRもいくつか出てしまったそうです。しかし、チームの協力もあり、3ヶ月で20万行を消すことに成功したとのことです。

naopr さんもおっしゃっていましたが、やはりチームを巻き込むのは大事だなぁ、と感じました。

子育てとスキルアップを両立するエンジニアの生存戦略

登壇者:株式会社 Fusic 岡嵜雄平( @Y_uuu )さん

speakerdeck.com

子育てエンジニアである Fusic 岡嵜雄平さんによる発表です。 パパ・ママエンジニアが、子育てとスキルアップを両立していくための生存戦略

  1. 時間を増やす
  2. INPUT・OUTPUTの質を上げる
  3. 家族を大事にする

の観点から紹介されていました。

中でも、先に登壇を決めることで自分を追い込むという「登壇駆動開発」はとても良さそうに感じました。

古き良き開発現場に新しい文化を作ろう!〜荒れた荒野を耕し、種を撒き、水を与え続ける話〜

登壇者:松村那子 (nako0123) さん

speakerdeck.com

ニゾンシステムズのナコ先輩こと松村さんによる発表です。古き良き開発現場を試行錯誤しながら地道に改善されていったお話です。

私が特に印象に残ったのは、自分の意見が通りやすい状況を作るために、まずは自分の存在を認識させる期間を作った、というところです。確かに最近入ってきた人がいきなり現場の改善を提案しても「ん?」という反応が返ってくるのはありそうですよね(日本だと特に)。松村さんが言っていた「耕して種を撒く期間は必要」という言葉はとても説得力がありました

WebAuthn で作るパスワードレス WEB アプリケーション中級者向け

登壇者:k_masatany さん

speakerdeck.com

Fusic の k_masatany さんによる発表です。"パスワードを用いない新しい認証方式" として考案された Web Authentication(WebAuthn)についてのお話です。

実はこのトークを聞くまで WebAuthn のことをよく知らなかったのですが、k_masatany さんによる解説やデモを通じて理解を深めることができました。

まだまだ対応しているブラウザや端末は少ないようですが、将来的にはこの認証方式が WEB 標準のログイン方法となっていくのでしょうね。

ライトニングトーク

今年はLTのつなぎとしてコメンテーターが何か喋る、という新システムが考案されてました!非常に良かったと思います。あの独特の「間」は発表する側も緊張するし、オーディエンス側も割と気まずいんですよね😅

さいごに

PHPカンファレンス関係者の皆様、今年も楽しいイベントをありがとうございました!

f:id:koogawa:20190629222105j:plain

とても楽しかったよ!

また来年も会いましょう〜😄