メンチカツには醤油でしょ!!

AWS/Java/Node.js/Spreadsheets/Docker/Jenkins/コミュニティ・勉強会レポを主とした技術系ブログ

#devsumi スライドまとめ Developers Summit 2017 Summer

まとめました

Developers Summit 2017 Summerの発表資料(スライド)を徐々に集めていきます。

公式で公開されています。

codezine.jp


しかしまだこちらの方が集まっているのはナンデダロウ。
TogetterはCodeZineアカウントで早速まとめられています。(流石!)

現在非公開になっているものは見つけ次第、追記していこうと思います。
漏れてたり間違ってたり追加があったり、後に非公開になったりした場合は @ryoichi_obara までお知らせ頂ければと思います。

【A-1】SIerオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~

www.slideshare.net

【B-1】コミュニティがITビジネスにもたらす変化 

www.slideshare.net

【C-1】エンジニアコミュニティを推進する企業文化 ~楽天での5年間のコミュニティ活動・社内勉強会からみえてきたこと~

【A-2】SoRとSoEをつなぐ「エンジニアの役割」と「企業の課題」

www.slideshare.net

【B-2】GitHub Enterpriseがもたらした革新をエンジニア視点から

非公開

【C-2】エンジニア発信による事業課題への挑戦

非公開

【A-L】コミュニティが成長させるマルチクラウド環境でのデータ管理の世界 ~Docker Hubで500,000ダウンロード達成、Scality S3サーバーが進化を遂げた!~

www.slideshare.net

【B-L】Yahoo! JAPANのコミュニティが生み出す価値

www.slideshare.net

【C-L】コミュニティ、デベロッパとの付き合い方〜SendGridの場合〜

【A-3】コミュニティ活動と企業の相互作用 ~コミュニティへの貢献と組織活動への還元~

非公開

【B-3】コミュニティ活動がもたらす自身と会社への変革

【C-3】Deep Dive into JavaScript Community

【A-4】IoTアプリの開発スピードが10倍に!素早く異常検知を実現するConnexon

非公開

【B-4】時代の先端で躍進するクラウドデベロッパー達が語る!~AI、IoT、ブロックチェーンなどのテクノロジーを使いこなして活躍するためには?~

非公開

【C-4】世界的クラウド企業がコミュニティを育てるために考えていること

www.slideshare.net 

【A-5】組織と文化のリファクタリング

【B-5】「転職したてのエンジニアが見た」 ~国産クラウド開発現場の苦労とやりがい~

www.slideshare.net

【C-5】LINE BOT SDK の開発とサポートから学ぶコミュニティ運営の勘所

非公開

【A-6】モンスターストライクにおけるDevOps(SRE)の取り組み 〜世界累計利用者数4,000万人に至るまでの絶え間ないインフラ改善〜

モンスターストライクにおけるSREの取り組み

【B-6】eurekaの普遍的に優秀な人材として成長し続けるための組織づくり

www.slideshare.net

【C-6】CIにおけるセキュリティテストの組み込み方について

非公開

【A-7】こっそり教える有名コミュニティの裏話 ~Tensorflow、Java、PyData~

非公開

【B-7】コミュニティを長く続ける秘訣

(一部)

www.slideshare.net

【C-7】エンジニアコミュニティの今が分かる! コミュニティLT

(一部)

www.slideshare.net

MacのChromeで開発者ツールを表示させようとするとメールが立ち上がる

開発者ツールを立ち上げようと思ったらメールが…

メールボックスの設定すらしていないのにメールクライアントが立ち上がって、本文に閲覧中のページのURLが

最初macOS自体のショートカットなのかと思いシステム環境設定⇒キーボード⇒ショートカットで出てくる一覧を確認するもメール関連のものがなく困ってました。

f:id:ryoichi0102:20170707184245p:plain
(一体どこにメールが立ち上がるショートカットが設定されているのか…)

原因はChromeのキーボードショートカット

Windowsではあまりお目にかからなかったのですがMacではこんな所に"ページの場所をメールで送信"と…発見。

f:id:ryoichi0102:20170707184220p:plain

ということでChromeのショートカットを変更

