JJUG CCCで聴講したセッションまとめ
概要
JJUG CCCで聴講したセッションで学んだことをまとめました。
Introduction to MicroProfile Metrics #ccc_i1
スライド
www.slideshare.net
メモ
調べてみたこと
MicroProfileとは
マイクロサービスアーキテクチャに最適化したJavaを実現するための「MicroProfile」、Eclipseの正式プロジェクトに
JMX/RMIとは
- JMX = Java Management Extensions
- アプリケーションソフトウェアなどの監視・管理のためのツールを提供するJavaプラットフォーム技術の一種
- RMI = Remote Method Invocation
- ネットワークを通じてプログラム同士が通信を行い、異なるコンピューター上にあるオブジェクトのメソッドを呼び出すための技法
JAX-RS, CDIとは
- JAX-RS = Java API for RESTful Web Services
- CDI = Contexts and Dependency Injection
ディープラーニングシステムの導入と運用で学んだ事 #ccc_i2
メモ
AIのユースケース
- 画像から販売量推定
- 携帯電話の不正利用チェック
- データからのレコメンド
- 顧客セグメンテーション
- PREDICTIVE MAINTENANCE
ディープラーニングシステムを始める上での注意点
- まずはシステム全体を俯瞰して考えよう (Production ML Lifecycle)
- 全チームを巻き込もう
- 機械学習の能力とビジネス価値はマッチするのか?を考えよう
- 機械学習を決定する前により簡単なソリューションがあるならまずはそれで始めよう
- クラウドの費用
調べてみたこと
Eclipse DeepLearning4Jとは
ゴンザレスさんおすすめのディープラーニング入門書
Deep Learning: A Practitioner's Approach
- 作者: Josh Patterson,Adam Gibson
- 出版社/メーカー: O'Reilly Media
- 発売日: 2017/08/19
- メディア: ペーパーバック
- この商品を含むブログを見る
- SkymindのCo-founderであるAdam Gibsonさん執筆の本、つまりDL4J開発者が書いてる本
- ディープラーニング系の本は行列の話から始まりがちで、いわゆるバックグラウンドが数学の人を対象とした本が多い
- それに対してこの本はプログラマがわかりやすい内容となっている
Scala製システムを4年間運用することで起きた様々なことへの対処 #ccc_i3
メモ
Mackerel4年間運用の軌跡
- 194週連続新機能リリース
- Playframeworkのバージョンアップ
- sbtのバージョンアップ
- 機能の廃止
- チームメンバーの移動
- プラットフォームをデータセンターからAWSへ
運用をし続けていくなかで学んだこと
- 運用において大事なのは、採用技術とそれにまつわるコミュニティの近さ
- コミュニティが近ければ、有識者や開発者からアドバイスがもらえる
- スキルマップでチーム内の技術力を可視化
- 各技術に対するメンバーのスキル状態を点数化することで、「このチームに足りないスキルはなにか」を可視化
- 誰かが抜けたときの影響を点数で表せるから、「こういうポジションの人がほしい」という依頼を会社にしやすい
調べてみたこと
はてな研修用教科書
How to Properly Blame Things for Causing Latency: An Introduction to Distributed Tracing and Zipkin #ccc_i4
スライド
メモ
- 英語講演だったのでメモが全然取れなかった(´;ω;`)
- 次回は取れるようになれてたらいいな...
- Adrian Coleさんの英語は発音が綺麗でとても聞き取りやすかった
調べてみたこと
Zipkinとは
分散トレーシングシステムとは
Qiita - 分散トレーシングシステムのZipkinを使ってみた話
REST APIに疲れたあなたに贈るGraphQL入門 #ccc_e6
スライド
www.slideshare.net
メモ
GraphQLとは
- GraphQL vs RESTという形で紹介されることが多い
- RESTの次のパラダイム
- AWS AppSyncを利用することで簡単にGraphQLが使える
- リアルタイム機能とオフライン機能を簡単に実装できる
GraphQLの概要
- GraphQLはAPI用のクエリ言語であり、TypeSystemを使用してクエリを実行するためのサーバー側のランタイム
- クライアントがサーバーからデータを取得、変更、購読できるようにするためのデータ言語
REST APIの疲れるところ
- API仕様ドキュメント管理が大変
- 叩き方を理解するのが大変
- ドキュメントと実装がずれてて喧嘩
- 1ページを表示するのに何個もAPIを叩かないといけない
- せっかくイベントドリブンに作っていてもサーバーとの接続は複数
GraphQLのメリット
- クライアント、サーバー間のインターフェイスがクリーンに
- イベントドリブンで書くことができる