sititou70

春のLT大会まとめ

2019/05/18

トップ画像

↑これに参加してきたので、その様子をまとめます。

これは?

未来大にIT企業のエンジニアを呼び、ゆるいプレゼン(LT)大会を開くというもの。

学生参加者は 約120人
すごい

参加企業は

すごい!

なお、発表者と イベントをブログで宣伝した学生 は、懇親会に 無料でご招待
筆者は 「技術<食欲」 でエントリーしました。 ごちそうさまでした。

LTの内容

予防線

黒い四角の中身は筆者がリアルタイムに書いたノートです。
独自の解釈があったり、内容が間違っていたり、不十分だったりします。
しょうがないね

エンジニアからマネージャーになるってどういうことよ

発表者:@ryo_katsuma(クックパッド株式会社)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
マネージャーって
何してんの
基本的な仕事
予算、人事計画
目標管理
行動計画
進捗管理
評価
育成、採用
本とかを読んでみたけど、即効性はない
現場は「生物」
自分の状況に合った行動をとることが大切
出世すんの
純粋なキャリアアップではない
ただの役割の違いで、エンジニアとは対等な関係
会社によっては考え方が違うかも知れないけど、クックパッドではこういう考え
給与
一概にマネージャーの方が多いとも限らない
@ryo_katsumaさんの場合はちょっと増えました
二足のわらじは履けない
「コードを書きながらマネジメントも頑張るぞ!」
→自分がプロジェクトのボトルネックに
とはいえ、コードが全くわからない人はマネジメントできない

当時のツイートをもっと見る

開発環境(キーボード)と木こりのジレンマ

発表者:@UVB_76(GMOペバボ株式会社)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
物理キーボードの話
基盤を買ってキーボードを作る話
自作キーボードの何が嬉しいか
2つに割れているキーボードで肩こりが治る
スイッチを選べる
自分だけの重さ、押し心地
キーマップが自由
レイヤー機能
あるキーをおすともう一つのキーマップに切り替わる
「少し押すとCtrl、長押しするとShift」
自作の欠点
楽しいんだけど
接触が悪い
案外壊れる
キーマップを変えるたびにビルド&デプロイ
開発と開発環境のバランス
木こりのジレンマ
A「切れない斧で何回も切るよりも、まずは斧を研いだほうが良い」
B「そんな暇はない」
続・木こりのジレンマ
「斧を研ぎすぎて、仕事がすすまない」
→バランスが重要

当時のツイートをもっと見る

エスパー力を高める

発表者:@hsbt(GMOペパボ株式会社)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
エンジニアはエスパーだ
エラーを見ただけで問題がわかる
触ったことのないソフトウェアの使い方がわかる
デバッグツールを使って不具合を見つける
→これらはエスパー能力?いいえ、これも技術です
エスパー能力を高めるためのポイント
ポイント1:ソフトウェアの特性を見つける
ソフトウェアはどこにあるか
ソフトウェアとは僕らの心の中にある理想の動き
人間の欲求から生まれるもの
→人を知るとソフトウェアを高速に理解できる
○◯さんが作ったソフトウェアなので、〜〜な感じだろう(エスパー能力)
だれが作っているのかを知ることが結構重要
ポイント2:「品質の高い」ソフトウェアとは何か考える
システム工学からソフトウェアの動きを考える
ソフトウェアの動きをインプット、系(システム)、アウトプットとして考える
インプットと系から生まれた「アウトプットが期待通りであるかの差分が **品質** 」
期待通りに動かない場合、インプットが悪いのか、系の認識が悪いのか…
などと分解して考えることで、素早く問題を解決する(エスパー能力)

当時のツイートをもっと見る

量子コンピュータの凄さ~ IBM Q Experienceで量子ゲートを作る~

発表者:@adamu_of_FUN(学生1)

スライド

1
2
3
4
5
6
7
8
9
10
11
今日知ってほしいこと
量子コンピュータとはなにか
量子コンピュータはクラウドで体験可能
量子コンピュータとは
実物は、数m規模の大きさ
従来のコンピュータとの違い
従来は、1/0の2状態で情報を管理
量子コンピュータは、1/0の状態を同時に持てる(重ね合わせ)
IBM Q
五線譜上に量子ゲートを配置して、感嘆に量子コンピュータでの計算を体験可能
→あとは筆者がよくわかりませんでした…

当時のツイートをもっと見る

最強のChrome OS

発表者:@materialofmouse(学生2)

スライド

1
2
3
4
5
6
7
8
9
10
11
Chrome OSとは
LinuxベースのgoogleせいのOS
Chromeしか動かない
Androidアプリの互換性を持つ
→???
何が動くの?
→A.なにもうごきません
→ネットサーフィンとかはできる
Webで全ての作業を行うのは「時代が早すぎた」
最近は、Chrome OSでVMを動かし、その上でアプリを起動するという狂ったプロジェクトがある
→Chrome OSはどこに向かうのか…

