#127です。

先週はAWS re:Invent 2018が開催されていました。相変わらずものすごい数のアップデートがありました。以下のまとめを見て興味のあるもの中心に情報を追うとよいかと思います。

今週のイチオシ

マイクロサービスチーム編成のベストプラクティスとメルカリでの構想 : Mercari Engineering Blog

アーキテクチャの変化に伴った組織編成について。Amazon、Netflix、Spotifyといった企業の組織編成について、メルカリでマイクロサービス化に伴いどのようにチーム編成を変えようとしているかについて。

逆コンウェイの法則をまさに実践していこうとしているようで非常に興味深いです。今後いろいろと試行錯誤していきメルカリの目指すアーキテクチャにあったチーム編成がどのような形に落ち着いていくのかとても楽しみです。

ニュース

Ktor 1.0 Released: A Connected Applications Framework by JetBrains : Kotlin Blog

Kotlin製のWebフレームワークKtor 1.0が正式リリース。

The npm Blog — Details about the event-stream incident

node.jsのライブラリEvent-Streamに仮想通貨ウォレットから暗号鍵を盗み出すための不正コードが含まれているという問題が発生。

アーティクル

ありがとう、MYM 安らかに眠れ : Yahoo! JAPAN Tech Blog

ヤフージャパンで使われていた内製チャットシステムMYMについて。機能の紹介、実装方法、運用スタンス、チャットシステム開発から得たことなど。

Swiftのエラーハンドリングはなぜ最先端なのか : Qiita

Swiftのエラーハンドリンクについて。Java、Goのエラーハンドリング方法とその問題の解説、それらの問題をSwiftはどのように解決しているかが書かれている。

お待たせしました、Mercari Tech Conf 2018 アプリの裏側をお見せします!#mtc18 : Mercari Engineering Blog

Mercari Tech Conferenceアプリについて。Flutterで実装。アプリの仕様とFlutterでの開発のポイントについて開発者視点、デザイナー視点で感想が書かれている。

BASEのメインDBをAurora(MySQL)に移行しました : BASE開発チームブログ

RDSからAuroraに移行した話。なぜAuroraにしたのか、メリットだと感じた点と注意点、準備と移行作業の流れについて書かれている。

Slackのストレージを消費せずにファイルをアップロード ~アップロードされたファイルを即座にGoogle Driveに転送する~ : Qiita

Slackにファイルをアップロードしたらそれを検知してGoogle Driveにコピーしてその共有リンクを返すbotの作り方について。

プロダクトの歴史を共有することの大切さ : クックパッドマート|note

プロダクトの歴史を共有することの大切さについて。議論を前向きにできるなどのメリットがある。どのうように歴史を残しているかの方法も書かれている。

スライド、ビデオ

Web Components のリアル/ Realistic Web Components : Speaker Deck

Web Componentsについて。Web Componentsの概要、使いどころ、lit-htmlやlit-elementを使った実装方法についてまとめられている。

PWA導入の成果と課題 / nikkei-pwa-html5conf2018 : Speaker Deck

日経電子版のPWAをリリースして1年運用してみての話。ビジネス指標の変化、速度を維持するための取り組み、Performance Budgetの導入、課題がまとめられている。実際に運用していないと分からないような内容が多く参考になる。

FIDO認証によるパスワードレスログイン実装入門 : SlideShare

FIDOについて。FIDOの技術仕様、認証フローの詳細についてまとめられている。

ツール、ライブラリ

wagoodman/dive : GitHub

Dockerイメージのレイヤーごとの情報を調べるツール。Go製。

akito0107/favalid: GitHub

軽量なJavaScriptのValidatorライブラリ。関数でValidatorを書く。バリデーションメッセージも自分で書く必要がある。

cytoscape/cytoscape.js: GitHub

ネットワーク図などが書けるJavaScriptのビジュアライゼーションライブラリ。

olifolkerd/tabulator: GitHub

インタラクティブなTableやDataGridを提供するJavaScriptライブラリ。React、VueのComponentも用意されている。

kennethreitz/responder: GitHub

PythonのWebフレームワーク。FlaskとFalconの良さを取り入れるというコンセプトで作られている。requests、pipenvの作者が作っている。

サービス、アプリ

SummarizeBot

URLなどを共有すると要約やキーワード抽出をしてくれるBot。SlackとFacebook messangerに対応。

RunKit is Node prototyping

nodeのplayground環境サービス。ビジュアライゼーションもできる。Jupyter Notebookのnode版のようなイメージ。

Sblack

軽量なSlackクライアント。すべての機能があるわけでは無いがアプリサイズが20MBと小さい。

Learn React for free : Scrimba.com

Reactを学べるサイト。解説を聞きながら実際にエディタにコードを書いていく様子が見られるので理解しやすい。

Renovate | Automated Dependency Updates

リポジトリの依存パッケージを監視し更新があったらPRを作ってくれるサービス。GitHub Appsとして動作。