はじめに
今日、CodeSensei という AI 学習サービスをローンチしました。
でもこれは、元「プログラミング完全未経験・普通の事務員」だった僕が、AIと一緒に2ヶ月走り続けた末に行き着いた場所の話です。
同じように、
- 「プログラミングに興味はあるけど、自分にできるか不安」
- 「AIで動くものは作れるけど、中身がモヤっとしている」
- 「本を読んでも身についた気がしない」
そんな方に読んでほしくて書いています。
2ヶ月前までは、ただの事務員でした
会社で事務をしていました。Excelで資料を作って、書類をまとめて、電話を取って、荷物を整理する。ごく普通の事務員です。
コードなんて1行も書いたことがありませんでした。
<div> が何かも知らなかった。
なぜ始めたか — AIブームに乗っただけ
正直に言います。
AIブームに乗ってみたかった、それだけです。
ChatGPTやClaudeの話がニュースで流れ、SNSで「AIでアプリ作ってみた」という投稿が流れてくる。「自分にもできるのかな?」と思いました。
動機はそれくらい軽いもので、明確な目標もなく、「とりあえず触ってみよう」で始めました。
最初の1ヶ月 — うまく作れなかった
始めてみたものの、案の定、全く上手くいきませんでした。
- YouTubeで「プログラミング 初心者」と検索して動画を観る
- ネットで「React チュートリアル」を読む
- わからない単語を1個ずつググる
- 動かない → なぜ動かないかもわからない
- 心が折れる
これの繰り返しです。
「環境構築」で2日潰れ、
「npm install ってなに?」で半日潰れ、
「エラーメッセージが読めない」で何度も諦めかけました。
AIに聞いても、結局わからない
AI(Claude や ChatGPT)に聞けば答えは返ってきます。でも、返ってきたコードが「なぜ動くのか」がわからない。
コピペすれば動く。でも、それは自分のものじゃない。明日エラーが出たら、自分では直せない。
転機 — 自分の業務をアプリ化してみる
1ヶ月くらい悪戦苦闘したある日、転機が来ました。
「自分の業務で使うアプリを作ってみよう」 と思い立ったんです。
僕の職場には、紙で管理されているもの、Excelでぐちゃぐちゃになっているものが山ほどありました。
- 車検の期限管理
- 運行指示書の作成
- 労務・勤怠の集計
- 特車申請の管理
- 車両ごとの収益計算
どれも「デジタル化されているようでされていない」状態。
「これをアプリにできたら、自分も楽になるし、会社にも貢献できる」
明確な目的ができた瞬間、手が動き出しました。
2ヶ月で業務アプリを5本作った
結論から言うと、この2ヶ月間で、業務改善アプリを5本作って本番運用しています。
- 車検管理アプリ — 車両の車検期限を自動アラート
- 運行指示書アプリ — ドライバーへの日次指示をデジタル化
- 労務アプリ — 勤怠・有給管理
- 特車申請アプリ — 煩雑な申請業務を効率化
- 車両別収益アプリ — 1台ごとの利益計算
全部、AI(主に Claude Code)と対話しながら作りました。
会社の業務が、紙と Excel から Web アプリに置き換わっていく。
現場の人から「前より楽になった」と言われる。
「自分でも作れるんだ」という実感が、初めて持てた瞬間でした。
でも、大きな壁があった
動くものは作れる。
会社の業務も回る。
でも、心の中にずっと引っかかっていたことがあります。
「自分はこのコードを、理解して書いているわけじゃない」
AIに「こういうアプリを作って」と伝える。
AIがコードを生成する。
コピペして動かす。エラーが出たらまたAIに聞く。
できあがるものは動く。けれど、
- なぜ
useStateを使うのか - なぜこの関数は別ファイルに切り出すべきなのか
- なぜこの書き方が「良い」コードなのか
そういう**「なぜ」の部分が、完全にブラックボックス**のままでした。
本を買ってみた — でも、挫折した
「ちゃんと勉強しないと」と思って、技術書を買いました。
- 『リーダブルコード』
- 『Clean Code』
- 『リファクタリング』
エンジニアなら誰もが知る名著と言われる本たちです。
開いてみて、打ちのめされました。
例が、自分のコードと遠すぎる
例えば Clean Code には、Java で書かれた10年以上前のコード例が並んでいます。
自分が昨日書いた React コンポーネントとは、見た目も構造も違いすぎて、「この章を、自分のコードにどう当てはめればいいのか」が全くわからない。
何度読んでも、知識が頭を通り抜けていく感覚。
結局、数章で挫折しました。
まず「Claude の Skills」から始まった
最初から「SaaS を作ろう」と思ったわけじゃありません。
きっかけは、Claude Code の Skills(カスタムスキル)を、自分のために作ってみようと思ったことでした。
「リーダブルコードを Claude に身につけさせて、自分のコードレビューをしてもらおう」
「Clean Code の章をスキル化して、一問一答形式で学べるようにしよう」
最初は、完全に自分の学習のための個人ツールでした。
95冊の技術書の概念をスキルに詰め込んだ
スキルを作るうちに、CS/SE の古典と呼ばれる本を調べて、1冊ずつ概念を整理していきました。
- Clean Code、リファクタリング
- SICP、DDIA
- リーダブルコード、SQL Antipatterns
- ……
気づけば 95 冊分。全15ドメイン。
自分の学習のために始めたキュレーションが、かなりの規模になっていました。
「これ、自分だけのものにするのはもったいなくないか?」
ある日、ふと思いました。
自分と同じような立場の人、もっとたくさんいるんじゃないか?
- AIでコードは書けるようになったけど、中身がモヤっとしている人
- 本を買ったけど、自分のコードと繋がらずに挫折した人
- 一人で独学していて、孤独を感じている人
そういう人たちに、このスキルの中身を届けられないだろうか。
本の例じゃなくて、自分が今日書いたコードを題材に、その本の章を教えてくれるAIがあったら、きっと同じ悩みを持つ人に響くはず。
この発想が、CodeSensei の出発点でした。
6日間で作った
思い立ってから、着手して、ローンチまで 6日間。
使ったもの:
- Claude Code — 設計相談・コード生成
- Next.js 16 — フレームワーク
- Supabase — 認証 + データベース
- Vercel — デプロイ先(無料)
- Claude API (Sonnet 4.6 / Opus 4.6) — AI機能の中身
コードの大半は AI が書いてくれて、僕は「こういう仕様にしたい」「ここで詰まった」と対話を続ける役割でした。
それでも、設計の判断、UIの言葉選び、ターゲットユーザーの想定、どのタイミングで何を見せるか——そういった「意思決定」は、全部自分でやりました。
AIは優秀な共同開発者でしたが、「何を作るか」を決めるのは、人間でなければいけない。
CodeSensei でできること
CodeSensei は、こんなサービスです。
- 自分のコード(または GitHub リポジトリ)を貼り付ける
- 15 コース・188 レッスンの中から学びたいテーマを選ぶ
- AI(Claude)が、95 冊の技術書の概念を使って、あなたのコードを題材に解説してくれる
「コードから学ぶ」モード
自分の React コンポーネントを貼ると、AI が:
- 『Clean Code』第3章「関数」の観点から改善提案
- 『Refactoring』のパターン名付きでリファクタ案
- 本の引用元を明記しながら、なぜ良くなるかを解説
「バグから学ぶ」モード
エラーメッセージを貼ると、AI が:
- N+1 問題なら『SQL Antipatterns』の該当章を参照
- TypeError なら防御的プログラミングの書籍を参照
- 「なぜこのバグが起きるのか」を本の概念で説明
2ヶ月前に本を開いて挫折した自分が、今一番欲しかったもの。それを形にしました。
なぜ公開したのか
プログラミングに興味を持って、一歩踏み出した駆け出しの人たちが、同じ壁にぶつかっていると思ったからです。
- AIでコードは書けるようになった
- でも「なぜこう書くのか」がわからない
- 本を買ったけど、自分のコードと繋がらない
この閉塞感、自分が一番よく知っています。
CodeSensei は、その時の自分のために作ったサービスです。
同じ立場の人に届いてほしい。一緒に、「動く」から「わかる」へ進みたい。
2ヶ月前の自分に伝えたいこと
最後に、独学を始めようとしている自分に声をかけるとしたら——
- 完璧に理解してから書こうとしない。動かしながら壊しながら学ぶのが、結局は最速です。
- **AIは「先生」じゃなくて「一緒に考える仲間」**として使う。答えを教えてもらうのではなく、一緒に悩むほうが自分の力になります。
- 本は買うだけじゃなく、自分のコードと並べて読む。例だけ追っても、知識は身につかない。
- 作りかけでもいいから人に見せる。今日この記事を書いていることが、まさにその実践です。
そして、もし「なぜこのコードはこう書くの?」がモヤモヤしているなら、ぜひ CodeSensei を触ってみてください。
今なら全機能が無料で使えます(早期アクセス期間中)。
おわりに — 僕も、まだ学びの途中です
ひとつだけ、ちゃんと書いておきたいことがあります。
僕は先生でも熟練エンジニアでもありません。今も学びの途中です。
CodeSensei は「教える側」が作ったサービスではなく、「自分が学ぶために作ったツール」を、同じ立場の人に共有しているだけのものです。
使っていて「ここ違うよ」「こうしたほうがいい」というフィードバックは、全部ありがたく受け取ります。
一緒に学びながら、一緒にプロダクトを良くしていければ、それが一番嬉しい形だと思っています。
ゼロから始めた側の人間だからこそ、同じ壁にぶつかっている人に、「こういう道もあるよ」と伝えられることがあると思っています。
この記事が、これから独学を始める人、今まさに壁にぶつかっている人に、少しでも届けばうれしいです。
質問・感想、コメントで歓迎です。同じ立場の方と繋がりたいです。
- CodeSensei: https://codesensei-iota.vercel.app
- Twitter: @shun1122842
この記事がよかったら、いいね / ストック / シェアしていただけると、次の記事を書く励みになります🙏