当時のツイートをもっと見る

動かして理解するGitの内側

発表者:@n_atmark(クックパッド株式会社)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
Gitの内側について(.gitの中身について)
Gitオブジェクトについて
ブロブ
コミットしたファイルのこと
ツリー
ディレクトリを表すもの
コミット
コメント付きタグ
インデックスファイル
Gitのステージング情報
コンフリクト情報
Gitは内部的にスナップショットを記録していて、差分管理を行っているわけではない

当時のツイートをもっと見る

マンガサービスを開発するエンジニアに転生したが実質○○だった件について

発表者:@m4kvn(ピクシブ株式会社)

1
2
3
4
5
6
7
8
9
10
11
12
13
Palcyという女性向け漫画サービスのアプリ開発を1人でやっている
漫画サービスが持つ技術的な特徴
横スクロールするバナーが必ず存在する(カルーセルバナー)
トップにある
タップできる
左右にちょっとはみ出る
なぜ存在する?
作家が怒るから
縦に並べる→優劣を表現していると思われる
漫画アプリエンジニア=最高の横スクロールを実現するエンジニア
漫画サービスを開発するエンジニアになったと思ったら、横スクロールを実現するエンジニアになってた
横スクロールを見れば、アプリエンジニアの実力がわかる(?)
スクロールを見れば、作家と企業との関係性がわかる

当時のツイートをもっと見る

これだけは伝えたい設計の技術

発表者:河辺さんの代打で宍倉功一さん(Sansan株式会社)

1
2
3
4
5
6
7
8
9
10
11
12
13
モデリングとコンセプトの話
Sansanでは、事業の方向性やコンセプトが変わってきた
しかし、作っているアプリは同じ
コンセプトが変わってもアプリは変わらない
→堅牢なモデリングが重要
自分たちが本当にやりたいことの「核」を定める
本質をシンプルに表現することの重要さ
自分たちのやりたいことは、いろいろな方法で記述可能
→煩雑になちがち。ぶれがち
→極力シンプルに表現するほうが良い
→本質を見定めることで、コンセプトや方向性の変更に堅牢になる
抽象的な課題を具現化する力
モデリングによって、抽象的な課題をシンプルに課題化する力が重要

当時のツイートをもっと見る

河辺さんが話す予定だったスライド資料

神龍「お前の悩みを一つ自動化してやろう」

発表者:@SaKu_2018(学生3)

スライド

1
2
3
4
5
6
7
8
9
10
このまえの出来事
授業中にOSがこわれた
→1年前にセットアップした環境だった
古い環境の災悪
古い
急に壊れる
定期的に環境を新しくしたいが、セットアップが面倒
→環境の構築を自動化する
Vagurantのプロビジョニング機能を用いて環境構築を自動化する
Vagrantファイルで環境を定義しておけば、イミュータブルな環境が実現でき、環境が壊れたときにも復旧が簡単

当時のツイートをもっと見る

おれおれ開発環境がさらにおれおれになるために。

発表者:@na0noma(学生4)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
dein.vimの紹介
vimにおける闇の力
NeoBundleの後継版
より早い
dein.vimの利点
プラグインの導入が楽
1行書くだけで、プラグインをインストール可能
プラグインの管理が楽
いろいろ便利なコマンドが用意されていて、Vimのカスタマイズが楽
dein.vimの環境構築自体が楽
ドキュメント通りポチポチするだけ
vimのconfigだけいじって学業がおろそかになるのはいけない
→続・木こりのジレンマ

当時のツイートをもっと見る

Dockerイメージのダイエットが成功するまで帰れまてん

発表者:@nabeo(株式会社はてな)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
nginxのDockerイメージを作ったが、イメージサイズが400MBくらいあった
nginx自体は10MBくらい
→イメージサイズが大きすぎる
不要なファイルを消してみよう
GCCやいらないライブラリなど、nginxをビルドするためのツールを消す
消したけど増えてる…
→レイヤードFSのせい
→開発環境が含まれるレイヤーが残ってしまっていた
レイヤーをまとめることが重要
→110MBくらいまで減った
ホストのディストリビューションをdebian→debian-slimへ
→100MB以下まで減った
Dockerのマルチステージングビルド
nginxを静的リンクでビルドして、必要なファイルのみを他のイメージへ持っていく。
→60MBくらいまで減った

当時のツイートをもっと見る

構造化思考法

