Tech

Tech

PostgreSQLのORDER BYでNULLの表示位置を制御する

PostgreSQLで一覧画面や管理画面を作る際、ORDER BY による並び替えはよく使います。 しかし、並び替え対象のカラムに NULL が含まれている場合、期待と異なる位置に表示されること

【Swiper】ループ時のカクつきを直す

起きていた問題 下記のような中央スライドが大きいスライダーを実装したところ、ループのつなぎ目のタイミングでアニメーションがカクつく現象が発生しました。(Swiper 8.4.7)

【OSSでWiki構築】第7回:アクセス制御編 トラブルシューティング

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編)第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編)第5回(Google OAuth編 トラブルシューティング

iOS 26 × HLS ライブ配信でブラックアウトが発生する件

症状 Flutter(iOS)でHLSライブ配信を再生中、映像・音声ともに完全に止まるブラックアウトが発生。 条件内容発生端末iOS 26端末のみ(機種問わず)発生コンテンツライブ配信のみ

絶対に見えない要素で目に見える余白が発生する……世にも奇妙なCSS

visually-hiddenの要素なのにスクロールできる余白が生まれてしまう……本当にあった怖い話です。

Adobe Fontsの導入手順

コーディングでカンプを確認するとGoogle fontsではなくAdobe Fontsが使われていた...どうやって使おう?と困った方も多いのではないでしょうか。本記事ではAdobe Fontsの基本

止めない。壊さない。で、刷新

── レガシー基幹システムをGoogle Cloudで「今すぐ動く」分析基盤に蘇らせる、ちょっとずるい考え方 この記事はこんな人に向けて書いています 商社やメーカーなどで「DXを推進せよ

仕様書どおりですけど何か?

現場と、行間と、パートタイマーさんと。 システム開発の現場にいると、たまに「誰も悪くないのに、誰も幸せにならないシステム」が完成してしまう瞬間に出会う。 PMは、現場の要望を丁寧にヒアリン

【OSSでWiki構築】第6回(アクセス制御編)

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編)第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編)第5回(Google OAuth編 トラブルシューティング

生成AI × Go:LLMをプロダクトに組み込む設計パターン

GoでLLMのAPIを叩いてみたことはありますか?数十行のコードで動くプロトタイプができて、最初は感動します。でも、それを実際のプロダクトに組み込もうとすると、別の問題が次々と出てきます。 レス

プロンプトの向こう側と消えない付箋の日々

どこの現場に行っても「AIでDXを推進しよう」という話。エージェント元年。ChatGPTが登場したとき、プロンプトを入力すれば綺麗な回答が返ってくることに誰もが感動した。社内チャットボットを導入して、

JSを最低限しか使わない!でも動くアコーディオンの作り方

思っている以上に実装上考えることが多い・またはライブラリにまるっと任せがちなアコーディオン挙動について、可能な限りCSSを活用してJSに頼らない方法をまとめました。

よく使うCSSの小技(蛍光ペン・ストライプ背景)

よく見るけど、いつもどう書くんだったかな〜と調べがちなCSSを2つまとめました! 1.蛍光ペン風ラインマーカー HTML <p><span>蛍光ペン風

Goの暗黙的な実装を明示的なチェックに変えるイディオムについて

はじめに 初めまして、J.B.GoodeでエンジニアをしているFujimotoです!今回はGoの、「インターフェースガード」についてまとめていこうと思います。 構造体がインターフェースを満

【OSSでWiki構築】第5回(Google OAuth編 トラブルシューティング)

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編)第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編)第5回(Google OAuth編 トラブルシューティング

重力とレスポンシブ

Webサイト上にはこの宇宙に浮かぶ惑星と同じく、重力があります。 ここでいう「重力」とはざっくりというとものは下方向にぶら下がる力のことと思ってもらうのがよく、つまりHTMLの内部で上に置かれて

AI専用の案内板「llms.txt」とは? Webサイトの情報を正しくAIに届けるための新標準

🤖 llms.txt とは? llms.txt は、Webサイトの情報をChatGPTやClaudeなどのAI(LLM)が効率よく理解できるようにするための、新しい「案内板」となる規格案です。

ロードバランサの背後にリバースプロキシを使うべきかどうか

AWSを利用していると必ず耳にする、「ALB(Application Load Balancer: L7)」, 「NLB(Network Load Balancer: L4)」、誰もが耳にしたことのあ

Safariで<video>タグの出し分け(PC/SP)がうまくいかず拡大されるバグの対処法

はじめに WebサイトのKVなどで、PCとSPで異なる動画を出し分けるケースはよくあります。先日、タグで動画の出し分けを実装したところ、「PCのSafariで閲覧した時だけ、なぜかSP用の動画が

【OSSでWiki構築】第4回(Google OAuth編)

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編)第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編) ※本記事第5回(Google OAuth編 トラブルシュ

その画像、本当にSVGでしょうか?

SVG画像はベクター形式なので劣化がなくてキレイかつ便利!とお思いのみなさま、突然ですがSVG画像の「中身」を見たことはありますでしょうか。 SVG画像が上記のような特徴を持つのは、画像としても

SQLBoilerでJoin系のクエリを実行したい時はこうしよう

SQLBoilerでInnerJoinやLeftJoinをしたいとき、qmパッケージのInnerJoinとLeftJoinなどを使いがちです。 ただここで問題があって、 このqmパッケージ

方眼紙のような背景をCSSで作る

課題 方眼紙のような背景を画像で実装していたが、実機で拡大すると下記の通り途切れたように見える部分がある。 原因 ピクセルのズレと丸め誤差スマホの画面に合わせたり、ピンチア

AWSリセールアカウントでBedrockのAnthropicモデルが使えなくなったときの対処法

はじめに AWS のリセール(請求代行)アカウントで Amazon Bedrock の Anthropic モデルを使用していたところ、モデルの更新をきっかけに2つの問題が立て続けに発生しました

【OSSでWiki構築】第3回(環境構築編 トラブルシューティング)

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編)第3回(環境構築編 トラブルシューティング) ※本記事第4回(Google OAuth編)第5回(Google OAuth編 トラブルシュ

scrollなんちゃらの名前が覚えられない

CSSで扱う「スクロール」が付くプロパティについて、プロパティ名と共に整理してまとめてみました。

Git操作をよりスマートに「Lazygit」

普段からCLI, TUIでターミナル操作や開発体験を充実させている方なら「Lazygit」1度は聞いたことがあるのではないでしょうか? Lazygitは、Gitをターミナル上で視覚的かつ直感的に

縞模様(ストライプ)を作るrepeating-linear-gradient

まっすぐなシマシマ CSSでシマシマな縞模様(ストライプ)を作るためにパッと浮かぶのは本来グラデーションを作るために使われる background-image: inear-gradi

ページトップを判定したいだけなのに

課題 よくある「トップページに戻る」ボタンが画面固定されている場合について、自分がページトップにいれば非表示(非活性)・いなければ表示(活性)するようにしたい。 問題 もっとも容易に

Live Sass Compilerをやめてnpmスクリプトに移行する

概要 これまでVS Codeの拡張機能「Live Sass Compiler」を使用してSCSSをコンパイルしていましたが、環境(設定やバージョン)によって出力されるCSSに差分が生じる問題が発

ejs-cliとnpm scriptsで静的サイト制作環境を構築する

概要 以前、Sassのコンパイル環境をnpm scriptsで構築しましたが、今回はさらにHTMLをEJSに置き換えて、ヘッダーやフッターなどの共通パーツを効率的に管理できる環境を作ります。

【OSSでWiki構築】第2回(環境構築編)

【OSSでWiki構築】連載記事一覧第1回第2回(環境構築編) ※本記事第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編)第5回(Google OAuth編 トラブルシュ

【OSSでWiki構築】第1回

【OSSでWiki構築】連載記事一覧第1回 ※本記事第2回(環境構築編)第3回(環境構築編 トラブルシューティング)第4回(Google OAuth編)第5回(Google OAuth編 トラブルシュ

Goのイテレーター・ジェネレータについて

はじめに Go 1.23でイテレータ機能が標準ライブラリに追加されました。本記事では、新しく導入されたiterパッケージの使い方と、従来のスライスベースの反復処理との違いについて、実行フローとパ

GoでEnumを表現する2つのパターン

Goには、Pythonなどの言語にあるような厳密なEnum型が存在しません。そのため、独自の型定義と定数を組み合わせてEnumを表現するのが一般的です。 今回は、実務でよく使われる2つの表現パタ

スムーススクロールはJSでやるべき

みなさん、スムーススクロール(慣性スクロール)してますか。 jQueryの世界ではいにしえより伝わる以下のコードがあり、 # で始まるIDへのアンカーリンクの「スクロールがヌルっと動くため」だけ