omuronの備忘録

個人的な備忘録

「AWSの基礎を学ぼう 第八十一回 AWS Data Sync」 #awsbasics 受講メモ

awsbasics.connpass.com

申し込むのを忘れてて締切が過ぎてしまいましたが、亀田さんに締め切り延長の神対応をしてもらえたので無事に受講できました。

セッション

AWS Data Sync

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

AWS DataSync 概要

  • オンプレと AWS 間のデータ移動を簡単低コストでフルマネージドで行うサービス
  • オンプレミスに AWS DataSync エージェントが必要
  • オンプレミスとクラウドの接続に専用線を利用するのは一般的
    • 専用線つかっても安定化はしているが仮想化されているのでボトルネックにはなる
      • ここを解決するマネージドサービス
  • 対応ストレージサービス:S3, EFS, FSx for Windows File Server

高速データ転送

  • マルチセッション
    • S3 のマルチアップロードの自動化
  • 圧縮
  • ロードバランス
    • サービス側に複数のエンドポイントを自動生成
  • セキュア、高信頼
    • TLS が常に使われる
    • 自動再送
  • 低コスト
    • 転送量で課金
      • アップロードだけど課金される
      • 通常の S3 へはアップロードは無償、AWS は下りしか基本はとらない
  • AWS 間の転送も可能
    • この場合はクライアント不要
    • S3 はシンクできるから使わなくても大丈夫だが、EFS とかとまとめたい場合には有用

その他

  • 開いているファイル、ロックされているファイルの扱い
    • ファイル転送は可能
    • 保存先で開かれている場合はエラーとなるのでログを確認する
  • VPC エンドポイントを使う場合は、1024-1064 の Control Traffic を開ける必要あり
  • オンプレからクラウドに高速に大量ファイルを移動するのが DataSync

所感

オンプレを大量に使っている情シス向けのサービスですね。
使うことは当面なさそうかな。

「BigData-JAWS 勉強会#20」 #bdjaws 受講メモ

jawsug-bigdata.connpass.com

QuickSight 勉強中なので気になるとこだけメモ。

セッション

グノシーにおけるデータ分析基盤移行と Amazon QuickSight 導入について

グノシー 楠さん

QuickSight 導入利用

  • SaaS 版 Redash を使っていたがサービス終了
    • QuickSight 導入へ

Gnunosy の データ基盤

  • Data Source : RDS, DynamoDB
    • embulk で Data Lake へ
  • Data Lake : S3, Glue Data Catalog, Lake Formation
    • Athena で BI へ
  • BI : Redash

Gunosy におけるデータ分析

  • Redash が2021/11/30で終了
  • 利用用途は大きく2つ

QuickSight 導入

  • コスト面で優位と判断
    • セッション課金なので利用しなければ安い
    • Editor /Reader アカウント切り分け可能
    • AWS サービスである
  • ダッシュボードクエリ書き直し
    • Athena View 利用、Athena に登録できる集計処理
      • 実態データない、ロジック共通化、低コスト
  • Lambda で共有設定、権限管理自動化
    • QuickSight の分析/ダッシュボードなどの作成はユーザー単位
      • QuickSight イベントで発火する Lambda で SQ のグループ利用して共有

今夜、Serverlessくらべてみました

NTTデータ 野口さん

  • レイクハウスアーキテクチャ
  • Redshift Serverless vs Athena
    • DWH としては Redshift
      • ◎:PostgreSQL ベース
      • ◎:Materaized View 対応
      • ◎:RESULT CACHE機能あり
      • ○:LOAD, DMS で実行
      • ○:Federated query : Redshit, RDS, S3
    • Athena は対応データ豊富、取り込み容易
      • △:Presto 0.172準拠、基本的な SQL
      • ○:View 対応
      • △:RESULT CACHE機能なし
      • ◎:Glue Data Catalog 取り込み
      • ◎:Federated query : CloudWatch Logs, DynamoDB, DocumentDB, RDS, JDBC

Amazon Athena Federated Query コネクター紹介

AWS 林田さん 藤沢さん

  • スキャンしたデータ量に対しての課金、サーバーレス
    • 圧縮していれば圧縮した容量で計算
  • Lake Formation 新機能サポート
    • カラム/行/データベース/テーブルでの権限管理
    • Governed Tables によって、ACID トランザクション可能
  • Athena Federated query
    • S3 以外もクエリできる
    • クロスアカウントも対応

