Webエンジニア ビルドした時に「java.nio.file.NoSuchFileException」が出たときの解決法 Gradleキャッシュを以下のように手動で削除してから再度Intellij IDEA でビルドを行うとエラーになった $ rm -rf $HOME/.gradl... 2024.03.21 Webエンジニア
Webエンジニア VARCHAR(255)とするのは何故?慣習?改めてVARCHAR(255)の壁を解き明かしてみる 最近ではあまり見られませんが、昔のデータベースのテーブル設計を見てみると VARCHAR(255) という指定がちょくちょく見られます。 utf8mb4が主流の... 2023.12.25 Webエンジニア
Webエンジニア 意外と忘れがちな1テーブルあたりの文字数最大値、インデックスを貼れる最大値 おさらい utf8mb4環境下でのVARCHAR(X)のXは文字数を表し、バイト数は1文字4バイトまでを扱う。 つまり VARCHAR(16383)が65532... 2023.12.24 Webエンジニア
Webエンジニア 絵文字を文字数カウントするとおかしくなる問題の謎を解き明かす 文字カウントするときに厄介な絵文字が存在します。例えばこのような「👩👩👧👧」絵文字です。1文字に見えますよね? でもこれ7文字換算されることもあります。 ... 2023.11.23 Webエンジニア
Webエンジニア 絵文字を正しくカウントするってなんだ?絵文字を扱う入力フォームのシステム設計を考える 入力フォームを作る時にこいつの文字数の扱いに苦しみませんか?そう「絵文字」です。 絵文字の文字数をどうやって「正確に」数えてアプリケーションを作るか、という問題... 2023.11.12 Webエンジニア
Webエンジニア スマホネイティブアプリではCookieを使ったセッション管理は出来るんだっけ?出来ないんだっけ?の話 要件 要件として ブラウザ版はセッション保持期間を30分間。 スマホ版は明示的にログアウトしない限りセッションは切れない。 こんなアプリケーションを作る場合、セ... 2023.11.11 Webエンジニア
Webエンジニア 認証と認可の素人が「OIDC」「OAuth2.0」「SAML」を1から勉強したときのまとめ 認証と言えば「一つのサーバでID/パスワードを入れる」 それ以外って何があるの? という所からSSO・OAuth2.0・OIDC・SAMLをざっくり理解出来ると... 2023.11.03 Webエンジニア
Webエンジニア 【最新版】Macのターミナル画面にGitブランチ名を表示させるようにする M1,M2,M3時代の 「Macのターミナル画面にGitブランチ名を表示させるようにする」 方法を書いていく 目指す形はこんな感じ こんな風に右端にブランチ名を... 2023.07.02 Webエンジニア
Webエンジニア Sequel Pro(Ace)のクエリ実行時間は意図しない数値が得られる場合があるのでクエリチューニングでは気を付けよう MacのDBクライアントツール、Sequel Proを使っていた時の話。 ここで言ってるクエリ実行時間はこれ。左下にでるメッセージ。ここだとあるクエリで2.5m... 2023.05.25 Webエンジニア
Webエンジニア message.propertiesの文字化けしてる文字をターミナルで日本語grepしてUTF-8で一覧化してまとめる方法 「Spring bootで多言語対応に使っているpropertiesファイルに記述してあるメッセージに対して、特定の文字を使ってる部分を抜き出してまとめたい。」... 2022.11.21 Webエンジニア
Webエンジニア 【Kotlin】KotestのFreeSpecで「No tests found for given includes: [XXXXX](–tests filter)」とエラーが出る場合の原因 KotestをFreeSpecで書いていて「No tests found for given includes: (--tests filter)」という謎のエ... 2022.08.28 Webエンジニア
Webエンジニア Gradleの「bootJar タスク」と「jar タスク」で生成されるjarファイルの違い Gradleタスクの bootJarとjar で生成されるjarの違いをちゃんと理解してなかったので備忘録として残しておく 「bootJar」タスク は 実行可... 2022.04.03 Webエンジニア
Webエンジニア 【Node.js】qs.stringfy でvalueがundefinedのkeyはクエリ変換の際に省略されるので注意しておく Node.jsのライブラリqsを使ってクエリ構築する時にちょっと戸惑ったのでメモ。 ライブラリのインストールはこれ $ npm install --save @... 2022.03.03 Webエンジニア
Webエンジニア 【Kotlin】改行コードを含んだ文字列を trimIndent を使って一行で出力させる方法 バリデーションのテスト等で長い文字列を出力する必要に迫られるときがある。 何も考えずに書くと下記のようになるが、エディタの最大文字数を超えたりして可読性も落ちる... 2021.11.10 Webエンジニア
Webエンジニア 【Kotlin】やっぱりジェネリクスの関数オーバーロードは出来ない Kotlinで引数にジェネリクスを取る関数のオーバーロードを実装してみようと思ったときに詰まったのでメモ。 こんな感じで作ってみるとエラーが出る。 fun ma... 2021.11.07 Webエンジニア