Web Tech

WindowsのCtrlキーとMacのCommandキーを識別する

WindowsとMacでは修飾キー (CtrlキーやCommandキー(⌘)) の役割が異なります。操作性を統一するためにプログラムの中でシステムと修飾キーの組み合わせを識別する方法について解説しています。
SVG

SVGのビューポートとビューボックスの関係を理解する

SVGを使う上で最初に躓く(かもしれない) ビューポート (viewport) とビューボックス (viewBox) の関係について解説します。ビューポートとビューボックスを実際に定義してその結果を確認できる可視化ツールも提供しています。
SVG

SVG要素の分類について

SVG (Scalable Vector Graphics) 仕様書に定義されている要素のカテゴリを分かりやすいように図式化してみました。
SVG

SVGとマウスイベントの処理について

Webブラウザ上でのScalable Vector Graphics (SVG) のマウスイベントの処理について解説します。<use>, <symbol>, <marker>といったのHTMLには無い位置付けの要素について注意点をまとめました。
React

備忘録: Reactコンポーネントの純粋性と副作用について理解する

Reactではコンポーネントは純粋 (Pure) であることが求められる。純粋であるとは具体的にはどういうことか、またなぜ純粋性が求められるのか、そして副作用との関係は、といった疑問について考察してみた。
Nginx

Nginxをプライベート認証局やオレオレ証明書でHTTPS化

Nginxで構築したWebサーバーのHTTPS化について紹介します。サーバー証明書には、プライベート認証局で署名した証明書、または自己署名した証明書を使っています。
Apache

UbuntuのRedmineをApacheで動かす (HTTPSとCORSに対応) (旧版)

UbuntuにインストールされたRedmine 5.0をApacheと組み合わせて稼働する手順を紹介します。自己証明書を使ったHTTPS化、またCORSの対応方法についても紹介しています。
Nginx

UbuntuのRedmineをNginxで動かす (HTTPSとCORSに対応)

UbuntuにインストールされたRedmineをNginxと組み合わせて稼働する手順を紹介します。自己証明書を使ってHTTPS化し、またCORS対応も行っています。コピー&ペーストで実行可能です。
React

備忘録: React useStateのバッチ処理と落とし穴

ReactのuseStateでは、複数ステートを同時に更新しても、Reactがバッチにまとめてくれる。しかし条件によってはバッチ処理が行われず、余分なレンダリングや不整合が発生することがある。この問題の発生するケースとその回避策についてまとめて見た。
Security

HTTPSにおける認証局の役割を理解する

HTTPS通信における認証局の役割について説明しています。HTTPS通信における暗号化を実現する鍵の役割と、鍵を安全にやり取りする仕組み、その仕組みを支える認証局とサーバー証明書について解説しています。