BunからFirestoreにDocumentを追加しようと思ったらうまく動かなかった
ちょっとハマってしまったのでメモがてらに書きます。。 以下のようなFirestoreのあるCollectionにDocumentを追加するような処理を書いてました。 このファイルをbun .tsで実行しようとすると以下の…
ちょっとハマってしまったのでメモがてらに書きます。。 以下のようなFirestoreのあるCollectionにDocumentを追加するような処理を書いてました。 このファイルをbun .tsで実行しようとすると以下の…
日頃技術系のニュースを追う際に、よく見るサイトの記事を俯瞰して見たいので毎日スクレイピングした記事をDBに格納して、自作アプリから見れるようにしています。 ↓こんな感じ 特に大きな問題はなく運用できていたんですが、記事の…
以前Spring Frameworkについて調べていた時、RDBMSとの通信方法をまとめていたのですが記事として公開せず放置していたので公開しておきます。 どれを選択するかは開発チームのスキルセットや今後のシステムの見通…
DBのロックについて考える際にTransaction Isolation Levelsを確認することはよくあると思いますが、バックエンドを触ってない期間が長くなると細かい部分を忘れてしまうのでまとめてみました。 トランザ…
業務ではバックエンドにSpringを使っているのですが、単体テストを書く場合のモックフレームワークとしてMockitoを使っています。 割合としてはE2Eテストの方が多く単体テストを書く機会が少ないのですが、今後は単体テ…
SQLiteを今まで使ったことが無かったのですが、先日ExcelでSQL的なことをしようとして思うように書けず辛かったのでSQLiteへデータを流し込んでSQLのクエリで集計しました。 SQLiteはPostgreSQL…
↑の記事にてInnoDBのロックについてまとめましたが、公式ドキュメントを読み漁る中で「locking read」と「non-locking read」という言い回しがあり、気になったのでまとめてみました。 SELECT…
MySQLを実務で触っているのですが、改めてInnoDBのロックの仕様について頭の整理をするためにまとめてみました。 共有ロックと排他のロックの2種類があり、トランザクション分離レベルによって挙動が変わります。 Inno…
最近IT系のニュースサイトをスクレイピングするプログラムを走らせて、ネットサーフィンする時間を節約するようになりました。 スクレイピングにはJavaのJsoup, Seleniumを使っているのですが、今回はその実装内容…
JavaとC#は似て非なるものだと日に日に感じる今日この頃です。 Springでは@Autowiredを使うことで、インスタンス管理をDIコンテナ側に任せることができ、クラス同士を疎結合に保つことができるようになっていま…
Windowsで開発する時は、ターミナルとしてGit Bashを多用しています。が、たまに特有の仕様にひっかかってしまうことがあり、今回もそんなトピックとなります。 実は以前、Git BashでDockerを利用した時も…
少しずつですがJavaのビルドツール周りも分かりかけてきたなという矢先、エラーで数時間ハマりました…😭 上述のエラー発生前にlog4j-core, jackson-databindに脆弱性があるとIDEから指摘されていた…
まだまだJavaの勉強中です。 先日、そういえばJavaで非同期処理する方法をまだ知らなかったなぁと思い調べてみました。 JavaScript, C#のようにJavaでもasync, awaitで非同期処理が書けるはずと…
1つ前のPostgreSQLについてのブログ記事でついでに調べた内容です。そのまま記述すると長文になりそうでしたので分割しました。 PostgreSQLも掘り下げれば掘り下げる程、本当に奥が深い世界だと実感しますね😑 前…
こんばんは! データベースは運用し始めてから気づくような問題も多いかと思いますが、今回はそんなトピックです。 先日、AWSコンソールのRDS(PostgreSQL)をモニタリングしていたところ、20GiBのストレージ容量…
様々な企業がテキストから読み上げ音声を生成するAPIを公開していますが、その中でもGCPのText-to-Speech APIは日本語読み上げのクオリティが高かった為、実装をしてみました。 ↓Text-to-Speech…

