偏見混じり、とか書いておけばだいたい何を書いても許される風潮。

研究者を和英辞書で引いたところ、「a scholar」って出た。
「scientist」 かなーと思ったんだけど、これは自然科学研究者と出てきた。
俺の英語力が試される。それはそうと開発者は「Developer」である。 

そんなことはどうでもいいのである。

俺が思う、情報工学分野における研究者と開発者の違いについて書く。

研究者はAという問題点からBという解決点への道筋について、多くの時間を費やすことができる。
しかしながら、それらを解決する道筋については数種類を比較する必要があり、
結果としてBを導出する道筋を複数考え出さないとならない。
理論だてて最短経路を導出する必要があるようにおもう。
重要なのは、AとかBとか道筋は新しい事柄であること、という点である。 

開発者は理論が必要というわけではないように思う。
AからBへの道筋について、それが最短経路である必要もない。
ただし、経路を編み出すのに時間を費やしてはならない。
遠回りでも実装し、将来に短縮する余地を残すか、あるいはそのままか、
とにかく世の中に公開することが優先されるように感じられる。競争である。

この例えは極端であるとおもうし、Aがどういうものであるかについてで種々変わってくると思う。
端的に言えば、研究者は新規性、開発者は技能を要求されているのだと考える。

研究室でWebサービスを作成しているとする。Androidアプリも用いている。
Webサービスは語学支援を行い、Android端末のセンサー類が学習支援の一助を担う。

一般的に、Webサービスは情報系分野の叡智の集合である。
データベース、サーバーサイド言語、HTML、JavaScript、などなど。
そして工学分野も重要であるが、デザインはもっと重要である。
一般利用者はデータベースを見ない。PHPのソースコードも関係がない。
開発者あるいは研究者がそれらと向き合っている時、
利用者はでデザインや入力フォームと向き合っている。

Androidアプリも同じである。
開発者がAndroid APIやjsonと向き合っている時、
利用者は入力フォームとタッチ可能なオブジェクトについて向き合っているわけだ。 

さて、研究者は新規性を要求されているという点では、
彼らにはデザインやルールは二の次であることが自明であると思うのだが如何か。
草案のデザインが正式採用され、そして新規性のあるパズルピースによってキメラのようになっていくWebサービス。
ソースコードのメンテナンスが難解であり、開発するには難易度を幾段にも上昇させる。
そしてAndroidアプリについてはセンサーを常に取得しようと試み、電池資源を消費する醜いアプリとなっている。
これは開発者では許されないが、研究者には許されているのだと思う。

そもそも研究者には、かのようなメンテナンスを行う時間などないのではないか。
「問題には気がついている」のだが、新規性のある事案を考え、実装する頃には
クリーンアップを図る機会は失われているのではないか。
そして次の研究にとりかかることを繰り返す。 

開発者が優れているとかそういう話ではなくて、研究者あるいは研究従事というのは
そういう問題が常々あるだろう。というお話だが、
俺は開発者として(中途半端に)訓練された期間があまりにも長いため、
研究者の新規性第一のような考え方が合わない。

まず自分は、新規性を追求するよりも先に、デザインやルールを検討する。
(そもそも新規性を考えるよりも不便であることを解決する試みを開始する。
新規性を考えることと不便を解決することは異なるエネルギーであると思う)
利用者にとって快適なものとはなにかをかんがえる。そして実装する。
利用者にとっての快適さは、新規性と相反することが多い印象もある。
利用者の望むことは、これまであった種々のことの組み合わせにしかすぎないからだ。 

ということを思いながら研究室のシステムを触っている今日この頃。