モヒカンメモ

髪色が定期的に変わることに定評のある(比較的)若者Webエンジニアの備忘録

初めてのYAPC ( YAPC::Hiroshima 2024 )

2024/2/11 (日) に広島で開催されたYAPC::Hiroshima 2024に参加してきた。 yapcjapan.org YAPCに参加するのは今回が初めて。今はPerlは書いていないがYAPCの名前は良く聞いていたのでいつか行ってみたいと思っていて、友人が行く機運を見せていたので便乗し…

DockerHub MySQLイメージのベースOSがOracleLinuxへ変わった件

タイミング的には2017年ぐらいのイベントだけど、歴史のあるプロジェクトを保守する時たまに踏むので備忘録がてらまとめておく。 DockerHub MySQLイメージのベースOSはOracleLinuxへ変わった github.com これまでのベースOSは debian だったが、2017年ぐらい…

DockerHubにある "mysql:*-debian" イメージで "apt update" が失敗する問題

DockerHubにある mysql:*-debian 系イメージで、 apt update が失敗する問題が起きている。 apt updateしようとすると起きるエラー $ docker run --rm -it --platform linux/amd64 mysql:8-debian bash root@6f04ccbce772:/# apt update ... Err:2 http://re…

Redashのログが無限に貯まり続けたせいでdisk fullで死んだ

セルフホストしているRedashのログが貯まり続けたせいでdisk fullで死んだ。 OSS版Redash をEC2でセルフホストしてそのまま運用していると踏むトラップだと思うので各位気をつけられたし。 ざっくり要点まとめ Redashは結構ログを吐く Docker Daemonはデフォ…

ECS上のPHPアプリからAWS SDKを使うとmetadata endpointへアクセスできない問題の備忘録

ECS (Fargate) 上で動くPHPアプリからAWS SDKを使ったとき、metadata endpointへアクセスできない問題を踏んだのでそのことを残しておく。 ざっくり要点まとめ AWS SDKなどがしれっと見に行く metadata endpoint にはEC2用とECS用で分かれており、 AWS_CONTA…

パフォーマンスチューニングコンテストISUCON13に参加しました

毎年参加しているLINEヤフー社 主催のパフォーマンスチューニングコンテスト「ISUCON」に今年も参戦しました。 isucon.net 去年のブログ blog.pinkumohikan.com チーム ここ4年ほど同じメンバーでISUCONに参戦していますが、チーム名は毎年変更しています。…

PHPカンファレンス2023で登壇しました

2023/10/8 (日) に 大田区産業プラザPiO で開催された PHPカンファレンス 2023 にて、「安全にPHPでWebアプリ開発するために実践していること」というテーマでお話してきました。 トーク PHPは言語仕様が年々堅牢になりつつありますが、より安全に仕様変更や…

PRテンプレートの「レビュイーだけに伝えたいこと」をHTMLコメントで書いてレビュー負荷を下げるテクニック

PRテンプレートを用意する際に「レビュイー (PR作成者) だけに伝えたいこと」をHTMLコメントとして書くと余計な情報をレビュアーに見せずに済むテクニックがあるので紹介する。

テテミート #4で「フリーランスWebエンジニア よもやま話」をテーマにLTしてきた

テテマーチ社主催のLTイベント「テテミート #4」で、「フリーランスWebエンジニア よもやま話」というテーマで話してきた。 スライド speakerdeck.com ざっくりアウトライン フリーランスってそもそも何なんだっけ?正社員と何が違うの? フリーランスって自…

DBマイグレーションツールのロールバック機能は使うな

データベースマイグレーションツールのロールバック機能は安全に使えないので使うべきではない、という話。

【GitHub】 マージ済みのremote branchを一括削除するコマンド

GitHub上のマージ済みremote branchをコマンドで一括削除したくなったときの備忘録

テテミート #2 で「MySQLクイズ」をテーマにLTしてきた

テテマーチ社主催のLTイベント「テテミート #2」で、みんな大好きMySQLについてのクイズLTをしてきた

Docker ComposeでDBコンテナの起動を待ってからAPIコンテナを起動させる

Docker ComposeでDBが完全に起動し終わる前にAPIがリクエストを処理すると500になっちゃう問題に対する対処方法

2023年やりたいことリスト

ようこそ2023年

【 PHP 】 preg_match関数に渡せる正規表現の長さには上限がある

超長い正規表現をPHPのpreg_match関数に食わせたところエラーになった。公式ドキュメントにはこの振る舞いは記載されていないので調べたことを残しておく。

ISUCON12 予選に参加して無残な敗退を喫した💀

恒例行事となっているISUCON予選に今年も参加し、無残な敗退を喫してきた💀

指定したサイズ以上のファイルを見つける

どこにあるか分からないけどデカいファイルがあって悪さしていそうなので探したいときなどに、findコマンドのsizeオプションが便利

使われていない機能を積極的に消すべき理由

使われていない機能は積極的に消すべき慈悲はない

さくらのレンタルサーバ上で Node.js (npm) を使えるようにする

諸般の事情でさくらのレンタルサーバ上で Node.js (npm) を使いたくなったので、使えるようにする手順を残しておく。

2022年 やりたいことリスト

@pinkumohikanの2022年にやりたいことリスト

PHPUnit実行時にメモリ使用量制限に引っかかる場合の対処方法

PHPUnit実行時にメモリ使用量上限を超えてエラーになる場合の対処方法について。

古めのLaravelアプリがComposer 2で動かない問題

少し古めのLaravelアプリケーションを保守していてComposer 2でcomposer install出来ない問題にぶち当たったので、これから躓くひとのために記録を残しておく。

ISUCON11予選 31位で惜しくも本戦出場ならず〜〜〜

今年もISUCON 予選に参加し、527チーム中31位で惜しくも本戦出場なりませんでした、ざんねん〜〜〜〜〜〜〜。

AmazonLinux2にMySQLクライアントのみをインストールする

AmazonLinux2にMySQLクライアントのみをインストールしたくなって方法を調べたのでまとめておく。

IPA 情報処理安全確保支援士試験に合格しました

IPA主催のサイバーセキュリティ知識の認定試験「情報処理安全確保支援士試験」(旧 セキュリティスペシャリスト試験)に合格しました 🎉

ウェブセキュリティ実務知識試験 (徳丸実務試験) に合格しました

Webセキュリティ界隈で有名な徳丸さん監修の「ウェブセキュリティ実務知識試験 (通称: 徳丸実務試験)」に合格しました🎉

ブラウザ上から使えるDB Playgroundの「DB Fiddle」が便利

登録不要・インストールなし、ブラウザ上から手軽に使えるDB Playgroundサービスの「DB Fiddle」が便利だったので紹介する。

DBでdateとdatetimeを扱うときのカラム名suffixの使い分け

これまでデータベースのカラム名を命名する際、日付 (date) でも日時 (datetime) でもsuffixには `at` を使っていたが、日付の場合は `at` よりも `on` のほうが適切である、と教えてもらったのでそれについてまとめた。

2021年のやっていきリスト

2021年にやっていきたいことリスト!!!!!

jqを使ってjsonの差分をスマートに確認する

jsonを比較する際にkeyとvalueの組が同じでもkeyの並びが微妙に違っていたりして余計な差分が出てキレそうなとき、jqを使ってkeyでソートしてからdiffを取ったりすると便利だよっていう小ネタを紹介する。 jq jqはjsonをいい感じに整形したり、色付け表示し…