エンジニアのはしがき

プログラミングの日々の知見を書き連ねているブログです

バックエンド

JavaでJsoupとSeleniumでWebサイトをスクレイピングしてみた

最近IT系のニュースサイトをスクレイピングするプログラムを走らせて、ネットサーフィンする時間を節約するようになりました。 スクレイピングにはJavaのJsoup, Seleniumを使っているのですが、今回はその実装内容について書き残してみます!

SpringでInterfaceを@Autowiredするだけで動作するのはなぜ?

JavaとC#は似て非なるものだと日に日に感じる今日この頃です。

WindowsのGit Bashでmysqlに接続できなかった

Windowsで開発する時は、ターミナルとしてGit Bashを多用しています。が、たまに特有の仕様にひっかかってしまうことがあり、今回もそんなトピックとなります。

Serverless Framework+AWS Lambda(Java8)でHello worldしようとしたらNoClassDefFoundError

少しずつですがJavaのビルドツール周りも分かりかけてきたなという矢先、エラーで数時間ハマりました…😭

Javaでの非同期処理の方法についてピックアップした

まだまだJavaの勉強中です。 先日、そういえばJavaで非同期処理する方法をまだ知らなかったなぁと思い調べてみました。

PostgreSQLのTOASTって何だろう

1つ前のPostgreSQLについてのブログ記事でついでに調べた内容です。そのまま記述すると長文になりそうでしたので分割しました。 PostgreSQLも掘り下げれば掘り下げる程、本当に奥が深い世界だと実感しますね😑

RDS(PostgreSQL)のストレージを拡張した話

こんばんは! データベースは運用し始めてから気づくような問題も多いかと思いますが、今回はそんなトピックです。

.NET CoreからGCPのText-to-Speech APIでテキスト読み上げ音声を生成する

様々な企業がテキストから読み上げ音声を生成するAPIを公開していますが、その中でもGCPのText-to-Speech APIは日本語読み上げのクオリティが高かった為、実装をしてみました。 ↓Text-to-Speech APIは過去記事でラズパイ(Python)でのテキスト読み上げの時に…

言語によって曜日を現す数値の実装はバラバラだった

タイトルの通りです。 各プログラミング言語の曜日を現す数値を調べてみたところ、見事に統一されておらず「何でだよ!」と言いたくなった、そんな記事です。

達人に学ぶDB設計 徹底指南書を読了しました

近々DB設計の機会があるので、一度網羅的にデータベースを理解したいと思い、「達人に学ぶDB設計 徹底指南書」を読みました。今回は読了後のまとめです。 ↓Amazonにて購入できます 達人に学ぶDB設計 徹底指南書 | ミック | 工学 | Kindleストア | Amazon

ER図はPlantUMLで書いて楽しよう!

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

ポートフォリオサイトが完成しました!

空き時間を見てはちまちまとNext.jsで書いていたポートフォリオサイトを公開しました! 今後も追加する内容があればマイナーアップデートを続けていくつもりです😊 portfolio.ts-soda.net github.com

RDS Proxyを使いたかったけどNpgsqlから接続できなかった(解決済み)

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

.NETライブラリのClosedXMLで既存のExcelファイルを編集する

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

Docker上でASP.NET CoreのWebAPIを動かす

ASP.NET CoreをDockerで動かしてみたいなーとなんとなく思ったので動かしてみました。 Visial Studioは使わず、VSCodeで動かす想定です。

Unicodeの結合文字列がバグを呼び起こしてしまった

エクセルに比べれば外部のCSVを扱う処理はまだ悩むことが少ないだろうと油断していたところ、 先日かなり頭を悩ませたので戒めとして記録したいと思います。

AWS Glue(Python shell)をLambda代わりに使ってタイムアウトを伸ばす

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

ASP.NET CoreがLambda上で何故か動かず四苦八苦した

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

APIGateway+Lambdaによるアプリサーバをバージョン管理する

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

.NETライブラリのClosedXMLでExcelファイルを生成する

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

Node.jsでお手軽にHTMLをPDF化させてみる

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

Lambdaで安易に静的メンバーを扱ってドハマリした

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

RaspberryPi+Node.js+Reactで赤外線リモコンをつくろう(2/2)

※この記事は前の記事の続きです。 tm-progapp.hatenablog.com

RaspberryPi+Node.js+Reactで赤外線リモコンをつくろう(1/2)

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