maybe daily dev notes

私の開発日誌

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

TIL: ピックの定理とShoelace formulaすごいぞ!

今年もAdvent of Codeにぼちぼちと参加しています。その中で、ピックの定理とShoelace formulaを知ったので簡単にまとめておきます! Advent of Codeについてはこちらも↓ qiita.com ピックの定理とは すべての頂点が二次元格子点上に存在する多角形の面積を…

ISUCON13で下四桁賞を拝領した - 結果は43位でした

子供は生まれましたが今年もISUCONに参加しました。4度目くらいです。 前回は予選でそこそこ良い成績を残しそうになったので、今年は期待ですね。 準備 今年は予選がないということで、ISUCON11本線の問題を事前に見ておきました。結果的にたまたま今回もほ…

CDK Tips: 2種類のaddDependency

AWS CDK Tips シリーズです。 CDKに addDependency メソッドが2種類あることをご存知でしたか?今日は2つの違いをお伝えします。 addDependency とは addDependency メソッドは、コンストラクト間の依存関係を明示的に指定するための機能です。AWS CDKにおい…

CDK Tips: cdk synthを高速化する

AWS CDK Tipsシリーズの記事です。 CDKアプリケーションの開発運用が成熟するにつれ、CDKの合成処理 (synthesize)が遅く感じることがあります。 合成処理はCDKのデプロイやdiffのたびに走るため、速ければ速いほど嬉しいものです。 この記事では、合成処理を…

Amazon Bedrockでもコードレビューしたい!

最近LLMでコードレビューする記事が話題になっていました: zenn.dev 上記の記事ではCodeRabbitというOSS/SaaSを用いることで、ボットがレビュワーとしてGitHubプルリクのレビューに参加する体験が実現されています。 CodeRabbitのOSS版ではChatGPTのAPIを用…

CDK Day 2023に登壇しました

先日CDK Day 2023というイベントに登壇しました。 今後本イベントに登壇を考えている人の参考になればと思い、手続きの概要や感想などまとめておきます。 CDK Dayとは AWS Cloud Development Kit (CDK)やcdktf・cdk8s・projenなどCDK周辺の話に特化した、CDK…

Infrastructure from Code (IfC) ツールまとめ

昨今Infrastructure from Code (IfC)という概念をよく耳にします。先日もAWSのGregor Hohpeが関連する記事を書いていました。 architectelevator.com この記事では、Infrastructure from Codeとはなにか簡単に紹介し、具体的にどのようなツールがあるか網羅…

AWS Lambda Pythonでsqlite-vssによるベクトル検索を利用する

昨今LLMの台頭により、テキストをベクトル化して類似文書の検索に利用する手法が流行っています。 今回はAWSでこの検索を実現するための一方法として、SQLiteのプラグインであるsqlite-vssをAWS Lambda上で使う方法をまとめます。 github.com 意外とハマりど…

AWS CDKのカスタムリソースをCodeBuildで処理する

AWS CDKを使えば、CloudFormationのカスタムリソースをLambda関数で簡単に定義することができます。 しかしながら、時にLambda関数だけでは都合が悪く、別のコンピュート環境を使いたくなる場合もあるでしょう。 私の作っている deploy-time-build というCDK…

完璧より簡潔が良い - バグ修正編

最近タイトルの考えに至ることが短期間に2度あったので、改めて書き出してみる。 問題提起 例えば今、何らかのコードのバグ修正を試みている状況だとする。バグの原因は考慮漏れのエッジケースがあったとしよう。 修正のアプローチとして以下2つがあるとした…

CDK Tips: ID=Defaultの使い方

AWS CDK Tipsシリーズです。 昨日のCDKカンファレンスで触れた ID=Default の話に思わぬ反響があった (嬉しい!) ので、詳しくまとめます。 ID=Default とは この記事では、AWS CDKのコンストラクトの第2引数のID (Identifier) に Default という文字を指定…

AWS Summit Tokyo 2023に登壇しました

2023/4/20-21に開催されたAWS Summit Tokyo 2023に、AWS社員として登壇してきました! 大規模イベントでのオフライン登壇は初めてだったので、完走した感想をまとめます。 今日の17:20から発表しますわよ #AWSSummit pic.twitter.com/gSdcLc6RB8— Masashi To…

もなちゃん(文鳥)が初めて卵を産みました

先日桜文鳥のもなちゃんが初めて無事に卵 (無精) を産みました 顛末をまとめるので、メス文鳥を飼っている方は参考にしていただければ幸いです! 産卵日の前から時系列順に様子などをまとめます。 〜2ヶ月前 この時期は卵を安全に産める場所を探すようです…

AWS CDK Tips 記事まとめ

AWS CDKを日々使う中で溜まった知見を書き出しています。記事を追加するごとにここも更新していきます。 以下はベストプラクティス的な話です: CDK Tips: コンストラクトで構造化しよう すべてのリソースをスタックのコンストラクターにベタ書きしないほうが…

AWS CDK Tips: クロスリージョンのデプロイ

AWS CDK TIpsシリーズの記事です。 AWSでサービスを構築する際、単一リージョンで提供するサービスであっても、クロスリージョンのデプロイが必要になる場合がまれにあります。AWS CDKでは、そのような構成も簡単に実装可能です。今回はCDKを使ったクロスリ…

AWS SDK JavaScript v3でS3のファイル操作 チートシート

ワタミチートシート以来、久々のカンペ記事。 AWS SDK JavaScript v3がリリースされて久しいが、移行は進んでいるだろうか? LambdaのNode.js v18ランタイムではv3 SDKのみビルトインされているなど、そろそろ移行を進めないとまずい状況も増えてきている。 …

TypeScriptのcode-firstなGraphQL開発ツール比較: TypeGraphQL vs Nexus vs Pothos

GraphQLサーバーを開発する際は、まず schema-first か code-first かを決めることになるでしょう。前者はまず graphql.schema を手書きし、そこから言語固有のコードを生成する方法です。後者は言語固有のコードを書いてから、 graphql.schema を生成する方…