#95です。

先週はpolyglotな汎用仮想マシンGraalVMの1.0がついにリリースされ話題になっていました。以下を見るとどういったものか理解できると思います。

また、コンテナ活用をテーマとしたイベントJapan Container Days v18.12が開催されていました。以下に資料等がまとめられています。

今週のイチオシ

『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法 : SlideShare

コンテナ技術の考え方について。コンテナ技術がツラい理由、PaaSやServerlessとコンテナ技術の関係性、CaaS/PaaS/FaaSそれぞれのメリット/デメリットなどについて。プラットフォームを選ぶのはただの手段なので目的=ビジネスを明確にして選ぶようにする。

コンテナ技術との向き合い方が分かりやすくまとめられています。システム要求だけでなくビジネスの状態等によっても選択する最適解が変わるということ、どれか1つの最適解があるわけではないということが伝わってくる資料です。

ニュース

Announcing NGINX Unit 1.0 : NGINX

NGINX Unitが正式リリース。設定変更やアプリの入れ替えを再起動することなく行える。現状、Python、PHP、Ruby、Perl、Goを実行可能。

Google Cloud Platform Japan 公式ブログ: 東京 GCP リージョンで BigQuery の提供開始

BigQueryが東京リージョンでの提供を開始した。

Hello wasm-pack! : Mozilla Hacks – the Web developer blog

MozillaがRustでWebAssemblyの開発ができるwasm-packを公開した。作ったパッケージはそのままnpmにパブリッシュできる。

アーティクル

ファシリテーション時の「頭の中の枠」と「ボードの中の枠」 : Holidays in the Sun

ファシリテーションするときに意識することが書かれている。Open−Narrow−Closeモデルを意識する、議論の生産性を意識するなど。議論のアウトプットは高次の合意形成=((納得感×人数)+ 共創性)と考える。

electronでリリース用パッケージを作る : PartyIX

Electronのパッケージ作成方法について。アイコンの作り方、音声ファイルの埋め込み方、ビルド方法など。ビルドツールはelectron-packagerではなくelectron-builderを使ったほうがよい。

Use Markdown document on brand new PyPI : Aki Ariga – Medium

PyPIのサイトがリニューアルされた。ドキュメントはreStructuredTextだけでなくMarkdownも使用できるように。

I built a PWA and published it in 3 app stores. Here’s what I learned. : Debugger.Break()

音楽プレイヤーをPWAで作ったが再生の不具合等があったのでストアアプリ化した話。App Store、Google Play、Window Store向けにパッケージ化して得た知見がまとめられている。

Distributed architecture concepts I learned while building a large payments system

Uberの大規模な決済の分散システムを開発して得られた知見が書かれている。SAL、一貫性、データ耐久性、メッセージの永続性と耐久性などについて。

Titus, the Netflix container management platform, is now open source

Netflixのコンテナ管理プラットフォームがOSS化されたとのこと。Apache Mesos上で動くよう作られている。AWSの各機能とシームレスに統合されている。

スライド、ビデオ

grapi: Bulding JSON API server with grpc-gateway for microservices : Speaker Deck

grapiというGoでgRPCを利用するためのツールについて。gRPCを使うときの前準備などを生成してくれる。GoでのWeb APIを作る上での大変さ、それを解決するためのgRPCの利用、gRPCを使うときの大変さを段階的に説明していてgrapiが何を解決しようとしているのか分かりやすい。

Dgraph - A high performance graph database written in pure Go : Speaker Deck

Go製のグラフデータベースDgraphについて。グラフデータベースを使う理由、既存のグラフデータベースの問題点、Dgraphの特徴が書かれている。

vgo(Versioned Go Prototype) #golangtokyo : Speaker Deck

goコマンドに入る予定のパッケージ管理機能vgoについて。vendorディレクトリの廃止により$GOPATHから解放される、可能な限り古いバージョンが選択されるなど。

go-selfupdate-github で ツールを自己アップデートする : Speaker Deck

GoのCLIツールのアップデート方法の種類とそれぞれの問題点、それを解決するためにgo-selfupdate-githubを使って自己アップデートを組み込む方法について。

ツール、ライブラリ

VuePress

Vue.jsの静的サイトジェネレーター。Vue公式。

alberthier/git-webui: GitHub

WebベースのGitクライアント。ログ表示、コミットなど基本的な操作が可能。

azu/hatebupwa: GitHub

はてなブックマーク検索アプリ。オフライン検索も可能。実装方法などが以下で書かれている。

riktar/jkanban: GitHub

カンバンボードを表現できるJavaScriptのUIライブラリ。

Stetho

Androidアプリ用のデバッグツール。Chrome DevToolsでAndroidアプリのデバッグができる。

Canner/slate-md-editor: GitHub

Markdownを編集しながらリアルタイムレンダリングができるJavaScriptライブラリ。

サービス、アプリ

Hacker Daily - Daily podcast for hackers

Hacker Newsのデイリーダイジェストを配信してくれるポッドキャスト。

Zulip

Slackライクなグループチャット。スレッドモデルを採用。インテグレーションもAPIもある。

Learn to Code for Free – Grasshopper

コーディングが学べるiOSとAndroidアプリ。

GitHub Learning Lab

GitHubの使い方が学べるGitHubアプリ。実際に操作しながら学べる。途中でフォーラムに質問も可能。