所感

QuickSight 難しい...
Glue Data Catalog はある程度できるようになって、Athena で見る分には困らなくなってきたけど、QuickSight で思った通りの表示にするのはまだまだ難しいです。
この当たりは取り上げてもらえなかったので、ビジュアライズを上手にするにはどうやって勉強したらいいんだろう?

「AWSの基礎を学ぼう 第八十回 AWS Transfer Family」 #awsbasics 受講メモ

awsbasics.connpass.com

ながらく FTP 使ってなかったので、このサービスは知らなかったです。

セッション

AWS Transfer Family

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

AWS Transfer Family 概要

  • マネージド型ファイル転送
    • S3, EFS と連携
    • SFTP, FTPS, FTP に対応
    • マネージドサービスなので高可用性、オンデマンドでスケール可能

AWS Transfer Family 使い方

  1. プロトコル選択
  2. SFTP おすすめ
  3. ID プロバイダー選択
  4. AD 連携可能
  5. エンドポイント作成
  6. ドメイン選択
  7. S3 or EFS
  8. 詳細設定

SFTP

  • SFTP は1つのポートで処理できる
    • FTPS セキュアじゃない
      • 複数ポート利用、動的に生成される
      • ID/PASS 方式
  • VPC 内につくると、SG 作ることができるので、IP 制限などできる
  • VPC 外は通常の ssh のみ

所感

FPT 長年使ってなかったので、このサービスは知りませんでした。
結構使えるのではと思ったのですが、 $0.3/h とそこそこ値段高いので注意が必要そうです。

「JAWS-UG朝会 #32」 #jawsug_asa 受講メモ

JAWS-UG朝会 #31

jawsug-asa.connpass.com

MotoGP 夜中見つつ、あまり寝ないまま朝会突入!

セッション

セッション① Aurora MySQL v1→v3の移行を準備する

hmatsu47(まつ)さん

speakerdeck.com

  • Aurora MySQL v1 5.6 互換の EOL 発表
    • 2022/09/27 新しいクラスタ作成停止
    • 2023/02/28 EoL
  • Aurora MySQL v2 5.7 互換の EOL は?
    • 2023/10/21 本家 MySQL 5.7 の EoL
    • Aurora は未定
  • Aurora MySQL v3 8.0 互換
    • v2 以降に廃止・変更された機能がある
      • クエリキャッシュ廃止:並列で問題あり
      • 古い暗号化廃止、MySQL 独自文法廃止、GIS 機能リニューアル
    • コミュニティ版 MySQL 8.0 のリリースモデル変更
      • マイナーバージョンアップでも機能追加・変更・削除あり!
      • 予約後の追加:予約ごとバッティングすると不具合発生
      • 暗黙ソートの廃止: ASC/DESC 省略できない

Aurora MySQL v1 の EOL 1年切ってるのか。 移行をちゃんと考えないと...

セッション② IT素人だった私がAWSを触り始めたきっかけとその後

近藤恭平さん

  • AWS 触るきっかけ
    • 中高生にキャリア情報を発信するメディアを作りたかった
    • AWS が良さげか?
  • Web アプリを作りたい
    • Amplify 使ってみた
      • aws-cli 使わなくてもできる
    • AWS コンソールから簡単に作れて、カスタムドメインの設定もできる
  • UI Library とは

Amplify Studio は Figma と連携できるのは魅力的ですね。
React 使ってる人にはかなり魅力的かも?

LT① AWS WAFを入れたあとのちょっとしたトラブル

かなかさん

  • 年末にアラート対応したくない
    • 海外からの BOTDoS が多い
  • 調査がキツイので WAF 提案
    • ステージングで試すの難しいのでいきなりプロダクション環境へ
    • 問題発生
  • アラートの嵐
    • 外形監視からのアラート発生
  • 課金増加
    • Vended Logs の課金
      • 全部のログを取るとお金がかかる
  • AA ブロック
    • GenericLFI_BODY に引っかかる
      • 日本からのアクセスは WAF から除外

WAF は本番じゃないと調べられないことも多いから、事前にこれらを知るのは難しそう。

LT② TerraformでAWS環境を構築する際のハマりどころ

アイレット株式会社 黒野雄稀さん

  • Terraform で、ポリシー作り、既存の Role にアタッチする
    • Terraform destroy するとポリシーから Role が外れるが、すでに Role にアタッチ済みの別のポリシーも外れてしまう
    • aws_iam_policy_attachment を使っている場合の仕様なので注意
    • aws_iam_role_policy_attachment を使おう

