気づきをもらい、コツコツ実装|開発した「日本語機能」への反応に開発者として思うこと(倉橋徹次)

 

 

こんにちは、株式会社ZeroDivideの倉橋です。

今回はTrinityの日本語化機能を通して気が付いたことを話していきたいと思います。

 

日本語化機能とは?

Trinityには、RPGソースを日本語テキストに変換する「日本語機能」というものがあります。この機能を使用するとRPGソースが読めない人でも容易に読み解くことができるという優れものです。

なぜこんな機能を開発したかというと、私がRPG言語を知らなかったからなんですね。

RPG言語のドキュメンテーションツールを開発しているわけですから、当然RPGソースを読むことが必要になります。しかし私はRPG言語の構文や命令がわからないので、途中で読み進めるのを中断してマニュアルなどで確認する作業がどうしても増えるわけです。

そんな時に思いついたのが日本語化機能でした。

RPGソースを日本語テキストに変換すれば読み進めるのも楽だし、開発の過程で言語に対する理解も深まると考えたわけです。実際に言語に対する理解も深まりましたし、読み進めるのも格段に楽になりました。

そんなわけで当初は私専用の開発支援ツールだったのですが、お客さんやベンダーさんに見せたところ「使ってみたい」という声があったので、それならブラッシュアップして製品に組み込んじゃおう! というわけで現在に至ります。

 

日本語化は社員教育に役立つ?

日本語化機能は製品内のいろいろなところに使用されている、いわば「ソフトウェア部品」のようなものなのですが、そんな中でRPGソースの日本語化のためだけに用意されているのが「RPGソース日本語化」という画面です。

この画面は前記した私専用の開発ツールを原型にブラッシュアップしたものですが、画面構成やできることは私用ツールとして使っていた頃から大きく変わっていません。

初期のお客さんの話ですが、この画面をデモでご覧いただいた際に、「これは新人教育に使えるね」という感想をいただいたことがあります。

確かに私自身がRPG言語を理解するために開発したものですが、当然「教育」という発想は持っていませんでした。しかしお客さんの話を伺ううちに「なるほど」と納得する点が多く、大変参考になった思い出があります。

「RPGソース日本語化」の画面でリストから日本語化したいRPGソースを選択すると、元となるRPGソースと日本語化されたソースが並んで表示されます。この2つのソースは表示範囲が連動しており、たとえばRPGソースをスクロールさせると日本語化されたソースも同じようにスクロールします。これによりRPGソースと日本語化ソースを見比べながら読み進められるわけです。

その方が目を付けたのも、まさに「そこ」なわけです。

新人さんはRPG言語を知らない、もしくは不慣れなわけですが、日本語化されたテキストを読むことで内容を理解できます。結果としてコードをどのように書けば自分がやりたいことを実現できるかがわかるようになります。さらに日本語化を行うとファイルのフィールドに日本語のコメントなど併記されるので、どんなファイルがあって、それはどんなフィールドを含んでいるのか? と言った関連情報についても同時に学ぶことができます。

日本語化ソースを読み進めることで、既存のソフトウェア資産についての理解も深まっていくわけですね。

 

エキスパートな人が見落としている視点

では日本語化は新人さんにしか役に立たない機能かというと、そんなことはありません。

長年開発を行っている「エキスパートな人」に日本語化機能を見せると、「やれやれ」という感じがあった後に「システムについてはすべて頭に入っているから、こんな機能は必要ないよ」とおっしゃる方が多いのですが、人間の記憶ってあいまいですし、一番怖いのは「何を忘れたか忘れている」ことだと思うので、こういう話をされると正直、「この人は自分の能力を過信してるなぁ~」と思っちゃったりします。

伺った話の中で「自分に厳しく堅実な人だなぁ」と思ったのは、「長年開発をしていてもすべての情報が正確に頭に入っているわけではないので、こういう日本語による支援があると読み進めるのが楽になって助かる」というものでした。この方も「エキスパートな人」だったので、当然システムについてはキッチリ頭に入っていると思います。それでもこういった機能を目にした時に自分の仕事の精度を少しでも高めることができると感じる肌感覚は、この方の堅実さの表れだと思います。個人的にはこういう人にこそ仕事を任せたいものですね。

ほかにも「自分の担当外のソースを見ると、ふだん使わないようなファイルが登場することがあるので読み進めるのが大変だったけど、こういう機能があると便利だね」などの感想もいただきました。こういうことも人員の移動が多かったり、外注の多い開発現場では助かるポイントだと思います。

 

前向きで広がりのある発想が大切

自分が当初考えた使用用途とは異なる使い方の話を聞くと、広がりを感じてうれしい気持ちになります。

少し愚痴っぽくなりますが、以前は「この機能はこんなことにも使えるね」という視野が広がる話を聞くことが多かったのですが、最近は形が決まっているものになるべく収まるような製品を探している人が増えているので寂しく感じています。

何となくですが、「形には収まるものを探す」って後ろ向きに感じませんか? 私は未知のものを見た時に、「これは何に使えるんだろう?」って考えるほうがワクワクしますし、心が前向きになります。

「バカとハサミは使いよう」ではないですが、個人的に「ソフトウェア」とは「道具」であると思っています。だからこそ、まずは道具としていろいろな使い方を模索し、その中で得たものを次の機能追加に生かしていくことでさらなる広がりを生み出せるような、そんな製品作りが今後も続けられたらいいなぁと思っています。

 


 
気づきをもらい、コツコツ実装

 

第1回 開発について日々感じていること

第2回 開発した「日本語機能」への反応に開発者として思うこと

第3回 「ツールと設計書」の関係は「カーナビと地図」に似ている

関連リンク

More Posts