GNU誕生から30年が経った2013年。ソフトウェア開発の環境/ツールはどのように変化していったのだろうか。簡単に振り返りつつ未来を予想する。
あなたたちの多くはプログラマの美徳をよく知っている。
もちろんこの3つ、怠惰、短気、傲慢である。
GNU誕生から、30年が経ちました。GNUは、全てフリー(自由な)ソフトウェアで、UNIXと互換性のあるソフトウェア環境を実装することを目標とするプロジェクトです。
1983年の9月27日に、Richard Stallman(リチャード・ストールマン)氏がニュースグループ「net.unix」「net.usoft」に向けてGNU構想を投稿してから、30年の年月が過ぎました。
「自分は商業プログラマ、会社員プログラマだから、GNUなんて関係ないさ……」と思うことなかれ、(Mac)OS XやiPhoneアプリの開発環境「Xcode」も少し前まで「gcc」(コンパイラ)の恩恵を受けていましたし(現在はgccスタイルの「llvm」コンパイラがデフォルト)、各種ツール、コマンドなど、目に見えないところでも数多くGNUの恩恵を受けているハズです。
一昔前は、1人もしくは数人の優秀な開発者が、多くの人に使われるソフトウェアやゲームを開発したりすることは、それほど不思議なことではありませんでした。その後、コンピュータ環境が複雑化し、高性能になるにしたがって、よりソフトウェア開発も大規模に複雑になり、1つのソフトウェアの開発に関わるプログラマも増加してきました。
例えば、Windows 7は約1億行、約5000人の開発者が関わったといわれています。ちなみに、OSとアプリケーションなので、単純な比較はできませんが、1990年に登場した Photoshop 1.0.1のソースコードが、179ファイル、約12万8000行です。スプラッシュスクリーン(起動画面)には、4名の名前がクレジットされています。Photoshop 1.0.1のソースコードは、現在「Computer History Museum」で一般公開されています。
1人から数人の優秀な超人的スタープログラマが活躍していた時代から、優秀な設計者やプロジェクトマネージャの下、大規模な開発を進める形態へ、そしてまたスマートフォンアプリや、クラウドサービスの浸透により、再び、少人数で、多くのユーザーに向けた開発が可能な時代になりました。
近年では規模だけではなく、APIなどを使いこなす複雑さ、開発スピード感、複雑化するネットワーク環境や、デバイス環境、セキュリティの懸念など、さまざまな要素が絡んでくるようになりました。
それでは、業界が長い人にとっては懐かしく思える、新しい人にとっては、興味深く歴史を振り返ることのできる、開発ツールの変遷を振り返りましょう。
開発環境の歴史は、プログラミング言語の利用に左右され、ほぼプログラミング言語の歴史とも考えられます。
またその一方、プログラミング言語とは関係なく使い続けられるエディタ環境もありますし、手法や開発の流れ自体が工夫とともに進化してきました。
Copyright © ITmedia, Inc. All Rights Reserved.