情報科学若手の会冬の陣2019 に参加した
聞きながらとったメモなので聞き逃しや不完全な部分があるかも
本発表
Webフロントエンドを頑張りたい人と頑張りたくない人の為の話
- 頑張りたくない人
- 最小構成で楽するにはどうしたらいいか
- 用語集
- ECMAScript仕様 javascript 実装
- nodejs
- commonjs
- html/css/jsを生で書くのは?
- ページ数が少ない、jsほぼいらない、IEサポート必要ない ならok
- IEは最新の標準仕様に追従してない 対応すると依存ライブラリが増える
- jquery 動いているサイトは山ほどある
- DOM APIが進化してdom操作に不自由しなくなった virtual domもある
- webpackとかは必須
- 依存ライブラリが多くなる
- parcel zero-configの思想で作られいて楽だが、細かいカスタマイズができない
- rollup デフォルトではESModulesとか扱えない。ライブラリ開発使うのが良いと行っている人もいる
- なんでこんなに複雑に?
- 半分はIEのせい EOLがこない。サポートする必要がある
- とりあえずやりたい人の為の最小構成用意した あとでgithub 小さいってどのくらい?
- 頑張りたい人
- スキップ
- jsの可愛いところ
資料 https://arayaryoma.github.io/wakate2019w-slide/#/
実装して学ぶ Symbolic Backward Execution
- シンボリック実行とは?
- 数学でいうx,y,z的な変数的なやつ
- if文があったら網羅的に実行できる
- テストケースを網羅的に作れる
- 他にも色々
- FSE
- スタンダード
- エントリポイントから特定地点に向かって実行
- BSEは逆
- 最弱事前条件を計算すれば逆にできる
- ある性質が過不足なく満たされる
- 手動で計算してみる
- smtソルバはz3
- pythonで作ってみる
Deepな異常検知技術の最新事情
- chillstackという会社を企業しました
- deepにも色々な手法がある。前回発表したのはCNNで二値分類
今回はGAN
- よく使われるのは生成機(G)の方。fake画像とか超解像とか
Gで生成できないデータがきた時に異常とする
- G(z)とデータを比較するスコアがある
- AnoGAN
- 学習させたあと、異常か知りたいデータに一番似ているG(z)を作るzを探して、スコアを計算する
- G(z) -> G(g(z))と変形してインクリメンタルに探索する めっちゃ時間かかる
- EfficientGAN
- 探索コストがほぼぜろに
- データを潜在空間へ写像するEncoderを一緒に学習する
- zを探索する必要なし
資料 https://speakerdeck.com/palloc/yi-chang-jian-zhi-falsezui-xin-shi-qing-togei-yu-falsehua
セキュリティキャンプとCコンパイラ自作の誘い
- https://www.ipa.go.jp/jinzai/camp/index.html
- 選択コースと集中コース
- 講師(スペシャリスト)の人にすぐ聞ける
みんな熱意がある
- 他のものを知る足がかりになる
- gccとか頑張れば理解できるようになるのではないかと思える
- 実装方針
- インクリメンタルに作る
- 最初は小さく
- アセンブラをいい感じ出力してるサイトがある
- C言語は学部レベルでいける
ruiさんの資料見ながら進める
トップレベルの文法が辛い
- 普通の変数宣言が辛い
- 最近の言語はパーサに優しい
- 文法が結構複雑
- if(i=0,j=0) が合法
- 楽しい
Webデバイストラッキング手法の紹介
- webデバイス スマホとか
- デバイストラッキング
- サーバ側が同じ人との通信であることを知りたい
- 複数デバイスにまたがることもある
- 広告とか調査とか
- ユーザがコントロールできない手法だと問題になることがある
- cookie
- ip address
- 住所というよりビルのイメージ
- NAT
- webrtcを超える為の技術がある
- hsts super cookie
- tcp timestamp
- ssl session ticket
-
- NTA不要になり、普通にidとして機能する
- 割と普及してきた
アドテク業界では普通に使われている?
- わかる人が見るとすぐわかるので使われない。炎上したことも
資料 https://speakerdeck.com/kurochan/webdebaisutoratukingushou-fa-falseshao-jie
Node-RED フロー 分散処理化による次世代の都市システム
- スマートシティ
- 年に関わるセンサデータを取得してフィードバック
- ゴミ収集車にセンサ載せる
- 都市の至るところに展開できる
- 100Hzくらいで取得して、リアルタイムにデータ送信
- 一日100台。三日くらいでほぼ全域がカバーできる
- 超高性能ドライブレコーダ
- ゴミの量をカウントしたり、道路の表示のかすれ/陥没/ひびを検知できる 自治体の人へ
- たくさんのデバイスがあるので処理フローが複雑
- 従来であればクラウドで
- できればエッジ側で処理したい
- Node-Red
- 分散環境に対応してない
- 共同研究している人が分散対応させた
- ディープラーニングもエッジでやりたいので、専用のノード作った
CTFと現実世界
- CTFはコンビュータ総合格闘技
- 賞金も結構もらえる
- 企業主催の大会が増えている
- 技術の吸収・キャッチアップ
- リクルーティング
- メリットがあると認知されてきた
- ジャンル
- pwnable, reversing, web, cryto
- いずれも難易度が高くなっている。専門知識が必要
- 非自明なものが難しい・面白い
- セキュリティという分野自体がロジックパズルと相性良い
- 最近はネタ切れ気味
- OSSとか研究成果へ
- OSSでの問題で想定していない解法が出てくる -> 0day攻撃に
- バグハンティングと似ている部分もある
LT
キャリア選択のかんどころ
- 技術に関してもT型人材、複数の柱を作る
- 技術以外のソフトスキルも勉強しよう
- マネジメントとか育成とか
- ビジネス書も読もう
仕事の頑張り具合を記録して可視化する
- 開いてるウインドウを記録する
- もともと研究でやってた
- プログラミング教育で困っている人を検知する
- 社内リソースなので外部送信できない 自分で作る
- cocoaとswiftで作った
- 容量は一年で60Gくらい
- だいたい仕事頑張ってる
- http://haneuma0628.hatenablog.jp/entry/2018/12/21/000000
今年作るもの
- イベント運営めんどい
- タイムキープ周りを管理してくれるもの
- 過去に似たようなものを作った クソアプリになった
- ラズパイで作る
- android things
- kotlinでできる