エンジニアリング
毎年参加しているLINEヤフー社 主催のパフォーマンスチューニングコンテスト「ISUCON」に今年も参戦しました。 isucon.net 去年のブログ blog.pinkumohikan.com チーム ここ4年ほど同じメンバーでISUCONに参戦していますが、チーム名は毎年変更しています。…
2023/10/8 (日) に 大田区産業プラザPiO で開催された PHPカンファレンス 2023 にて、「安全にPHPでWebアプリ開発するために実践していること」というテーマでお話してきました。 トーク PHPは言語仕様が年々堅牢になりつつありますが、より安全に仕様変更や…
PRテンプレートを用意する際に「レビュイー (PR作成者) だけに伝えたいこと」をHTMLコメントとして書くと余計な情報をレビュアーに見せずに済むテクニックがあるので紹介する。
データベースマイグレーションツールのロールバック機能は安全に使えないので使うべきではない、という話。
GitHub上のマージ済みremote branchをコマンドで一括削除したくなったときの備忘録
Docker ComposeでDBが完全に起動し終わる前にAPIがリクエストを処理すると500になっちゃう問題に対する対処方法
超長い正規表現をPHPのpreg_match関数に食わせたところエラーになった。公式ドキュメントにはこの振る舞いは記載されていないので調べたことを残しておく。
恒例行事となっているISUCON予選に今年も参加し、無残な敗退を喫してきた💀
どこにあるか分からないけどデカいファイルがあって悪さしていそうなので探したいときなどに、findコマンドのsizeオプションが便利
使われていない機能は積極的に消すべき慈悲はない
諸般の事情でさくらのレンタルサーバ上で Node.js (npm) を使いたくなったので、使えるようにする手順を残しておく。
PHPUnit実行時にメモリ使用量上限を超えてエラーになる場合の対処方法について。
少し古めのLaravelアプリケーションを保守していてComposer 2でcomposer install出来ない問題にぶち当たったので、これから躓くひとのために記録を残しておく。
今年もISUCON 予選に参加し、527チーム中31位で惜しくも本戦出場なりませんでした、ざんねん〜〜〜〜〜〜〜。
AmazonLinux2にMySQLクライアントのみをインストールしたくなって方法を調べたのでまとめておく。
IPA主催のサイバーセキュリティ知識の認定試験「情報処理安全確保支援士試験」(旧 セキュリティスペシャリスト試験)に合格しました 🎉
Webセキュリティ界隈で有名な徳丸さん監修の「ウェブセキュリティ実務知識試験 (通称: 徳丸実務試験)」に合格しました🎉
これまでデータベースのカラム名を命名する際、日付 (date) でも日時 (datetime) でもsuffixには `at` を使っていたが、日付の場合は `at` よりも `on` のほうが適切である、と教えてもらったのでそれについてまとめた。
jsonを比較する際にkeyとvalueの組が同じでもkeyの並びが微妙に違っていたりして余計な差分が出てキレそうなとき、jqを使ってkeyでソートしてからdiffを取ったりすると便利だよっていう小ネタを紹介する。 jq jqはjsonをいい感じに整形したり、色付け表示し…
nginxでリクエストを受けてphp-fpmにpassするというPHPアプリケーションではスタンダードな構成において、リクエストが中断されたときphp-fpmの処理って中断されるんだっけ?されないんだっけ?というのが気になったので調べた。
10/3 (土) に開催されたパフォーマンスチューニングコンテスト「ISUCON10」のオンライン本戦にて、チーム「牡蠣の鋭利な殻が指に突き刺さり利き手を負傷」として33チーム中20位でフィニッシュし「またあいま賞」を頂きました 🎉
9/12 (土) に開催されたパフォーマンスチューニングコンテスト「ISUCON10」のオンライン予選にて、チーム「牡蠣の鋭利な殻が指に突き刺さり利き手を負傷」として予選18位で予選突破しました ISUCON10 FINALIST認定証 isucon.net 初めての予選突破本戦頑張り…
デフォルトリポジトリを使ってPHPをインストールするとCentOS 7系では5.4が、CentOS8系ではPHP 7.2が入る。それよりも新しめなバージョンのPHPを使いたいときの王道的な方法として、remiリポジトリを使う方法を紹介する。 PHP 7.4 前提 2020/09/20 (日) 時点…
Redash SaaSからRDSへつなげるように出来るんだっけ、とか、どんなリスクがあるんだっけ、みたいなことを調べたのでまとめておく
mysqlコマンドの実行結果から枠線とカラム名を取り除いて表示する方法を調べたので備忘録がてらまとめておく
Webエンジニア御用達のソースコード管理ツール "GitHub" でのアクティビティを可視化してくれる GitHub Readme Stats というおもしろツールが、結構映えるグラフを作ってくれていい感じだったのでご紹介します。
Linuxユーザを追加するときに使うuseraddコマンド。Amazon Linux2のdockerイメージではデフォルトでは入っていなかったのでインストール方法を調べたたときの備忘録。Amazon Linux2に限らず、Linuxのminimal環境にuseraddコマンドを入れるのに使える方法だと…
Linux環境で特定のポートを使いたいけど先に使われていてどのプログラムがそのポートを使っているか知りたいとき、lsofコマンドが便利。 lsofコマンド 「lsof」はオープンしているファイルを一覧表示するコマンドです。 www.atmarkit.co.jp lsofコマンドに-i…
Nginxをリバースプロキシとして使っている環境でファイルアップロードなどを行おうとしたとき "413 Request Entity Too Large" というエラーレスポンスが返ることが有る。 nginx.org 413 Request Entity Too Large 原因 Nginxへ送信されたコンテンツのサイズ…
ファイルをFileReader.readAsDataURLを使って文字列化したものは純粋なbase64文字列だと思っていたけど、decodeしようとしたら出来なくてなんでやねん!と思ったので残しておく。 まとめ 画像とかの添付ファイルをJavaScriptで扱うときにFileReaderを使う Fi…