過去2年間、これまでの人生全体よりも多くの時間をコーディングに費やしてきました。
これは、ChatGPTが自然言語の仕様を動作するコードに変換するという驚くべきことを可能にしたからです。完璧ではなくバグがあることもありますが、ソフトウェアエンジニアリングの背景があれば、問題を迅速に見つけて修正できます。
しっかりとした経験があれば、何を尋ねるべきか、どう尋ねるべきか、プログラムのさまざまな部分をどのように管理するかを知っており、より速いビルドを可能にします。
それでは、これほど迅速かつ簡単に結果を得られるなら、なぜ開発者がまだ必要なのでしょうか?
デジタル製品の市場基準は上がるでしょう。チーム全体を置き換えることができる個人がより一般的になりますが、それはまた、プロジェクトがより野心的でなければならず、目立つために限界を押し広げる必要があることも意味します。この需要は市場のダイナミクスによって推進されます。
皮肉なことに、13歳か14歳の頃、ソフトウェア開発者の消滅を予測するコンピュータ雑誌を読んだことを思い出します—これは数年ごとに再浮上する繰り返しの物語です。しかし、その直後にはいつもエンジニアの「不足」についての話があります。
AIを使ってプロトタイプを作成することは、特に複数の役割を果たすことができるスタックを持っていれば、簡単になりました。AIは、一人の人間が単純なユースケースを処理することを可能にします。これは、単純なウェブページを作るだけで地位を得られたインターネット初期の時代に似ています。ある程度の技術的知識が必要でしたが、それだけで十分な印象を与えることができました。
私たちはLLM(大規模言語モデル)の初期段階を終え、より洗練された実装に向かっていると思います。それは、静的なウェブサイトがデータベースを必要とする動的なものに進化したときのようなものです。LLMの文脈では、「データベース」の相当物はRAG(検索強化生成)です。RAGは大規模な文書セット(数千以上)を横断するスーパー検索エンジンのように機能し、クエリに基づいて関連するデータを抽出するために文書を相互参照します。
別の言い方をすれば、RAGは高度なAIコンポーネントとなり、保存された情報を再利用するテンプレートから文書を生成するなどの新しいユースケースを可能にします。
この移行は、「静的なウェブページを構築する」から「データベースを持つ動的なウェブサイトを構築する」へのシフトに似ています。RAGの実装にはより高度な技術的専門知識が必要であり、それが第2フェーズを示します。
第3フェーズでは、さらに野心的なプロジェクトが登場し、革新的なサービスを提供するためにより強力な技術スタックが求められます。Googleやソーシャルメディアのようなウェブサイトは、非常に複雑な技術アーキテクチャの例です。
最初のポイントに戻ると、デジタルソリューションの提供において大きな飛躍が見られると思います。よりスマートな機能がより速く構築されることが一般的になるでしょう。しかし、エンジニアやコーディングが突然終わるとは思いません。歴史的に、そのような予測は間違ってきました。