はじめに
チームでVibe Codingのブレストを始める際、最初の課題は「何ができるのか、どんな領域があるのか」を全員で共有することです。
プログラミングの世界は多岐にわたります。フロントエンド、バックエンド、機械学習、DevOps、ゲーム開発、組み込みシステム...。各領域は異なるスキルセットと興奮をもたらします。
本記事では、現代のプログラミング領域を体系的に分類し、70以上のプロジェクトタイプを整理しました。各タイプの簡潔な説明と、代表的なオープンソースプロジェクトへのリンクを掲載しています。
ブレストセッションの際、「こんな領域もあるのか」という発見を促し、メンバーの「推しプロジェクト」を引き出す助けになるでしょう。このリファレンスを軸に、チームで次のプロジェクト選定を進めてください。
コーディングプロジェクトタイプ分類
ウェブ開発
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| フロントエンド | ユーザーが見るUI/UXを構築する領域 | React | https://github.com/facebook/react |
| バックエンド/サーバーサイド | APIやビジネスロジック、データベースを担当 | Express.js | https://github.com/expressjs/express |
| フルスタック | フロントエンド + バックエンドの両方を開発 | Next.js | https://github.com/vercel/next.js |
| 静的サイトジェネレータ | マークダウンからHTMLを生成 | Hugo | https://github.com/gohugoio/hugo |
| JAMstack | JavaScript、API、マークアップで構成 | Gatsby | https://github.com/gatsbyjs/gatsby |
| プログレッシブウェブアプリ(PWA) | オフライン対応のウェブアプリ | Workbox | https://github.com/GoogleChrome/workbox |
| シングルページアプリケーション(SPA) | ページ遷移なしで動的に更新 | Vue.js | https://github.com/vuejs/vue |
データ・分析
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| データサイエンス | データ分析、モデリング、予測 | pandas | https://github.com/pandas-dev/pandas |
| ビッグデータエンジニアリング | 大規模分散データ処理 | Apache Spark | https://github.com/apache/spark |
| データ可視化・ダッシュボード | データを視覚的に表現 | Plotly | https://github.com/plotly/plotly.js |
| ビジネスインテリジェンス(BI) | 経営判断のためのデータ分析 | Metabase | https://github.com/metabase/metabase |
| ETLパイプライン | データ抽出・変換・ロード処理 | Apache Airflow | https://github.com/apache/airflow |
| リアルタイム分析 | ストリーミングデータの即時分析 | Apache Kafka | https://github.com/apache/kafka |
モバイル開発
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| ネイティブiOS | Swift/Objective-Cを使用したiOSアプリ | Swift | https://github.com/apple/swift |
| ネイティブAndroid | Kotlinを使用したAndroidアプリ | Kotlin | https://github.com/jetbrains/kotlin |
| クロスプラットフォーム | 1つのコードで複数OSに対応 | Flutter | https://github.com/flutter/flutter |
| モバイルウェブアプリ | ブラウザで動作するモバイルアプリ | React Native | https://github.com/facebook/react-native |
| ハイブリッドアプリ | ネイティブとウェブの組み合わせ | Ionic | https://github.com/ionic-team/ionic-framework |
機械学習・AI
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| 機械学習エンジニアリング | モデル学習・デプロイメント | scikit-learn | https://github.com/scikit-learn/scikit-learn |
| ディープラーニング | ニューラルネットワークを用いた学習 | TensorFlow | https://github.com/tensorflow/tensorflow |
| 自然言語処理(NLP) | テキスト処理と言語理解 | Hugging Face Transformers | https://github.com/huggingface/transformers |
| コンピュータビジョン | 画像認識と処理 | OpenCV | https://github.com/opencv/opencv |
| 強化学習 | 報酬に基づくエージェント学習 | OpenAI Gym | https://github.com/openai/gym |
| AIモデル微調整 | 既存モデルのカスタマイズ | Fine-tuning frameworks | PyTorchなど |
インフラ・DevOps
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| クラウドインフラ | AWS/Azure/GCPの構築・管理 | Terraform | https://github.com/hashicorp/terraform |
| CI/CDパイプライン | 自動テスト・デプロイメント | Jenkins | https://github.com/jenkinsci/jenkins |
| コンテナ化 | Docker・Kubernetes環境構築 | Docker | https://github.com/moby/moby |
| インフラストラクチャコード | コードでインフラを定義 | Ansible | https://github.com/ansible/ansible |
| 監視・ログ | システムの健全性監視 | Prometheus | https://github.com/prometheus/prometheus |
| ネットワーク・セキュリティ | ネットワーク構築と保護 | Nginx | https://github.com/nginx/nginx |
デスクトップ・システム
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| デスクトップアプリケーション | ウェブ技術でデスクトップアプリ構築 | Electron | https://github.com/electron/electron |
| コマンドラインツール(CLI) | ターミナルで動作する便利ツール | Click | https://github.com/pallets/click |
| システムユーティリティ | OS機能を活用した補助ツール | systemd | https://github.com/systemd/systemd |
| ネイティブアプリケーション | C#/.NETやJavaでのネイティブ開発 | .NET | https://github.com/dotnet/runtime |
| クロスプラットフォームデスクトップ | 複数OSで動作するデスクトップアプリ | Qt | https://github.com/qt/qt5 |
ゲーム開発
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| 2Dゲーム | 2次元画像を使用したゲーム | Godot | https://github.com/godotengine/godot |
| 3Dゲーム | 3次元グラフィックスを使用したゲーム | Unreal Engine | https://github.com/EpicGames/UnrealEngine |
| ゲームエンジン | ゲーム開発用フレームワーク | Unity | https://unity.com/ |
| マルチプレイヤーゲーム | ネットワーク対応のマルチプレイ | Nakama | https://github.com/heroiclabs/nakama |
| VR/ARゲーム | 仮想現実・拡張現実のゲーム | Babylon.js | https://github.com/BabylonJS/Babylon.js |
組み込み・IoT
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| マイコン開発 | Arduino・Raspberry Piプログラミング | Arduino | https://github.com/arduino/Arduino |
| IoTデバイス | インターネット接続デバイス開発 | MicroPython | https://github.com/micropython/micropython |
| ファームウェア開発 | デバイス内部ソフトウェア | FreeRTOS | https://github.com/FreeRTOS/FreeRTOS |
| ハードウェア連携 | ハードウェアとソフトの統合 | CircuitPython | https://github.com/adafruit/circuitpython |
| ロボティクス | ロボット制御プログラミング | ROS | https://github.com/ros/ros |
特殊領域
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| ブロックチェーン | 暗号資産・分散台帳開発 | Ethereum | https://github.com/ethereum/go-ethereum |
| サイバーセキュリティ | セキュリティ診断と攻撃対策 | Metasploit | https://github.com/rapid7/metasploit-framework |
| データベース設計・管理 | DBの設計と運用 | PostgreSQL | https://github.com/postgres/postgres |
| API開発・統合 | REST/GraphQL APIの構築 | Express.js | https://github.com/expressjs/express |
| ライブラリ・フレームワーク開発 | 他プロジェクト向けコンポーネント | lodash | https://github.com/lodash/lodash |
| 自動化・スクリプティング | 繰り返し作業の自動化 | AutoHotkey | https://github.com/AutoHotkey/AutoHotkey |
| ウェブスクレイピング | Webサイトからデータ抽出 | Scrapy | https://github.com/scrapy/scrapy |
| テストフレームワーク | ソフトウェアテストツール | Jest | https://github.com/facebook/jest |
| ドキュメント生成 | コードからドキュメント自動生成 | Sphinx | https://github.com/sphinx-doc/sphinx |
エンタープライズソフトウェア
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| CRMシステム | 顧客関係管理システム | Odoo | https://github.com/odoo/odoo |
| ERPシステム | 企業資源計画システム | Odoo | https://github.com/odoo/odoo |
| プロジェクト管理ツール | タスク・プロジェクト管理 | OpenProject | https://github.com/opf/openproject |
| 会計ソフト | 簿記・決算管理 | GnuCash | https://github.com/Gnucash/gnucash |
| HR管理システム | 人事・給与管理 | Frappe HR | https://github.com/frappe/frappe |
リアルタイムシステム
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| チャットアプリケーション | リアルタイムメッセージング | Rocket.Chat | https://github.com/RocketChat/Rocket.Chat |
| ストリーミングサービス | 動画・音声ストリーミング | Jellyfin | https://github.com/jellyfin/jellyfin |
| マルチプレイヤーゲーム | リアルタイム通信ゲーム | Nakama | https://github.com/heroiclabs/nakama |
| リアルタイムコラボレーション | 複数ユーザーの同時編集 | Yjs | https://github.com/yjs/yjs |
| WebSocket通信 | 双方向通信を使用したアプリ | Socket.io | https://github.com/socketio/socket.io |
コンテンツ・メディア
| プロジェクトタイプ | 説明 | 代表的なOSS | URLまたは技術例 |
|---|---|---|---|
| CMS | コンテンツ管理システム | WordPress | https://github.com/WordPress/WordPress |
| ビデオストリーミング | 動画配信プラットフォーム | PeerTube | https://github.com/Chocobozzz/PeerTube |
| 画像処理 | 写真・画像の編集・加工 | ImageMagick | https://github.com/ImageMagick/ImageMagick |
| 音声処理 | 音声の編集・分析 | Audacity | https://github.com/audacity/audacity |
| ポッドキャストプラットフォーム | ポッドキャスト配信 | Podspace | Podcastホスティング |
備考: ほとんどの実運用システムは複数のタイプを組み合わせています。例えば、音楽ストリーミングアプリはフルスタック + モバイル + リアルタイムシステム + 音声処理など多くの領域を統合しています。