既存部分に影響を与えるのは知らずにやっちゃういそうで怖い。

LT③ Amazon SNS からのメールをFirehoseとLambdaでまとめる

shimoさん

  • SNS から大量のメールが来るので集約したい
  • SNSKinesis Firefose をサポートされた
    • SNS -> Kinesis Firefose -> S3 trigger -> Lambda で集約
      • S3 trigger をやめて EventBridge の cron にしてさらに集約

SNSサブスクリプションKinesis 増えてたのか。

LT④ CI/CDわかってる風を装ってたけど、Codeシリーズでちゃんと再入門してみる

KDDI 御田 稔さん

speakerdeck.com

  • CI/CD を手間暇かけて導入する理由は?
  • 手を動かして試そう!
    • ハンズオンビギナーズ利用
  • Code シリーズ試す

めっちゃ聞きやすくわかりやすい LT でした!
ハンズオンビギナーズは、新しいサービス触るのにほんと役に立ちますよね。

所感

Aurora v1 の EOL 考えないとダメなことに気がついて朝から焦ってます。
御田さんの LT 構成も内容も惹きつける内容でとてもよかった。
最近登壇できてないから、久しぶりに登壇したくなりました。

AFDKO を試す

4月10日はフォントの日です。
ということで、フォントにちなんだことをしたいと思い、AFDKO を触ってみたいと思います。
私はフォントエンジニアでは無いので、仕事でフォント関連のツールを触ることは基本的にはなく、AFDKO も聞いたことがある程度の知識しかありません。

AFDKO

AFDKO は「Adobe Font Development Kit for OpenType」の略。
GitHub はこちら。

github.com

The AFDKO is a set of tools for building OpenType font files from PostScript and TrueType font data.

OpenType フォントを作ったり触ったりするツール群です。

ツール郡

インストールするといくつかツールが入ります。
内容は こちら から抜粋します。

Making/editing fonts

