emahiro/b.log

Drastically Repeat Yourself !!!!

2021-01-01から1年間の記事一覧

DynamoDB の Scan の挙動がわからなかったので調べた話

Overview DynamoDB の Scan 操作について AWS のマネジメントコンソールと API 直叩きで返ってくる List が違う、ということがあったので調べてみました。 どう違ったのか? 以下のような事象が起きてました。 AWS マネジメントコンソール上からあるテーブル…

DynamoDB で Update GSI しようとしてやらかした話

Overview 何をしたのか? 何が起きたか どうして起きたか? 今後どうすればいいか まとめ Overview タイトルの通りなのですが、DynamoDB の Global Secondary Index(以下 GSI) を更新するにあたり、更新方法でミスったのでことの顛末を備忘録として記載しま…

Lambda の同時実行数を制限する

aws

Overview タイトルの通りです。 久しぶりに Lambda on Serverless Framework を触っていて忘れていたので備忘録です。 Conclusion Lambda の同時実行数を制限するには Reseved Concurrency の設定を 1 にします。 Serverless Framework は function の reser…

chi で独自の middleware 使う

go

Overview chi で独自 middleware を使う上で使い方を忘れていたのでその備忘録。 備忘録 router.Use(func(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { // middleware でやりたい処理 next.S…

AWS Go SDK V2 を使ってみる

Overview AWS SDK for Go V2 について AWS の設定をロードする 独自で環境変数を持ってる場合 DynamoDB を使う DynamoDB クライアントを Load する リソースを更新する expression はまだ feature だった 余談: 毎回めんどいなーところと思うところ Transact…

strings.Split は分割できない時でも長さ1の slice を返す。

go

https://play.golang.org/p/ss6gWvidE2u でなんで長さ 1 の slice が返ってくるんだろーって悩んでたのですが、、、 // Split slices s into all substrings separated by sep and returns a slice of // the substrings between those separators. // // If…

Slack のスレッド利用「原則非推奨」という実験をやってみた

Overview 背景 振り返り Good More 個人的な所感 コミュニケーションコストについて 最後に Overview 僕の担当してるプロジェクトの Slack チャンネルで1週間限定で スレッド利用原則非推奨 というルールを作って運用してみた振り返りです。 プロジェクトに…

参照型変換メソッドを func で表現する

go

Overview タイトルの通りなんですが、Go の struct をするときにその struct のあるフィールドを参照型にすることがあると思います。 この参照型のフィールドに値を代入するために、プリミティブな型を参照型に変換するだけの関数を作成することがあるかと思…

同一文字列を繰り返す strings.Repeat

go

Overview テストケースで使えそうな strings の機能を教えてもらったので書いておきます。 テストケース書くときに使えることを教えてもらったhttps://t.co/tvtsGQjufL— ema (@ema_hiro) 2021年1月19日 Strings.Repeat https://golang.org/pkg/strings/#Repe…

DBで絵文字を保存するときは文字列長に注意する

Overview https://ema-hiro.hatenablog.com/entry/2021/01/19/141854 にて文字数をカウントするのは難しい話を書きましたが、追加の余談で、DBに絵文字付きのテキストを保存する時には、文字列長に注意しないといけないことについても記載します。 ‍‍‍ がど…

Go で文字数をカウントする

go

Overview Go 言語で文字数をカウントする方法について記載します。 そもそも文字数を数えるとは? LINE Engineering のこのブログが詳しくてわかりやすいです。 engineering.linecorp.com ある文字列の文字数を計算するときに、コンピューター上で「何文字」…

Firebase deploy via Github Actions

Overview Firebase 上で動作している Nuxt で書かれたアプリをGithub Actions 経由で Deploy する機構を作った話です。 手順 前提 以下の前提が必要です。 デプロイ権限を持っているFirebase アカウントがあること。 デプロイするための Firebase Token を取…

コンテナで Lambda を動かす

Overview 12 月の re:invent で Lambda のパッケージングフォーマットにコンテナイメージがサポートされたので、少し遅くなりましたが、デプロイまで試してみました。 今回はランタイムに Go を使用してます。 このエントリは以下のドキュメントを参考にして…

僕の価値観 ~ 2021 年 ver ~

あけましておめでとうございます。 2021年一発目のブログが記念すべき 250 投稿目です。 自分でもよく続いてるなと思います。 2021年1発目に何を書こうか迷ってたんですが、現時点の自分の価値観をエンジニアリングに関するところと、キャリア全般に関すると…