バイブコーディングの時代に私がコーディングを学ぶ理由

in tech

Vibe コーディングは今のトレンドであり、Vibe コーディングのおかげでコーディングを学ぶ必要がなくなったと多くの人が主張しています。しかし、私は逆の方向に進んでいます。その理由をお話します。

バイブコーディングの誇大広告

すべてを解決できるわけではない

毎日 Reddit にログインすると、初めてのアプリをバイブコーディングしている人々に関する投稿を少なくともいくつか目にします。他のソーシャルプラットフォームについても同様です。バイブコーディングが、コーディングをしない人たちをソフトウェア作成に引きつけていることは疑いの余地がありません。

LLM がそれほど人気が​​なかった数年前のことを思い出してください。プログラミングに興味がある、またはアプリケーションを作成したいと考えていましたか?コードの書き方を学ぶという長い旅に取り組む必要がありました。あなたの能力によっては、時間的にも金銭的にも高価になる可能性があります。多くの素晴らしいアイデアは、アイデア作成者がコードの作成方法を知らなかったり、開発者を雇用できなかったりしたという理由だけで、日の目を見ることはありませんでした。

バイブコーディングにより、そのシーンは永遠に変わりました。週末のペットプロジェクトのプロトタイピングからセミプロフェッショナルレベルのソフトウェアの構築に至るまで、適切にガイドできれば、多くの場合、AI がそれを行うことができます。ソフトウェア作成のハードルは、ほんの数年前に比べて低くなりました。

コードを理解する必要はなく、ましてやコードを書く必要もありません。舞台裏で何が起こっているかを知る必要はありません。複雑なアルゴリズムを学ぶ必要はありません。それを望まない人がいるでしょうか?しかし、本当にそんなに簡単なのでしょうか?コーディング方法を知らなくても、何かをコーディングすることはできますか?完全ではありません。だからこそ、私はまだバイブコーディングに取り組む準備ができていません。

最高のバイブコーダーは単なるコーダーです

驚き!プログラマーはプログラミングツールの使い方を知っている

AI ツールは単純なプロンプトからコードを大量に生成できますが、バイブ コーディングは従来のコーディングに代わるものではありません。むしろ頼もしい相棒のようなものです。熟練したプログラマはこれを理解しています。彼らは AI をライバルとしてではなく、ツールキットの強力なツールとして見ています。彼らにとって、バイブコーディングは共同作業です。彼らがコーディングのノウハウでリードし、AI がそれに続き、プロセスをスピードアップします。だからこそ、最高のバイブコーダーは単なるコーダーであることが多いのです。コツを知り、スキルを駆使して AI を輝かせる人々。

コーディングの経験がないのにバイブコーディングを試したことがあるなら、AI が見た目は良いのに機能しないものを吐き出したときに壁にぶつかったことがあるかもしれません。 Web ページは正常に読み込まれたが、モバイルではクラッシュしたか、スクリプトが無限ループに陥った可能性があります。プログラマーはここでスーパーパワーを持っています。彼らは問題を発見することができます。基本を理解していれば、AI が生成したコードの内部を覗いて、どこが間違っているかを正確に特定できます。

AI に「問題を修正してください」と漠然と頼む代わりに、「この関数で null 値を処理するのを忘れていますね」と言うと、AI はより適切な修正を提供します。それは、友人が道を推測することを期待するのではなく、明確な道順を友人に与えるようなものです。

この精度は、最初から AI を導く際にも引き継がれます。プログラマーは、AI を正しいアプローチに導くプロンプトを作成する方法を知っています。たとえば、プログラマーではない人が「ログイン ページを作成してください」と言うと、ぎこちなく安全でない結果が得られるかもしれません。ただし、プログラマーは、「パスワード ハッシュと CSRF 保護に bcrypt を使用して、HTML、CSS、JavaScript でログイン ページを作成する」と言うかもしれません。それがラフドラフトと洗練された製品の違いです。

ワードカウンターを備えたブラウザウィンドウ。

初めての Web アプリを構築する: シンプルなメモ アプリとワード カウンター

Web 用に無料で簡単に開発できます。

バグを修正したり、プロンプトを作成したりするだけではありません。プログラマーは、バイブコーディングだけでは再現できないという考え方をもたらします。彼らは、肥大化したライブラリを軽量のライブラリに交換するなど、AI の提案からより効率的なソリューションにいつ切り替えるべきかを知っています。彼らは、リアルタイム アプリのメモリ使用量よりも速度を優先するなど、さまざまなプログラミング アプローチのトレードオフを理解しています。実践的なコーディングから構築されたこの直感により、バイブコーディングセッションがより効果的になり、プロジェクトがより堅牢になります。