タイトルの通りです。 各プログラミング言語の曜日を現す数値を調べてみたところ、見事に統一されておらず「何でだよ!」と言いたくなった、そんな記事です。 発端は曜日カラムを用意する必要があり、数値型にすべきか文字列型にすべき…

近々DB設計の機会があるので、一度網羅的にデータベースを理解したいと思い、「達人に学ぶDB設計 徹底指南書」を読みました。今回は読了後のまとめです。 ↓Amazonにて購入できます この本は単に知識を羅列しているわけでは…

こんばんは! 仕様書に書く図ってチームで管理する上で統一感を出すのって難しいですよね。 私の場合、色や枠線などのデザインも人によって微妙に違ったりすることも多かったのですが、 そのせいで別の仕様書にコピペするとデザインが…

空き時間を見てはちまちまとNext.jsで書いていたポートフォリオサイトを公開しました! 今後も追加する内容があればマイナーアップデートを続けていくつもりです😊 AWS環境へデプロイしようというのは当初から思っていたので…

AWSでLambda+RDSの構成を構築すると、Lambda自身が起動の度にRDSへのコネクションを張る為に負荷が大きく、あまり宜しくない構成であると言われてきました。 そのような構成の場合、RDS ProxyをDBプロ…

Excelは好きですか? 僕は嫌いです。規則性に乏しい罫線やセル結合にまみれたエクセルを加工するとかうんざりしますね。 …しかしながら最近既存エクセルのプログラムによる修正を強いられましたのでその方法を記録しておきたいと…

ASP.NET CoreをDockerで動かしてみたいなーとなんとなく思ったので動かしてみました。 Visial Studioは使わず、VSCodeで動かす想定です。 なお、.NET 5.0からDockerリポジトリの名…

エクセルに比べれば外部のCSVを扱う処理はまだ悩むことが少ないだろうと油断していたところ、 先日かなり頭を悩ませたので戒めとして記録したいと思います。 なお、見かけ上のCSV文字列とデータベースの文字列は同値に見えており…

AWS Lambdaは、サーバ自体のお守りが不要なのでさくっとバックエンドを構築したい場合はかなり便利です。 ただ難点を挙げるならば、タイムアウトが15分までしか伸ばせない点。 これは残念ながら仕様となっているのでどうし…

フロントエンドから呼ばれるAPIサーバをAWS Lambda(ASP.NET Core)で構築していたのですが、 とあるリリース作業時に最新バージョンをLambdaへデプロイした後、APIサーバが常にエラーを返すようにな…

APIGatewayの統合リクエストとLambdaの組み合わせでバックエンドを構成することが多いのですが、最近になってバージョニングが出来ることを知り、いろいろと調べてみた結果を書き連ねていきたいと思います! 今回書く記…

Excelは好きですか? 僕は嫌いです。大概の内容はマークダウンで済むと思っています。 しかしながら、最近バックエンド(ASP.NET Core)でExcel出力機能の実装を強いられましたのでその方法を記録しておきたいと…

PDFを生成するjsライブラリとして、以前からpdfmake( チマチマソースをいじっては実PDFの出力結果を見て、また修正して…といった繰り返しが大変苦痛でした。 HTMLのようにブラウザの開発者ツールでお手軽微調整が…

業務では、C#でAWS Lambdaをでゴリゴリに使い倒すことが多いのですが、 先日、短期間に連続してLambdaを実行すると意図したレスポンスが得られないというバグが発生し、半日程溶かしてしまいました。 戒めとして、L…

※この記事は前の記事の続きです。 ここからは、スマホやタブレットから簡単に赤外線発信させるためのwebアプリを使っていきます。 ちなみにReactで実装する必要性はないので、Vue.jsなりAngularなり得意なフレー…

こんにちは! 仕事から帰ってくると部屋が寒い…エアコンが効くまでがツラい…そう思う時期になってきました。 せめて事前にエアコンを自宅外から操作できればいいのに…という思いから、今回は余っていたラズパイを引っ張り出して、赤…