フォントを作るツールたち。
普通の人はあまり使うことはなさそうですが、 otc2otf みたいな変換するのは使うことがあるかも?
www.DeepL.com/Translator(無料版)で翻訳します。

  • psautohint
    • このプログラムはAdobeのオートヒンターであり、独自のプロジェクトリポに住んでいます。いくつかのAFDKOツールで使用されており、AFDKOのプロジェクト要件を通じて自動的にインストールされます。
    • OpenType/CFF と Type 1 フォントの両方に適用することができます。Type 1 および OpenType/CFF フォントでのみ動作します。
  • makeotf
    • このプログラムは、OpenTypeのレイアウト規則とデフォルト値のオーバーライドを定義する機能ファイルと、フォントファイル(Type 1フォント、TrueTypeフォント、Type 1フォントの「detype1」テキスト版、またはUFOフォント)からOpenType/CFFフォントを構築するものです。その他、いくつかのメタデータファイルも必要です。また、TrueTypeソースフォントファイルからOpenType/TTFフォントを構築することもできます。
  • buildmasterotfs
    • このスクリプトは、makeotf を使用して、互換性のある UFO マスターを含む .designspace ファイルから OTF ファイルを構築します。これらの OTF ファイルは、CFF2 変数フォントを構築するための最初のステップとなります。
  • buildcff2vf
    • このスクリプトは、.designspace ファイルと buildmasterotfs の出力 OTF を使用して、CFF2 変数フォント ファイルをアセンブルするものです。
  • makeinstancesufo
    • このスクリプトは、.designspace ファイルと互換性のある UFO マスターのセットから UFO インスタンスを生成するものです。designspace ファイルと補間システムについての詳細は Superpolator.com と DesignSpaceDocument Specification にあります。
  • mergefonts
    • このプログラムは、あるフォントから別のフォントへグリフをマージし、オプションでソースフォントからサブセットをコピーし、グリフの名前を変更します。また、フォント内のグリフ名をサブセットして変更することも可能です。同じフォントを異なるマッピングファイルのソースとして複数回使用することで、グリフを別の名前で複製することができます。また、名前付きキーフォントをCIDキーフォントに変換することもできます。
  • otc2otf
    • OpenType Collection フォントファイル (.ttc または .otc) から、すべての OpenType フォント (.otf または .ttf) を抽出します。
  • otf2otc
    • 2 つ以上の OpenType フォント (.otf または .ttf) から OpenType コレクション・フォント・ファイル (.ttc) を生成します。
  • otf2ttf
    • OpenType-CFFフォントをTrueTypeに変換します。
  • rotatefont
    • このツールは、フォント内のグリフをヒントを含めて回転・平行移動させます。ただし、回転が90度の倍数でない場合、ヒントは破棄されます。
  • sfntedit
    • これは、あるフォントから別のフォントへ、フォントテーブルのバイナリブロック全体をカット・アンド・ペーストすることができるものです。この機能を利用するには、まずソースフォント上で -x オプションを使用してソースフォントからテーブルを別ファイルにコピーし、次に -a オプションを使用してそのテーブルをターゲットフォントに追加します。また、単にテーブルを削除したり、フォントテーブルのチェックサムを修正するのにも使用できます。
  • psstemhist
    • このプログラムは、実は psautohint と同じツールですが、違う顔を持っています。このプログラムは、Type 1 ヒンティングのためのグローバルヒントデータとアライメントゾーンを選択するのに役立つレポートを提供する。このツールのレポートを見て、最も一般的なステム幅を選択し、FontLab や RoboFont などのプログラムを使ってフォントに値を設定する必要がある。これは、フォントのヒンティングを行う前に行う必要があります。Type 1 および OpenType/CFF フォントにのみ対応します。
  • ttfcomponentizer
  • ttx
    • このツールは、OpenTypeフォントから全部または一部のテーブルを、人間が読みやすいテキストXMLファイルにダンプし、このXMLファイルを完全なOpenTypeフォントコンパイルして戻すことができます。これは、いくつかの値を簡単に変更するための理想的なツールです。注意深く使用すれば、広範囲な変更を加えることも可能です。このツールは Just van Rossum 氏によって fontTools ライブラリの一部として提供されています。ここでは便宜上、インストールされたPythonインタプリタを必要としない形で提供されています。
  • tx
    • このツールを使って、ほとんどのフォント形式をCFFまたはType1フォントに変換することができます。TrueType フォントは、この処理でヒンティングが失われます。PostScript から TrueType への変換はできず、TrueType フォントのラスタライズもできません。Type 1 または CFF フォントからの変換に使用すると、サブルーチン化が解除され、共通のパス要素に対してサブルーチンを参照するのではなく、各グリフがすべての描画演算子を含むようになります。ただし、出力されるフォントにサブルーチン化を適用するオプションがあります。
  • type1/detype1
    • この2つのプログラムはそれぞれ、Type 1フォントを編集しやすいプレーンテキスト表現にコンパイルおよびデコンパイルします。これは、個々のフィールドを修正するのに適している。また、特定のパス要素を多くのグリフにコピーするのにも適している。

Proofing

フォントの中身を調べたいときに使うツールたち。
こちらは一般のエンジニアでも使うケースがそこそこありそうです。
ttx は、手っ取り早くフォントの中身を見るときに使ったりしてました。

  • spot
    • このプログラムは、OpenTypeフォントのデータを様々な方法で報告することができます。すべての表は、表の低レベルの構造をテキストレポートとして表示することができます。ほとんどの表は、より人間が読みやすい形式のレポートと一緒に表示することができます。GPOSおよびGSUBレイアウトテーブルを含む一部のテーブルは、プリンタに送信可能なPostScriptファイルを出力したり、Mac OSX PreviewAdobe AcrobatAdobe InDesignで表示することにより、グラフィカルに表示することが可能です。
  • tx
    • このツールには、校正に便利な2つのモードがあります。bcオプションをつけると、ASCII文字を使ってコマンドラインウインドウにグリフをラスタライズする。これはグリフを素早く見たいときに驚くほど便利である. pdfオプションをつけると、フォント内のグリフを1ページあたり320個、または1ページあたり1個表示したpdfファイルを作成する。
  • ttx
    • XML形式の出力は、OpenTypeフォントのほとんどのデータについて有用なレポートを提供します。
  • charplot
    • フォント内の全グリフを表示したpdfファイルを作成します。1ページにつき1グリフを表示します。ノードと制御点を表示します。
  • digiplot
    • フォント内のすべてのグリフを表示するpdfファイルを作成します. 日中韓の開発者が好んで使うフォーマットで、大きな塗りつぶしアウトライン、便利なグリフメトリクス、そしてノードをマークした大きなアウトラインを表示します。
  • fontplot
    • フォント内の全グリフを表示するpdfファイルを作成します。これは、多くのグリフでページを埋め尽くし、小さなポイントサイズで塗りつぶされたアウトラインだけを表示し、各グリフの周りにいくつかの情報を表示します。OpenTypeフォントとType1フォントで動作します。
  • fontsetplot
    • リストフォントのすべてのグリフを表示したpdfファイルを作成します。グリフはグリフID順に、1emの固定間隔で表示され、あるフォントのグリフは1行に、異なるフォントの同じグリフ名を持つグリフは1列になるように表示されます。これは、文字セットが同じであること、グリフの形が似ていることを視覚的に確認するために使われる。これは、あるグリフ名に対してプレースホルダーのグリフアウトラインが貼り付けられたが、正しい形に修正されなかった場合を捕らえるのに便利である。フォントは、まず文字セットの長さでソートされ、次に文字セットのアルファベット順、そして PostScript 名でソートされます。
  • hintplot
    • 1ページに1つのグリフを表示します。ヒントとアライメントゾーンを表示する。
  • waterfallplot
    • フォント内のすべてのグリフについて、ポイントサイズのウォーターフォールを表示します。ヒンティングの評価に使用されます。ヒンティングを見られるようにするために、フォントはPDFに埋め込まれ、グリフはcharコードで参照されます。TrueTypeおよびCIDキー付きフォントではまだ動作しません。