コーディングスキルは依然として重要です

Vibe コーディングは人間のプログラマーに取って代わられたわけではありません

私はバイブコーディングで自分の役割を果たしました。私が大学 1 年生のとき、私たちは最終プロジェクトを作成するという任務を与えられました。当時、ChatGPT はまだ非常に新しいものでした。コーディングにおいても今ほど強力ではありませんでした。当時はバイブコーディングという言葉さえありませんでした。友人と私は、Java で簡単な銀行システムを作成することにしました。

私たちはプログラミングの基礎と Java の一部を知っていました。しかし、私たちは機能する銀行システムを構築するには十分ではありませんでした。私たちが何をしたのですか? ChatGPTを使って全部作ってみました。ご想像のとおり、多くの落とし穴に遭遇しました。 AI が生成したコードには、デバッグしなければならないエラーがいくつかあり、修正しなければならない悪い習慣があり、修正しなければならない間違ったアプローチがありました。全体をバイブコーディングするつもりでしたが(当時はこの用語は存在していませんでしたが)、それはできませんでした。

画面上にコードが表示され、マウス カーソルが表示されたラップトップ。

バイブコード化されたアプリにお金を払うのはやめてください

良い雰囲気だけ。

この話を共有した理由は、コーディング スキルがすぐに失われるわけではないことを思い出していただくためです。プログラミングに興味のある初心者が、今からコードを学ぶ価値があるかどうかを尋ねるソーシャル メディア投稿を数え切れないほど目にします。私の答えは?絶対に。

プログラマーはただコードを書くだけの人ではありません。プログラマーは本質的に、問題解決者です。より具体的に言うと、最も効率的な方法で問題を解決します。何度も繰り返しを繰り返した結果、AI ツールは以前よりもはるかに優れたものになりました。しかし、彼らはまだ人間のエンジニアの思考レベルに達しておらず、完璧なソリューションを実装するための同じ知識を持っていません。

だからこそ、私はコーディングの旅を続けることに決めました。実際、今は以前よりもさらにモチベーションが高まっています。 AI ツールを使用すると、学習をより簡単に、より楽しくすることができます。コーディングの際の補助としても使用できます。 「AI ツールをまったく使いたくない」から「AI のコードを盲目的に信頼する」までのスケールで、私は中間点を選択しました。それは、AI ツールを有効に活用し、生産性を向上させ、コーディング スキルを強化することです。

製品を作って、この人のようになってしまうことは絶対に避けたいものです。

AI支援プログラミングの未来

「アシスト」を重視

非常に多くの LLM モデル、AI エージェント、その他のツールが存在するため、プログラミング パラダイムは、いつものように確実に急速に進化しています。ただし、AI がすぐにプログラマーに取って代わるわけではありません。しかし、プログラミングを学び、コードを書き、ソリューションを実装し、ソフトウェアを作成する方法は確かに変わりました。

多くの企業が AI 支援プログラミングに移行しています。最近、技術採用担当者が、プログラマーを採用する際にバイブコーディングがスキルテストの一部になっていると言っているのを見かけました。採用担当者は、ソフトウェア エンジニアがシステム アーキテクチャを考案するために AI ツールをどのように使用しているか、アイデアの実現をどのように促しているのか、AI コードから生成されたエラーにどのように対処しているのかに興味を持っています。

真実は、適切な人が AI ツールを使用すると、生産性を 10 倍に高めることができるということです。したがって、バイブ コーディングでは人間が設計したソフトウェアを作成できないのと同じように、プログラマーとして、新しい AI コーディング手法に適応する方法を学ぶ必要があります。長期的には、それは必需品のようになってきています。ジュニア開発者がそばにいてペア プログラミングを行えるのであれば、遅れる理由はありません。


群衆の中で目立つ

あなたの周りにはバイブコーダーがたくさんいるので、今がコーディングスキルに集中して差別化を図るのに最適な時期です。 Vibe コーディングは、いくつかの楽しいサイド プロジェクトに適しているかもしれません。しかし、私の経験から言えますが、真のプログラマーになりたいのであれば、自分の手を汚す以外に方法はありません。

プログラミング言語の行が表示されたコンピューター画面の拡大図。

コーディングに興味がありますか?プログラミング言語を選択するための初心者向けガイドはこちら

初心者のプログラマーにとって最適なプログラミング言語はどれですか?

関連記事

前の投稿
最初の Snapdragon X2 ラップトップが米国に到着 — 知っておくべきことは次のとおりです
次の投稿
私は 25 年間使用した FTP クライアントのために最新のファイル転送アプリを捨てました – その理由は次のとおりです