Less is more――小さなツールを内製することについて
予告通り,いつだったかの続きを書きます.
製作を進める上で,こういうツールが欲しい,という需要があがることはかなりあります.さらにそれらは,大きく二つに分類できるように思われます.本題ではないのですが,一応参考のために書いておきますか.
ひとつはローカル環境での作業における,プロジェクトごとにほぼ固有といってよい,特定の作業を自動化したいというツールの需要です.
今まで多く利用してきたノベルエンジン NScripter での製作を例に挙げるなら,特定部分をデバッグしたいですとか,立ち絵指定のエイリアスを管理したいですとか,特定フォルダにある画像ファイル名を元に,背景用の定数ヘッダを自動で出力したいですとか,そういう 「手元で楽をするためのツール」 です.Photoshop の定型作業を自動化したいのでスクリプトを,というようなものもこれに含めていいでしょう.
もうひとつは,複数人での並行作業を効率化しようと思うと需要が出てくるツールです.
ノンリニア内部で実際に使われているものとしては,独自のチャットや,webdav と連携した,ブラウザ上での画像サムネイル(ノベルゲームの背景用素材の一元管理に使う)などがそれにあたります.
まあ,そういうものが欲しくなる背景については前回も多少書いたつもりですし,こういう話題に興味のある方なら想像がつくと思われますので,割愛させていただきまして.
今回話題にしたいのは,それらをどうやって用意するかという問題,つまり自分たちでオリジナルのものを作るか,拾い物を(改造含め)使うかという問題です.
幸いにして今の時代,フリーなソフトウェアは豊富です.上記したようなことがそれぞれ実現できるソフトウェアは,全て,ぐぐれば入手できます(よね? っていうかローカル作業の例なんて,適当なシェルがあれば十分で……).
ですが,「できる」ことと,実際にサークル内で「使える」ことの間には大きな壁があります.
全員が情報処理技術者であるようなサークルならば,できることと使えることはほぼイコールと考えてよいので,「正規表現で~」 とか 「パイプ使えば~」 とか言って終わりですが,一般にはそうは行かないわけです.
加減して,拾ってきたフリーソフトふたつを組み合わせて実現できるからこれでどう,と既製のものを利用しようにも,手間からして,どうにも限界があります.例に挙げたようなテキスト処理ですと,確かにツールは掃いて捨てるほどありますが,それらは「一般に色々使えるように開発されたツール」であるので,細かい指定などは各ユーザがやらねばならないわけです.何度も同じことをやりたい場合に毎度その操作が発生するのは非効率的です.
オンラインでの連携のためのツールも同様です.チャットシステムも画像が管理できるグループウェアも,掃くどころか腐って捨てるほどあります.ありますが,そのどれもが,この程度の規模の同人サークルで利用するには無駄な部分が多く,説明が大変で各利用者に負担がかかり,結局それほど活用されないわけです.
少しまとめましょう.
つまるところ同人サークルでやりたいようなことを実現するには,拾ってこれるソフトウェアはあまりにも多機能・汎用的すぎ,しかもメンバーは多忙で,そういったものがいくつも導入されても学習が面倒なばかり,結果としてそれでは十分活用されないのです.必要なのは,誰にでも簡単に使えるシンプルで最低限の機能のみ備え,誤操作などありえない,というツールなのです.
大が小を兼ねれば何も問題ないのですが,往々にして汎用性が高いソフトウェアは基本的な機能だけを簡単に使えるようにはてきていませんからね,(情報スキル的な意味で)普通の人はまず敬遠しますし,馬鹿にするわけではないですが,うまく使えずその対応に追われることは必至です.
そもそも,やりたいことは(気分として)ちょっとしたことなのに,ゴテゴテした糞みたいな UI のウィンドウズアプリケーションがロゴを華麗にαフェードインさせながら起動するのを毎回見ていろというのも人類全体にとって多大な損失と言わざるを得ません.
……というような問題は,特定の用途に特化した,需要に応えるちょっとしたソフトウェアを誰かが書く,という行為によって全て解決されます! すばらしい!(ちなみに「誰か」っつーのは俺に他ならないので,完全なる自画自賛です)
まあ,一段落前のは冗談 3/4 ですが,求められているソフトウェアはつまるところシンプルに必要とされていることだけができればいい代物なわけなので,内製するといってもそんなに大変なものを書くことにはなりません.それで他のメンバーの負担が軽減されるなら,内製もありなんではないかと思えては来ないでしょうか.
車輪の再発明といわれればもちろんその通りですが,ひとりの技術担当が焦点を小さく絞り特化したツールを内製するだけで他のメンバー全員の作業効率が継続的に向上するなら,悪い話ではないでしょう.僧侶がスクルトとかピオリムとかかけるようなもので.
……と,俺ってこんな仕事しましたすげえかっこいい最強,でも孤立無援後継者いねー! というふいんきなぜか変換できないなエントリになりました.
次回はまた若干この話に絡めて,ソフトウェア製作はどこまで創作活動として認識しえるか,みたいなことを書こうかと思っています.延々と興味ない話が続いてすいませんフヒヒ! 他の人のエントリに乞うご期待!