今年のテーマを1月中に書き終えようと思っていましたが、ぼちぼち書こうと思っていたらあっという間に月末を迎えてしまいました。そんなわけで、今日は今年のテーマ4つ目、『ソフトウェアづくり』について書こうと思います。
コンピューターに限らず、自動車、電機、機械、通信、娯楽など、どんな製品やサービスにもソフトウェアは欠かせない存在になってきています。一方で、日本のソフトウェアづくりの競争力は全くないといわれています。事実、コンピューターソフトウェアに関して日本は完全な輸入超過に陥っています。その倍率は、なんと100倍とも150倍とも言われています。
一体、なぜそんなことが起きてしまうのでしょうか?今年は、色々な場所で日本におけるソフトウェアづくりというテーマで議論が活発に交わされることになるでしょう。そんな中で、私自身が考えたいくつかの現状の課題を下記に書き記しておこうと思います。
まず一つ目の問題。日本人は、ソフトウェアそのものに価値を見出すことが出来ないといわれています。ソフトウェア自身にどう価値をつければ良いのか、多くの日本人は多分即答することは出来ないはずです。例えば、デジタル家電、携帯電話など購入するときに、ソフトウェアが購入動機になっている割合はものすごく少ないはずです。その製品にとってソフトウェアが必要不可欠であるにもかかわらず、ソフトウェアそのものには価値は感じていません。
作り手も同様です。ものづくりの過程において購入動機につながらないソフトウェアの位置づけは当然低いものとなります。ほとんどの製造業では、自らの製品や商品を動かすために必要不可欠であるにもかかわらず、ソフトウェアだけはなぜか下請け会社に開発依頼を出します。ソフトウェアを内製化している会社、ソフトウェアの研究を行なっているメーカーは、残念ながらあまり聞いたことがありません。
企業において、ひとつのモノを作る上で必要な要素は、すべて統一されたビジョン・コンセプトの上で構築されるべきはずですが、ソフトウェアだけがなぜか蚊帳の外です。これでは、ソフトウェアづくりに価値を見出すこと流れにはなかなかなりません。
二つ目の問題点は、エンジニア自身にあると思っています。私の友人や、知人や、仕事の上で欠かせないパートナーですから、誤解がないように書きたいと思います。
日本人プログラマーの技術力が世界に比べて劣るなんて話は聞いたことありません。事実、私の周りにはフリーのスーパープログラマーと呼ばれる人がたくさんいます。どこにも属さないでがんばる彼らの発言を聞く限り、作れないものはないと断言するほどの技術力を持っていることは確かです。ただ、彼らの技術が世界中で使われるようになったと聞くことは残念ながらほとんどありません。事実、大手ソフトウェアベンダーのほとんどは海外勢で、唯一会計や人事の業務ソフト、文字変換ソフトなどが国産ベンダーによりまかなわれています。これは、単にマーケティングやビジネスだけのせいではありません。
いくつか考えられる日本人のエンジニア気質に原因があります。一つには、協調性がないことがあげられます。優秀なプログラマーが何かひとつの目的に沿って大きな価値を生み出す可能性を完全に捨ててしまっているように見えてなりません。優秀な人材を集めて、ひとつの成果を出すというまでにはかなりの大きな壁が存在しているようです。次に、オープンではないことがあげられます。オープンソースにすべきとかそういうレベルの話ではなく、自分の技術をどう普及させていたきたいのかという視点が全くないのです。色々なものと組合せてある製品・サービスのひとつのモジュールとして普及させたいのか、それとも一つの商品として完全に作りこみたいのか(だったらパブリックなマイルストーンがあるはず)、良く分からないものが多いのです。最後に、バランス感覚。技術を追求するあまり何使われるのか、何のためのものかという意識が抜けたり、きれいなコードを書くことに集中することで、それ以外に大切な納期やコストの意識が抜けていたり。
多分、ソフトウェアの業界にいる人たちは、この二つの問題について感じているはずです。そして、どう解決すべきか思案していることだと思います。ソフトウェアが総サービス化する流れの中で、ソフトウェアを単なるツールとしかみていない企業に対して、ソフトウェアではなく働いた日数で対価をもらうサービスを続けることが、本当に良いことなのでしょうか?ソフトウェアづくり、きっと、今年のテーマになると私は思っています。

  1. hidekoji says:

    Kioさん。ご無沙汰しております。私見ですが、
    実際に海外ベンダーでの製品開発の一部に
    携わってみて思うのは、海外ベンダーの技術力が、
    圧倒的に日本勢よりも高いわけではないが、
    そもそものコンセプト作りやその後の製品化までのプロセス/プロジェクト管理の点で、差をつけられてしまっているのかなということです。やっぱり職人気質なので、個人でこつこつやる方が日本人には向いているのかもしれませんね。。コンセプトの部分をうまく作って製品化に持っていければ面白いものができそうな感じもしますが。

  2. kio says:

    職人気質って言葉良いね!
    技術者って職人、アーティストとして作品を作ってる訳じゃないからね。小を見て大を見ずというか、ソフトウェアを作る際にはある程度のその辺りを理解して仕事しないと話にならないと思うし。
    でも、全て自動化されている訳でもないものづくりの世界ではなんで日本は競争力持てたのかなぁ?と考え込んでしまうのです。