Validation

フォントを確認したりするツールたちかな。
これもフォントを作らない限りあまり使うことはなさそう。

  • psautohint
    • オートヒンティングプログラムは、ヒンティングの問題点を詳細に報告します。たとえば、ステムがヒントゾーンで制御できるのに、幅が少し広すぎたり狭すぎたりした場合のニアミスのレポートなどは無視できます。これらのレポートに従ってステム幅またはヒントゾーンを調整することで、ヒントで制御されるステムをより多くセットに含めることができますが、その努力に見合わないと合理的に判断することも可能です。ただし、曲線の垂直・水平方向の極端にノードがないなど、修正が必要な不満も多い。
  • checkoutlinesufo
    • このツールは、グリフアウトラインデータの品質をチェックするもので、常に使用すべきものである。重なりやパスの方向が正しくないなど、重大な問題を検出するのに非常に優れています。小さな問題をいくつも見つけることには熱心ですが、すべてのエラーメッセージをチェックする価値があるほど、頻繁に正しい結果を出します。また、検出した問題を修正することもできるが、グリフが変更された場合は必ずチェックする必要がある - 修正が元の問題より常に良いとは限らないのである。
  • comparefamily
    • このツールは、ディレクトリ内のすべてのフォントを検査し、多くの品質チェックを実行します。これは、単一のフォントだけでなく、フォントファミリ全体のデータの一貫性をチェックし、比較する唯一のツールです。また、スタイルリンクされたグループ内の命名ミスを指摘します。Adobe Type Departmentでは、Adobe OpenTypeフォントのバグを発見するたびに、ここにチェックを入れるようにしています。これは完全な検証ツールではありませんが、タイポグラファーが犯した数年にわたる間違いの経験を表現しています。
  • sfntdiff
    • このツールは、2つのOpenTypeフォントファイルを低レベルで比較するものです。2 つのフォントが同じかどうか、あるいはどのテーブルが異なるかを素早くチェックするのに最も有用である。
  • ttx
    • 2つのフォントの違いを詳しく見るには、ttxツールを使ってXMLファイルをダンプし、MacBBEditやPCのUltraEditのような優れた差分編集ツールで比較するのが一番良い方法です。このツールはLettErrorのJust van Rossumによって開発され、オープンソースのライセンスで次のサイトから入手できます: https://github.com/fonttools/fonttools
  • ttxn
    • このツールは、2つのフォントが機能的に同じかどうかをテストするために使用します。ttx と tx ツールからの出力をソートして修正し、OTL テーブルレコードの順序、グリフの順序、サブルーチン化の違いなどの問題による差異を排除した正規化テキストダンプを作成します。これは、フォント内の各テーブルに対して1つのファイルを書き込みます。MacではBBEdit、PCではUltraEditのような優れた差分編集ツールで、2つの異なるフォントの出力ファイルを比較することができます。特に、同じフォントの古いバージョンと新しいバージョンを比較するのに便利です。
  • tx
    • このツールには、テストに適したモードがいくつかあります。これは、CFF または TrueType のいずれかのフォントファイル内のフォントプログラムに関するデータのみを表示します。dump オプションは、CFF フォントのグローバルデータとグリフデータのテキストレポートを見るのに適しています。bc オプションは、ラスタライズされたグリフのハッシュをファイルに出力する追加オプションを取ります。あるグリフのセットに対するハッシュファイルが 2 つのフォント間で同じであれば、そのグリフは指定されたポイントサイズで同じようにラスタライズされたことになります。これを使って、アウトラインがまったく同じでなくても、フォントが機能的に同等であるかどうかを判断することができる。最後に、任意のフォントを CFF に変換した場合、フォント データが構文的に正しくなかったり、グリフがヒンティングされていなかったりすると、エラー レポートが出力されます。