しようとするもKeyconfigとかいう拡張機能を入れなければいけないらしい。
えっ…イマドキkey bindingsの設定なんてそこらへんのJSONファイル編集すれば変更できるんじゃないの?

・・・で、よくよく調べたらOSデフォルトでアプリのショートカット挙動を変える方法がありました。

システム環境設定⇒キーボード⇒ショートカットで出てくる一覧からアプリケーションを選択し、+ボタンを押します。

f:id:ryoichi0102:20170707184245p:plain

ここで、アプリケーションはChromeを選択し、
メニュータイトルに、デベロッパー ツールと入力、
キーボードショートカットは⌘Command + shift + Iを打鍵します。
特にメニュータイトルは一字一句間違えずに入力します(完全一致らしい)。

f:id:ryoichi0102:20170707184427p:plain

下記のように設定されればOKですね。

f:id:ryoichi0102:20170707185104p:plain

設定完了

次に開いた新しいタブから適用になっています。

f:id:ryoichi0102:20170707185637p:plain

Chromeの他のショートカットも設定したい

上記の要領で、メニュータイトルに表示されている文言をメニュータイトルに設定すれば、他の機能のショートカットもカスタマイズできます。

参考

そもそもキーボードショートカット設定が似ているのが原因でした。

Command + shift + I (デフォルト:メール) と
Command + option + I (デフォルト:開発者ツール) と。

で、間違えて押すことが多く元々煩わしいかった、上書きする形で設定しました。

apple.stackexchange.com

IAMでRDSのインスタンス作成を制御する

IAMでRDSを制御する

たとえば、t2.microのPostgres 9.5インスタンスの作成をユーザーに許可するポリシーJSONは以下の通り。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "RDSList",
            "Effect": "Allow",
            "Action": "rds:Describe*",
            "Resource": "*"
        },
        {
            "Sid": "RDSCreatePostgres",
            "Effect": "Allow",
            "Action": [
                "rds:CreateDBInstance",
                "rds:AddTagsToResource",
                "rds:ListTagsForResource"
            ],
            "Resource": [
                "arn:aws:rds:ap-northeast-1:000000000000:db:mydb-*",
                "arn:aws:rds:ap-northeast-1:000000000000:og:default:postgres-9-5",
                "arn:aws:rds:ap-northeast-1:000000000000:pg:default.postgres9.5",
                "arn:aws:rds:ap-northeast-1:000000000000:subgrp:default"
            ],
            "Condition": {
                "StringEquals": {
                    "rds:DatabaseEngine": "postgres",
                    "rds:DatabaseClass": "db.t2.micro"
                }
            }
        }
    ]
}

対象リージョンを変更したい場合は、ap-northeast-1の部分を変更します。

000000000000の部分はアカウントNoです。

mydb-*の部分はDBインスタンス識別子です。 

rds:CreateDBInstance だけじゃ少し足りないかも

Actionの
    "rds:AddTagsToResource"
    "rds:ListTagsForResource"
はResourceの
    "arn:aws:rds:ap-northeast-1:000000000000:db:mydb-*"
にかかっています。

インスタンス作成時に同時にタグ追加(AddTagsToResource)が行われるため、その権限が必要になります。
(実際の画面では、インスタンス作成にタグ追加エラー表示が出るが、インスタンスは作成されます)

f:id:ryoichi0102:20170524165546p:plain

インスタンス作成後に自由にタグ追加されたくないのであれば設定すべきではないでしょう。上記のJSONから"rds:AddTagsToResource"を取り除きます。Resourceは"rds:CreateDBInstance"にもかかっているので取り除きません。

また、インスタンス作成後にユーザーがインスタンスの詳細を表示した際、タグの一覧表示の部分でエラーになるため、"rds:ListTagsForResource"を設定しています。

f:id:ryoichi0102:20170524170412p:plain

参考

"rds:DatabaseEngine": "postgres"
"rds:DatabaseClass": "db.t2.micro"
のあたりで指定できる値の一覧が載っています。

docs.aws.amazon.com

RDS+IAMの全体的なドキュメントはこちら。

docs.aws.amazon.com