Masteries

技術的なことや仕事に関することを書いていきます.

Kichijoji.pm #27で「(今更)Amplifyさっくり体験」というLTをしました

久々にKichijoji.pmに登壇して, AWS Amplifyについて話しました. 前回の登壇が1月の「CI/CD活用事例&TIPS発表会」だったはずなので, 半年ぶりの登壇となりました. ...サボりすぎ!!! なにもかもが久々すぎて, LTなのに事前準備に一苦労したりしていました(いろいろ忘れていた...).

papix.hatenablog.com

AWS Amplifyですが, 先日会社で開発合宿という催しがありまして, そこでのプロトタイプ開発活用したのでした. つい先日, 「React.js & Next.js 超入門第2版」を読んでいるというエントリを書きましたが, これは事前に「今回はAWS AmplifyとNext.jsでやるぞ!」という会話をしていたので, 事前に予習をしていたという文脈があります.

papix.hatenablog.com

React.js, 何度か習得を試みて中途半端な理解で終わる... みたいなのを繰り返していたのですが, 今回1冊ちゃんと(手を動かしつつ)本を読むことで(Next.jsとあわせて)だいぶ理解が深まった気がします. AWS Amplifyの力も活かしつつ, 限られた時間でいい感じに動くものを作り上げられたのは良い体験でしたし, 自信にもなりました.

一方でAWS Amplifyですが, 3日だと表面的な(?)部分しか触れなくて, 高速にプロトタイピングをするには最適でしたが, 実サービスとして運用するにはもう少し理解を深める必要がありそうだな〜, と思いました. 例えば今回はAppSyncでGraphQLを運用していたのですが, シュッとGraphQLのスキーマを変更すると, 一時的にAppSyncが反応しなくなるっぽい(?)出来事があって, その辺りどう運用/解決するかなど考える必要がありそうだな〜, などなど考えていました.

とはいえ総じてAWS Amplify, 大変に良い体験でした. スライドにも書きましたが, 今後何か動くものをシュッと作りたい時に使える良い武器が得られた, という印象です.

小ネタ: TerraformでS3にファイルを設置する

小ネタです. TerraformでS3のbucketを作るとき, ついでに何かしらのファイルを設置したいというシーンがあるでしょう. そういうときは...

resource "aws_s3_bucket" "sample" {
    bucket = "sample-bucket"
    acl = "private"
}

resource "aws_s3_bucket_object" "for_monitoring" {
    bucket = "sample-bucket"
    key = "file"
    source = "/path/to/file"
}

こういう感じで, aws_s3_bucket でbucketを作った後, そのbucketに aws_s3_bucket_object をしてあげると良いです. この場合, /path/to/file に設置されたファイルが, bucket(sample-bucket)にfileという名前で設置されます.

また, source ではいわば「ファイルのアップロード」的な挙動になりますが, 「ファイルを用意したくない(ファイルの中身を.tfの中で設定したい)」という場合は, 次のように content を使うと良いです.

resource "aws_s3_bucket_object" "for_monitoring" {
    bucket = "sample-bucket"
    key = "file"
    content = "hello, s3!"
}

こうすれば, bucket(sample-bucket)に, fileという名前で, 中身がhello, s3!となったファイルが設置されます.

毎日ちょっとずつコードを書く, という行い

なんと気がついたら5月でした. ここ最近は, 「せめて月1でこのブログを更新しよう...」と思っていたので, 不覚!!! という気持ちです(?). 4月のことを振り返ってみると, 特段忙しかった訳でも, 体調崩した訳でもないので(3月末にちょっと熱を出した事はあった), 恐らくネタの枯渇などが原因だったのではないか...? と思います. 他の理由を強いて挙げるとするならば, 4月を通して花粉か何かが激しくて, 常時だるい感じの日々が続いていた... というのがあるかもしれません.

「これではいかんよな...」というのと, あといろいろなことを考えた結果, いい加減(もう31歳だが!?), フロントエンドの技術を真剣に学んでいく必要がある(このワード, もう3〜4回くらいこのブログで書いている気がしており, つまりは何度も試みて何度も諦めている...)と思ったので, 最近はReactやNext.jsについての本を読んでいます.