インストール

GitHub の README より、Python3.7 以上で使えるようなので、それに従いインストール。

pip3 install afdko

試す

インストールされたツールのうち、面白そうに見えるのは spot なので、こちらを試してみます。
利用するフォントは、以前中身を眺めてみた道路標識フォントの「Nu みちしるべ」です。

spot -h でヘルプを確認。
-F オプションで GPOS/GSUB の feature リストを見ることができるので、どのような feature があるか確認します。

spot -F ./NuMichishirube-Regular-v1.0.0.otf 
GPOS Features:
Script 'DFLT'
    Default language system
        [ 0]='kern' LookupListIndex: 0 ->( 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 ) 
GSUB Features:
Script 'DFLT'
    Default language system
        [ 0]='aalt' LookupListIndex: 0 1 
        [ 1]='calt' LookupListIndex: 3 ->( 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ) 4 
        [ 2]='dlig' LookupListIndex: 5 
        [ 3]='liga' LookupListIndex: 2 

カーニング、異体字リガチャーなどの feature があるので、わかりやすいリガチャー liga を見てみます。

spot -P liga NuMichishirube-Regular-v1.0.0.otf > liga.ps

ps ファイルが出力されるので ps2pdf 使って PDF に変換して確認します。

ps2pdf ./liga.ps

f:id:omron:20220410110702p:plain

リガチャー使って、矢印の標識を一つの文字にしているようでした。

所感

フォントの日なので、たまにはフォントを触ってみました。
ttx で出力された XML ファイルを眺めることはあったのですが、 spot は使ったことありませんでした。
こちらのツールは、GPOS/GSUB に特化しているので、この中身を見たいときに使うととても簡単に解析ができそうです。
AFDKO はたくさんのツールが入っているので、また暇を見つけて触ってみたいと思います。

参考にした資料

「広木さんに聞く! 開発者体験向上のためのエンジニア組織づくり最前線vol.6」 #エンジニア組織_findy 受講メモ

findy.connpass.com

「エンジニアリング組織論への招待」が面白かったので、広木さんの話を聞きたくて参加しました。

スピーカー

  • スピーカー
    • 広木 大地さん/(株式会社レクター取締役/日本CTO協会理事 )/[@hiroki_daichi]
    • 佐藤 将高さん(ファインディ株式会社)/[@ma3tk]
  • モデレーター
    • 山田 裕一朗さん(ファインディ株式会社)/[@yuichiro826]

パネルディスカッション

なぜ、開発者体験 Developer eXperience が注目されている?

  • 広木さん
    • デジタル時代は超高速な仮説検証能力を得るには2つのDXが必要不可欠
      • 企業のデジタル化
      • 開発者体験
    • 給料が高くても人は来ない
      • 開発者体験が大事

