FPGAforge製作記⑤:Python編
FPGAforge Build Log #5: Why We Switched to Python
■ English Summary
In this part of the FPGAforge build series, we explain why we decided to switch from PHP to Python for the backend.
With future expansion in mind, Python offers better flexibility, strong AI integration, and a rich ecosystem of libraries.
Using Flask, we started building a lightweight backend and tested it in a local environment.
今回はPython編です。
ここまでは、フォーム部分をPHPで作成してきました。
ただ、この先を考えると、機能はかなり増えていく予定です。
まだすべて実装しているわけではありませんが、
AI連携や仕様整理、データ処理などを含めて、バックエンド側の役割はどんどん大きくなっていきます。
そのため、「どこで処理をやるか」を考えたときに、
このタイミングでPythonへ移行することにしました。

■ Pythonを選んだ理由
理由はいくつかあります。
まず一つは、AIとの相性です。
現在の生成AIや各種APIは、Pythonとの連携が非常にやりやすくなっています。
もう一つは、自分が使い慣れていること。
これはシンプルですが、開発スピードに直結します。
さらに、Web用途としての拡張性も大きなポイントでした。
Pythonはライブラリが非常に豊富で、機能追加がしやすい環境が整っています。
■ フレームワークはFlaskを選択
Webフレームワークとしては、Flaskを使うことにしました。
理由はシンプルで、
- 軽量で扱いやすい
- 必要な機能だけを組み合わせられる
- 小さく始めて大きくできる
という点が、今回の用途に合っていたためです。
■ まずはローカルで動作確認
現時点では、まだサーバーには上げていません。
まずはローカル環境で動作させています。
PHPで作ったときとは少し感覚が違う部分もありますが、
基本的な構成はすぐに理解できました。
■ 生成AIとの組み合わせ
今回かなり大きかったのは、生成AIの存在です。
フォームの構成やバックエンドの処理なども含めて、
かなりの部分を生成AIにサポートしてもらいました。
その結果、
- フォームUI
- データ受け取り処理
- 基本的な構成
といった部分は、短時間で形にすることができました。
見た目も含めて、思っていた以上に整ったものができています。
■ ここからが本番
ただし、ここまではあくまで土台です。
これから、
- 入力データの整理
- AIによる仕様生成
- メール連携
- 詳細仕様への展開
といった機能を組み込んでいく予定です。
FPGAforgeとしての価値は、ここから作られていきます。
関連ブログ
FPGAforgeはこうして生まれた ― 生成AIによる危機感から始まった話
JLCPCBとの出会いで見えたもの ― FPGAforgeの原案が生まれた瞬間
仕様が決まらないとFPGAは作れない ― FPGAforgeが解こうとしている最大の問題
FPGAForge 製作記①:まずはローカル環境でフォーム作成から
FPGAForgeは近日中に公開予定です。FPGAインフォメーションのホームページからどうぞ。
