記事一覧
アキゾラソフトで公開している記事の一覧です。シリーズで通読、カテゴリ・タグで興味の方向から探索、いずれの読み方もできます。
シリーズで読む
テーマで束ねた連載記事。1つの分野を体系的に学べます。
初めて読む方へ
サイトの代表記事をピックアップしました。

【27卒エンジニア就活】生殺与奪の権を他人に握らせない就活体験談
27卒WEB系エンジニアが逆求人だけで大手SaaS内定。財務分析・チェックシートで企業を比較した就活体験談。夏インターンから内定承諾まで全プロセスを公開。
技術のコスト
銀の弾丸を求めて迷走した私の失敗談。個人開発でオーバーエンジニアリングして気づいた「技術のコスト」の話
本や記事で学んだ「理想の設計」を試すと思ったようにいかないことが多いです。実務で失敗すると多大なコストを支払うことになりますが、個人開発であれば安心して試せます。安心して試すことで技術の限界を学ぶことができ、結果的に実務で活かせる経験となります。
OSS開発の学び
OSSを公開したら使いにくかった話|ドッグフーディングで改善する
OSSライブラリ「SoundMaker」の開発を通じて、自分で使い倒す「ドッグフーディング」の重要性を痛感しました。利用者視点を理解しているつもりでも、実際に使ってみないと気づけない問題があるという体験談です。
AI活用
AIで個人開発の価値は死んだのか?
Claude Codeを活用して家計管理PWAを約1週間で開発した体験をもとに、AIで爆速開発できる時代における個人開発の価値や、エンジニアとして力を入れるべきポイントについて考えます。
すべての記事

SoundMakerでチップチューン音声パイプラインの作り方
自作OSSライブラリSoundMakerを使って、楽譜データからWAVバイナリを生成する音声合成パイプラインを解説します。サンプリングレートとテンポからサンプル位置を算出する基礎、バッファリング生成でBlazor WebAssemblyを固めない工夫、プレビュー音のキャッシュ戦略を紹介します。

Nuxt Content v2 で4ツール分のマニュアルサイトをスケールさせた設計
Nuxt Content v2 で構築したマニュアルサイトを、1ツール専用から4ツール対応にスケールさせたときの composable 抽象化と動的ルート構成の記録です。

大学で習った動的計画法で差分比較ツールを実装する|LCS + DP の行・文字二段差分
大学のアルゴリズム講義で習った動的計画法(DP)を実用ツールに落とし込みたくて、ブラウザ完結の差分比較ツールを LCS + DP で実装した記録です。どのように動作しているか設計をまとめます。

C#オブジェクトがIndexedDBに着くまで|Blazor WASM永続化のデータ形式の旅
Blazor WebAssembly で C# のオブジェクトを IndexedDB に保存する際、データは MessagePack バイナリや Uint8Array と形を変えながら各レイヤーを通過します。PICOMでの実装を例に、境界ごとの責務分担と keyPath なしストア設計を解説します。

軽量なツールの設計は「何をしないか」から始まる — Yomogi の具体例で考える
個人開発の軽量ツールでは、何を「できなくするか」を決めることが設計の本質になります。ドット絵エディタ Yomogi で実際に設けた制約と、その判断基準を具体的にまとめます。

Blazor WebAssemblyでマルチスレッドを有効化してUIフリーズを解消する
Blazor WebAssemblyでWasmEnableThreadsを有効化し、音楽生成をバックグラウンドスレッドにオフロードしてUIフリーズを解消した実例です。COOP/COEPの必要性、Channel<T>によるストリーミング再生、PeriodicTimerへの移行で踏んだ不具合も紹介します。

StackベースのUndo/RedoをC#で実装する|CompositeCommandで複数操作も一括取り消し
楽譜エディタのUndo/RedoをCommandパターンで実装した実例を紹介します。2本のStackで履歴を管理し、CompositeCommandで複数操作を1手としてまとめ、TrimHistoryで履歴上限を設ける方法を解説します。

【解説】Canvas で縦書き日本語組版を実装する!詠み人の描画方法
和歌・短歌・俳句を画像化するツール「詠み人」で、CSS writing-mode を使わず Canvas で縦書きを実装した理由と、句読点や括弧などの特殊文字の扱いをまとめます。

MessagePackで独自バイナリファイル形式(PIM)をバージョン管理対応で設計する
音楽作成アプリPICOMで独自のバイナリファイル形式「PIM」をMessagePackで実装しました。なぜJSONでなくMessagePackを選んだのか、`[Key]`番号の運用ルール、将来のフォーマット進化に備えるVersionフィールド戦略について解説します。

ObservableObjectとDiffDetectableObjectで「変更された?」を自動判定する
Blazor WebAssemblyで「保存ボタンを押すべきか」を自動判定する仕組みを、ObservableObjectとDiffDetectableObjectという2つのシンプルなクラスで実装しました。MVVM ToolkitのObservableObjectとの違いや、イベント駆動で状態フラグを同期させる設計のコツを解説します。

Azure Static Web Apps × Google AdSenseで所有権確認を通すまでにハマったこと
Nuxt SSGで構築したAzure Static Web AppsのサイトにGoogle AdSenseを導入しようとして、所有権確認でハマったポイントと解決策をまとめます。

OSSを公開したら使いにくかった話|ドッグフーディングで改善する
OSSライブラリ「SoundMaker」の開発を通じて、自分で使い倒す「ドッグフーディング」の重要性を痛感しました。利用者視点を理解しているつもりでも、実際に使ってみないと気づけない問題があるという体験談です。

【体験記】持株会・NISA・生活防衛資金を就活後の大学生が考えた記録
就活を終えた大学生が、持株会・NISA・生活防衛資金についてゼロから調べて考えたことの個人的な記録です。投資助言ではなく「自分はこう考えた」という体験談で、具体的な銘柄や投資商品の推奨は含みません。

【27卒エンジニア就活】生殺与奪の権を他人に握らせない就活体験談
27卒WEB系エンジニアが逆求人だけで大手SaaS内定。財務分析・チェックシートで企業を比較した就活体験談。夏インターンから内定承諾まで全プロセスを公開。

多分SaaSは死なない — エンジニアから見た「SaaSの死」への違和感
SaaS不要論が広がりましたが、ガバナンス・責任・コスト・運用の観点からSaaSが死なない理由をエンジニア視点で考察します。

AIで個人開発の価値は死んだのか?
Claude Codeを活用して家計管理PWAを約1週間で開発した体験をもとに、AIで爆速開発できる時代における個人開発の価値や、エンジニアとして力を入れるべきポイントについて考えます。

【27卒エンジニア就活】4STEPで自己分析したプロセス
就活の自己分析で「やりたいことがわからない」と悩んだ筆者が、抽象的なビジョンから具体的な企業選びまで逆算した自己分析プロセスを体験談ベースで紹介します。

銀の弾丸を求めて迷走した私の失敗談。個人開発でオーバーエンジニアリングして気づいた「技術のコスト」の話
本や記事で学んだ「理想の設計」を試すと思ったようにいかないことが多いです。実務で失敗すると多大なコストを支払うことになりますが、個人開発であれば安心して試せます。安心して試すことで技術の限界を学ぶことができ、結果的に実務で活かせる経験となります。