開発者体験の向上とは?どんな効果がある?

  • 佐藤さん
    • 開発者体験向上には3つの要素を連動させながら実現
      • 良い組織文化づくり
        • 新しい挑戦にオープン、失敗の強度が高い、納得できる評価制度
        • ビルドスピード早い、テストカバレッジ広い、安心して開発できる環境
      • 生産性向上
        • 開発ボリューム、開発効率を可視化して定期的に改善
          • 可視化できないとエンジニアとそれ以外で対立する原因になる
          • 可視化して共通言語にして上層部/営業などにもわかるようにする
          • 例)
            • プルリク数、プルリククローズ時間、プルリクレビューまでの時間、レビューからクローズまでの時間
        • 開発クオリティを維持するプロセスを設計
      • 採用力強化
        • 良い組織文化と高い生産性が採用につながる
        • 採用の成功が新たな組織文化と生産性向上を生む
  • 広木さん
    • 良い組織文化がないとチャレンジできる会社にはならない
      • 失敗できる強度が高いことが大事
    • その会社にいてキャリアが詰めないと生産性はあがらない
      • テストカバレッジとか見えないところに投資する価値がなくなる
    • ダイナミックケーパビリティ
      • 変化に対応できる文化的資本、挑戦、失敗に対する許容
    • 挑戦できる環境なら、居続けることができる
      • そのために生産性を上げたりするモチベーションになる
    • 文化を作るときは仲間づくりが必要
      • 文化は感染する、感染症と同じ
      • 小さなアクションでも具体化して仲間を見つけて広げていく
    • 文化をコミュニティやブログなどで伝えるほうが広告よりも採用効果がある
      • 非エンジニアは、普通の採用と同じように考えがちで、重要さがわからない
      • 文化が回らないと採用につながらない
      • 社内の取り組みをきちんと対外的に発信することが大事
        • 社外に文化が漏れ出るくらいにその会社のイメージがつくと文化醸成できている
  • プルリク数、プルリククローズ時間、プルリクレビューまでの時間、レビューからクローズまでの時間

まとめ

まとめ

FAQ

  • ブログ続かない問題について
    • 広木さん
      • すごいことを考えず、インプットしたことをまとめてアウトプット
      • 色気出して文章を書くと読むに耐えない内容になる
      • 学んだことをそのまま書く、個人的な備忘録のほうが長続きする
  • 文化を変えるときについてこれない人
    • 広木さん
      • このフェーズが手前だと思うとうまく行かないし辛いだけ
      • 小さくわかりやすい結果がでるところから仲間を作って、過半数を超えを目指す
        • 過半数超えてから、それでも変わらない人について初めて問題になるはず
        • 軋轢が発生するので、その人達が守りたいものは守ったまま、できる人と進めれば、後はついてくる
        • 例えばガラケーを使い続けてた人とか...無理してスマフォ進めなくても勝手に変わる

所感

  • 発信のコツは学んだことをまとめて出すだけ
  • 個人的な備忘録という位置づけのほうが長続きする

は、まさにそうですね。
カッコつけて書こうとしても進まないし、ネットのゴミになる後ろめたさはあるものの、あまり気にせずに自分用の備忘録を取るようにしてます。

「AWSの基礎を学ぼう 第七十八回 Amazon Timestream」 #awsbasics 受講メモ

awsbasics.connpass.com

聞いた記憶もないサービスの Amazon Timestream です。

セッション

Amazon Timestream

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

時系列データとは

  • 時間経過とともに変化する事象を計測
  • タイムスタンプとともに記録されたシーケンスデータ

Amazon Timestream

  • 時系列データを扱う DB
    • 高速、スケーラブルでサーバーレス
    • ストレージ Tier が2つ
      • インメモリ:速度を求められるもの
      • マグネティックドライブ:恒久的に保存しておく必要のあるもの
        • ライフサイクルポリシーでインメモリからマグネティックに移動できる
    • スケーラブルポイントが3つ
  • 東京リージョンにはまだない
  • 1日数兆個のデータを扱える
    • 少ないデータなら Timestream 使う必要もない
  • 活用事例
    • IoT
      • センサーネットワーク、在庫計画
      • 交通状況、物流管理など
    • アナリティクス
      • クリックストリーム分析
      • 株市場、需要予測など
    • DevOps
      • アプリケーションモニタリング
      • ソフトウェアシステムモニタリングなど
  • NoSQL Like だけど DynamoDB ほどの柔軟性はない
  • 時系列機能
    • 補間関数:時系列データの欠損値の保管が可能、4つの手法
      • 線形補間
      • 補間(3次スプライン補間)
      • Laat Observation Carried Forword補間
      • 固定値補間
  • レコードにおけるディメンションとメジャー
    • ディメンション:IoTにおけるロケーションやセンサーデバイスの個別の情報のようなキーに相当するデータが格納
    • メジャー:実際のデータ

所感

Amazon Forecast とかでも扱うような時系列データ専用の DB のお話でした。
途中で「CloudWatch のバックエンドとかで使ってるのかな?」というコメントに対して、

バックエンド実装は、非公開なので実際のところは不明だが、バックエンドで使われているなら、すでに東京リージョンのサービスとしてきているだろう

との予想を言ってて、なるほどと思いました。