React.js&Next.js超入門 第2版

React.js&Next.js超入門 第2版

...ところでここ最近, Twitterなどで, 「1日何かしらのコードを必ず書いて, GitHubに草を生やし続ける」という行いをしている方を見かけます.

自分は熱しやすく冷めやすい性格もあるので, 「いやー, いい取り組みと思うが, しかしやっても1週間くらいで終わるのでは...?」と思っていたのですが, 先の本を読んでいくと結構サンプルコードが多く, かつ(少なくとも序盤は)割と量も少ないので, 「まあ, 1日1写経くらいでやってみようか...」と思ってやってみたところ, 案外続いています.

f:id:papix:20210506085418p:plain
序盤は別のことをしていたので隠しています(?)

1週間で終わるのでは... と思っていたところ, 現時点では2週間ほど続いています. 良い題材を見つけることができた, というのもそうですが, 「1日1写経」という形でハードルを下げ, 小さくスタートできたのも良かったのではないかと思います(この辺りはまさしく「小さな習慣」で書かれていたことだなあ, と思いました).

papix.hatenablog.com

今後のことを考えると, 体調不良や忙しさなど, うまくバランス取りながら継続していくのと同時に, さらなる題材を探していくのも課題と言えそうです. 1日ちょっとの写経, 1日ちょっとの学習ではありますが, しかし何もしないよりは遥かにマシ. ということで, 可能な範囲で継続していきたいものです.

最近読んだ本

最近読んだ本達の話題です. 最近, サブ機としてAndroid端末を購入したところ読書が(過去の自分比で)捗りまくっています.

正しいものを正しくつくる

昔, チームでスクラムを取り入れてみよう! となった時, あるチームメンバーにプロダクトオーナーになってください, とお願いしたことがある. ただその時は, その中でプロダクトオーナーはどう振る舞えばいいのか...? といった所について, うまく伝えられなくて, 大変苦労させてしまったという思い出がある. その時にこの本があれば, この本をお手本にして, 「こういう感じでやっていきましょう!」と言えたのではないかなー... と思った.

「正しいものを正しくつくる」ために, 本の序盤ではアジャイルな開発の必要性とその方法, 終盤はその中で求められるプロダクトオーナーの役割や活動が書かれている. この本を読んで, 改めてプロダクトオーナーって明らかに大変で, 超人であることが求められるな... ということを強く思ったので, 次にまたスクラムマスターとして振る舞う機会があったら, 改めてこの本を読んで, スクラムマスターとしてプロダクトオーナーをしっかり支える, という行動が出来たらいいのかな, と思いました.

Clean Agile

割と最近の本で, これまでのアジャイル開発の流れを振り返って基本に立ち返ろう! みたいなことが書かれている. 「アジャイルソフトウェア開発宣言」に至るまでの出来事を振り返る話題があって, 当時の様子を見ているようで面白かった. 「アジャイルにやっていきたいので参考にしたいッス!」という人よりも, いろいろ試してみた上で改めて基本を思い出そう, という時に読めると有用そうと思いました.

Fearless Change

Fearless Change

Fearless Change

まだ半分ちょっとくらいまでしか読んでいないけれど, とても興味深かったので今紹介します(?). 組織の中で変化を起こしたい場合, どうしても自分1人の力では難しい事が多くて, 人々を巻き込んでいく動きが求められることがあります. この本には, そういう時に使えるパターン(アクションの例)が, 変化のフェイズごとにまとめられています.

なので, チームや会社の中で, 新しい施策や取り組みをしたい! という時にこの本で紹介されているパターン達は非常に役立ちそうです. 実際 id:daiksy さんも, 社内でスクラムに興味があるエンジニアの会を立ち上げる時は, この本にあるパターンを意識して動いた, という事を仰っていて, 逆に自分も「あ, これは見たことある!」「やったことなるな〜」という気持ちで読み進めています.

これまでの人生で無意識に使っていたやり方について, それをパターンとして名前を付けることで説明しやすさ(再利用性?)が上がったような気持ちになってよかったです. 人生, どうしても1人では解決できなくて, 仲間を増やしてやっていくしかない...! という場面は案外あるはずで, そういう意味では万人にオススメできる本と思いました.