発表者:玉田雄基(株式会社サイバーエージェント)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
こんなことを言われたことはありませんか?
ロジカルに考えられていない
整理してから持ってきて?
一番重要なことは?
一番言いたいことは?
→説明が構造化されていないかも
構造化とは
ファクトと示唆を分離
事実と、仮説を分離すること
何が事実で、何が仮説化を切り分けて話する
MECEに分類する
もれなく
ダブり無く
全体を網羅する
→ファクトと示唆をちゃんと列挙する
情報をカテゴライズすることで、漏れをなくす
マクロからミクロにストーリーをを整形
ある結論は何が根拠になっているかを整理すること
後から「なぜ」がわかる
構造化は相手を納得させる武器
自分の言うことが構造化されていれば、相手にも伝わる。
相手の漬け込む空きがなくなる

当時のツイートをもっと見る

あるSWEの例をここに

発表者:@b4b4r07(株式会社メルカリ)

スライド

1
2
3
4
5
6
7
8
9
10
自分が好きなものを見つける過程
講義でプログラミングを初めたが、環境に慣れない
→「ここをなんとかしたい」というモチベーション
→自分のオレオレ環境を作る沼にハマる
→気づいたら3年経つ
「好きなこと」「作りたいもの」は日常にあふれている
自分の場合は必修講義にあった
日常に目を向けることが重要
何かを勉強しているときに「ここをこうしたい」みたいなモチベーションが湧くはず
完璧じゃなくても誰かの役に立たなくても良いので、まずは作ってみること

当時のツイートをもっと見る

よわよわPCでの姿勢推定

発表者:@bannerforest(学生5)

スライド
デモ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
姿勢推定ってなに?
カメラの映像から、人の骨格(姿勢)がわかるやつ
数年前までは、特殊なデバイスとグラボが必要だった
技術の進化で、PCのWebカメラで実現可能に
OpenPose
一般的なライブラリ
問題点
商用利用は有償
スポーツ領域には使えない
マシンパワーが意外と必要
→よわよわPCでも姿勢推定したい
PoseNet
Googleが作った
オープンソース
JavaScript上で動く
Apache License 2.0!
使いやすい
よわよわPCでも動く!

当時のツイートをもっと見る

C#の良さを伝えたい(仮)

発表者:@atriasoft(学生6)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
C#とは
2000年生まれの若い言語
未来大と同じ
JavaとCのいいとこ取り
直感的で初心者に優しい
なにができるの?
ゲーム開発
Unity
なんでもできる
個人開発では無料
C#で書ける
モバイル開発
ザマリン
C#で書ける
Web開発
ASP.net
C#で書ける
ほかにも環境が充実
VSのスニペットが優秀
マルチプラットフォーム対応の各種ライブラリ

当時のツイートをもっと見る

HTTPの話

発表者:t_kyt(はてな株式会社)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
最近やったHTTPの仕事の話
普通のWebアプリケーション
冗長化構成
リバースプロキシによる処理の外だし
最近のWebアプリケーションでは
アプリケーションサーバーがブラウザのリクエストを直接受けることはありえない
→ブラウザ(UA)のIPアドレスが得られない
→ログイン処理などの都合上、UAのIPアドレスを知りたいことが多い
X-Forwarded-Forヘッダ
プロキシやロードバランサを通過するたびに、IPを連ねて記録していく
問題点
HTTPヘッダなので、UAが勝手に操作可能
→偽装可能
解決策
→エンドポイントでヘッダをリセット(捨てる)
→しかし、ネットワークの前に、更にCDNなどがあるとリセットできない
→信頼できるIPアドレスを保持しておき、挙動を変える
→しかし、信頼できるIPを保守する必要があったり、そもそも信頼できるIPがわからない場合がある

当時のツイートをもっと見る

pixivでReact/Reduxを使うようになった理由

発表者:村井良行(るんば)(pixiv株式会社)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
React/Reduxを導入した理由
pixivでは、SPAのようなユーザー体験を得たかった
いろいろな作品を1つのページで手軽に見てほしい
コンポーネント設計を導入したかった
部品を再利用可能
バグの範囲が限定できる
デザインガイドラインがしっかりしていた
複雑な状態管理が求められた
ページ遷移間でコンポーネントが再利用されるので、ページ遷移が早い
ユーザーが沢山の作品を見るので、ページ遷移の速さが重要
TSに対応していた
型は重要
→一人あたりのPVが30%向上!
開発に参加してみて
コンポーネントが良い
パズル感覚でプログラミングできる
型がしっかりしていたので、迷わなかった。

当時のツイートをもっと見る

これだけは伝えたい(仮)

発表者:@hironomiu(voyage group)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
VGのエンジニアが重視しているもの
人が必要としているものを作る
いらないものは作らなくていい
新しい技術を素早く学ぶ&適用→評価
過剰に学ばない
時間は有限
必要十分だけ学ぶ
「筋」の良さを重視
イケてる人ほど、様々なコンテキストで答えを出す
引き出しを増やす
点と点を繋ぐ技術
せっかく学んだことをいろいろなことに活かしたい
ロックインされない
いろいろな技術を学んで、ロックインを減らす

