
AI時代に求められるゼロイチ思考とは
G’sの学校長にプロダクトを形にする力の育て方をインタビュー。
多数のメディア実績のある山崎学校長に、これからの時代に必要な力を語っていただきました。
手を動かして作ってみる重要性とは?

山崎 大助
Daisuke Yamazaki
28歳でアパレル業界から未経験からエンジニアとして転職。現在はMicrosoft MVP(Bing Maps Development)のフリーランスエンジニアとして、研究・活動が認められ米Microsoft公式サイトに日本人では初めて掲載される。 @IT、日経ソフトウエアなど数々のメディアで執筆を手掛け、日経PC21「名作フリーソフトを訪ねて」でも自身の開発したアプリが選出するなど、多方面で活躍。
Point1.「実装」はAIでも、“設計”は人間にしかできない
おお、かっしー君! 元気そうで何よりです。そうですね、まさに技術のパラダイムシフトが起きていると言えるでしょう。AIはもはや特定の専門家だけのツールではなく、誰もが使える身近な存在になりました。
確かにそういった声も聞きますね。しかし、それは本質を捉え違えていると思います。AIが万能ツールになるほど、プログラミングスキルはむしろ重要になります。AIを使いこなして「ゼロ」から「イチ」を生み出す力、つまりプロダクトを形にする力が、より一層求められる時代になっているのです。今日はそのことについて、じっくりお話ししていきましょう。

まず、「プログラミング」という言葉の定義を見直してみましょう。従来のプログラミングは、人間がコンピュータへの命令を一つひとつ記述することでした。しかし、AIの登場によって、その役割は大きく変わりました。
AIは人間の「意図」を理解し、それに沿ったコードを生成してくれます。つまり、プログラミングにおける「実装」や「コーディング」の部分を自動化できるようになったということです。ただし、それが「プログラミングのすべて」ではありません。
はい。プログラミングの核心とは、問題を論理的に分解し、解決策を設計することにあります。これはAIではまだ代替できない、人間ならではの能力です。
たとえば、「ユーザーが簡単に写真の背景を消せるアプリを作りたい」という目標があるとします。では、どんな機能が必要か?どんなUI/UXがよいか?どのようなアルゴリズムで背景を切り抜くか?それをどう組み合わせれば一つのプロダクトになるか?そういった設計が重要なのです。
まさにその通りですね。AIに指示を出すためには、どのような「設計図」を描くべきかを理解していなければなりません。プログラミングの知識がなければ、効果的な指示を出すことすら難しいのです。

Point2.論理的思考と抽象化が「設計図」を描く力になる
では次に、「設計図」を描くために必要な力、つまり「プログラミング的思考」についてお話ししましょう。
この思考の核になるのが、論理的思考と抽象化という2つの能力です。
まず論理的思考についてお話しします。これは、「もしAならばB」といった因果関係で物事を捉える力のことです。コンピュータは曖昧な指示を理解できませんから、明確な手順に落とし込む必要があります。
たとえば「ユーザーがログインする」という処理も、「IDとパスワードを入力する」「その情報をデータベースと照合する」「一致すればログイン、違えばエラー」といった複数のステップに分解できます。こうした思考が論理的思考です。
次に抽象化についてです。これは、複雑な情報の中から本質的な構造や共通点を取り出す力です。
たとえば「ログイン処理」と「会員登録処理」は、どちらも「ユーザーが情報を入力」「サーバーに送信」「処理を実行」という共通のパターンがあります。これらを「ユーザー認証」という1つの概念で捉えるのが抽象化です。
その通りです。この抽象化の力は、プロダクトを将来的に拡張可能な形に設計するうえで非常に重要です。優れたエンジニアは常に「この構造は再利用できるか?」「拡張性はあるか?」といった視点で設計しています。
一方で、AIにただコードを書かせているだけだと、構造が複雑で解読困難な“スパゲッティコード”になるリスクもあります。

まさにその通りです。論理的思考も抽象化も、問題解決や意思決定、日々のタスク管理など、あらゆる場面で活かせます。プログラミングを学ぶことは、それらの“思考の筋肉”を鍛えることなんです。

Point3.AI時代に求められる実践スキルとは?
では次に、AIを使って「ゼロイチ」を生み出すための実践的なスキルについてお話しします。
まず重要なのが、プロンプトエンジニアリングです。AIに自分の意図を正確に伝えるための「指示の出し方」のことですね。これはプログラミングの知識があればあるほど、より精度の高い指示ができます。
例えば「Pythonでユーザー認証機能を実装して。ただしFlaskフレームワークを使い、パスワードはハッシュ化して保存するように。エラーハンドリングも加えて」といった具体的なプロンプトを出すには、それなりの知識が必要です。
次に必要なのが、コードレビューのスキルです。AIが出力したコードは必ずしも正しいとは限りません。バグがあったり、非効率だったり、セキュリティ面で問題があったりします。それを読み解いて判断できる力が求められます。
その通りです。そして3つ目は、デバッグのスキルです。AIが生成したコードが思った通りに動かないときに、どこに問題があるのかを特定し、修正する力。これは経験がないと難しいですが、実践を通して鍛えられる能力です。

まさにその通りです。AIを活用できるかどうかは、その人のプログラミングスキルに大きく依存します。AIは非常に優れた道具ですが、それをどう使うかは人間次第。まるで高性能な工具を使いこなす大工のようなものですね。
Point4.「ゼロイチ思考」は、とにかく“作ってみる”から始まる
さて、最後に「プロダクトを形にする力」をどうやって育てるか、という話をしましょう。答えはシンプルです。とにかく作ってみることです。
はい。どんなに小さなものでも構いません。最初は簡単なWebサイトやゲーム、タスク自動化のスクリプトでも良いのです。
よくある失敗が「文法を完璧に覚えてから何か作ろう」とするパターンです。でも、文法は調べれば分かるもの。大事なのは『作りたいものがある』というモチベーションです。
AIという最高のパートナーがいる今こそ、「作ってみる」がより容易になりました。
たとえば「ユーザーの入力を受け取って、それを表示するWebアプリのコードを書いて」とAIに頼めば、すぐに動くコードが出てきます。それをベースに、自分のアイデアを肉付けしていけばいいんです。
そうです。この「作ってみる」というサイクルを繰り返すことで、論理的思考、抽象化、そしてデバッグのスキルが自然と身についていきます。
失敗しても大丈夫。むしろ失敗からの学びこそが一番大きいのです。エラーメッセージは、あなたにヒントを与えてくれる「先生」だと思って向き合ってください。
まさにその通りです。AI時代は、プログラミングができる人と、そうでない人の間に大きな差が生まれる時代になるでしょう。
でもそれは、同時にチャンスでもあります。AIという強力な武器を手に、自分のアイデアを形にできる時代が来たのですから。
素晴らしいですね! その一歩が、君の未来を大きく変えるはずです。頑張ってください!