当時のツイートをもっと見る

誰でも・簡単・今すぐ始めるAlexaスキル開発

発表者:@ottori0(学生7)

1
2
3
4
5
6
Alexaを使っていて、スキルを作ったことがない人はもったいない!
→いろいろなルーチン作業を効率化できる
例:「今日の水やりは?」と聞くと、ルーレットで担当者を決める
例:「次の講義室は?」と聞くとおしえてくれる
簡単にAlexaのスキルを作る方法
Alexa Skill Blueprintsを使う

当時のツイートをもっと見る

まるわかり!Android向けARアプリ開発!!

発表者:@HSAU_Dosei(学生8)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
AndroidでARする方法
AR Core
Google製
Tangoから派生
ARの開発環境
Unity
AR CoreのSDKをインストールしてポチポチするだけで脳死でARできる
Android Studio
Scene Formを使うことで、Unityと同等の開発を行うことができる
→どっちを使えばいいの?
A. 宗教による
AR開発の注意点
「AR」を売りにするのはどうなの?
→それARじゃなくてもよくね?
→ARは表示の手段

当時のツイートをもっと見る

この業界でサバイブする技術

発表者:@kajiken(株式会社メルカリ)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
転職を繰り返した経験の話
なぜ転職を繰り返したのか
30歳になる頃には自分が会社を選べるようになるというゴールを持っていた
自分がやりたいことしかやりたくなかった
(意外と簡単に転職できた)
楽天株式会社
なかなかつらい新卒研修
エンジニアで入って営業を経験させられる
とにかく楽しいと思う技術を極める
サイバーエージェント
toCの経験がほしかった。ものを作る経験が欲しかった
Load Engineerをやった
スクラム開発を経験した
株式会社ペロリ
2人目のエンジニアとして、開発全てに関わった
好き勝手やれる反面全てに責任が突く
株式会社メルカリ
入りたいタイミングで会社に入れるスキルが身についていた
成長の方法
何をしたいか、どうなりたいかを言語化して目標を言語化する
自分がどうなりたいかを言語化して、アップデートする
(転職しても収入はそんなに上がらない)

当時のツイートをもっと見る

これからのモバイル市場について

発表者:@BowyerApp(株式会社サイバーエージェント)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
最近はAndroidのシェアが伸びてきた
iPhoneよりも多くなった
OSが安定した
格安Simが認知された
なぜAndroid開発をやっているか
開発コストが安い
デベロッパーライセンスが安い
開発マシンを選ばない
ストア公開が楽
面倒な審査などが少ない
修正をすぐにデプロイ可能
Androidはレイアウトの差分がわかりやすい
xmlでレイアウトするので、Gitで差分を確認可能
今後のモバイル市場について
jetpack composeの登場
コードでUIを書く
flutter webの登場
flutterでWebアプリが書ける!
→Googleはjetpack composeを皮切りにAndroidエンジニアをflutterに以降させようとしている?

当時のツイートをもっと見る

AIでできるHTMLコーディング

発表者:@tkr12051(学生9)

1
2
3
4
5
6
7
8
9
10
11
Sketch2Codeについて
ワイヤーフレームをHTMLに変換するもの
矩形→テキストボックス
矩形に文字→ボタン
など
サイトにワイヤーフレームを投稿するだけで、HTMLが生成可能
生成されたコードは汚い
精度が低い
30回くらい思考して成功した
実用性はぶっちゃけ低い
→あんまり使えない(NHK・終)

当時のツイートをもっと見る

わざわざ学ばなくて良い言語第1位をわざわざ学ぶ理由

発表者:@takachan_mirai(学生10)

スライド

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
わざわざ学ばなくて良い言語とは?
codementorによる「2019年わざわざ学ばなくて良い言語ランキング」
言語の市場価値に基づく
→1位が **elm**
市場価値≠学ぶ価値
成長した言語は概念が複雑
学ぶことで、自分の成長にとってノイズになる
elmを学ぶことで、自分の成長のプラスになる
elmのいいところ
学習コストが低い
言語仕様が薄く、わかりやすい
関連技術がイケてる
関数型
テスタブル
elm archtecture(フロントエンド)
エラーチェックが優秀
ランタイムエラーが出ない
エラー表示が親切

当時のツイートをもっと見る

おわり!

最新の記事

top
2019/10/02

不安だらけのリクルートインターン体験記【Recruit Internship for Specialist 2019】

トップ画像
2019/05/18

春のLT大会まとめ

final render 1
2019/02/16

Blenderで床を汚す

完成1
2019/02/13

BlenderのPrincipled BSDFでフォトリアリスティック床

light bulb 1
2018/10/07

Blenderでフォトリアリスティック電球

もっとみる