読者です 読者をやめる 読者になる 読者になる

Xojo日本語ブログ

マルチプラットフォーム対応アプリが開発できるXojoのブログです。

Xojoが注目するシチズンデベロッパーとは?

シチズンデベロッパーという単語は日本ではあまり聞きません。欧米では2012年くらいからある言葉のようですが、日本では広まっていないようです。シチズンデベロッパーを直訳すると市民開発者といった意味になるかと思いますが、これでは意味がよく分からないでしょう。

そこで今回はシチズンデベロッパーとは何か、について紹介します。

プログラマーではない開発者

俗に言うプログラマーは企業内で自社、または顧客のシステムを開発する専門職になります(ホビープログラマーは今回は省きます)。多くの場合、彼らはプログラマーとして雇用され、専門の知識を持っています。Webシステム、基幹システム、サーバサイド、スマートフォンアプリなど開発分野が分かれており、それに合わせてプログラミング言語も得手不得手が存在します。

しかし、企業内には開発専門職ではないにも関わらずプログラミングを行う人たちが少なからず存在します。そうした方々がシチズンデベロッパーと呼ばれる存在です。よくある例としては、VBAを使ってExcelのマクロを拡張してツールを作ったり、MS Accessの簡易データベースシステムを作ったりします。

そういったシチズンデベロッパーの方が開発するツールの多くはシステム開発会社や自社内の開発部門に依頼するほどでもない規模のシステムであることが多いでしょう。また、規模が大きくなると仕様書であったり、システムの複雑性が増します。その結果、導入までに多くの時間を要するようになってしまいます。しかし、社内の業務や営業部門の人たちにとって現状の問題を早く解決してくれることが最重要であり、小さなツールで済むならばそれが一番なのです。

例えば住宅を作るならば専門の業者に任せなければならないでしょうが、壁につける棚であれば自分で作ってしまおうと考えるのではないでしょうか。そうやって作るもののサイズに合わせて作る対象は変わってくるのです。シチズンデベロッパーの方が支えるのは「今すぐ使える便利なツール」になります。

シチズンデベロッパーにおける大事な要素は?

ではシチズンデベロッパーとして大事になる要素はなんでしょうか。まず挙げられるのが「すぐに使えるツール」であることです。VBAが利用されるのはまさにその点で、日本のオフィスではWindows PCにMS Officeがほぼ100%導入されており、担当者のマシンに特別な環境をインストールする必要がありません。

次に「習得が簡単な言語である」のもポイントです。VBAは恐らく習得が簡単な言語の一つに挙げられるでしょう。他にあるとしたらJavaScriptも習得が容易かも知れませんが、開発環境がテキストエディタくらいしかなかったり、Webブラウザ上で動くプログラミング言語とあって、ローカルにあるファイルを自由に操作したり外部のネットワーク接続を行ったりするのには不向きです。

さらに「GUIがあるアプリケーションが簡単に作れる」というのもポイントです。PHPPerlPythonRubyJavaなど多機能で高度なプログラミング言語を使ってツールを作ることもできますが、多くはGUIを持たないソフトウェアができあがります。そのため、使う際にはコマンドプロンプトを立ち上げて実行しなければなりません。これは運用担当者にとっては敷居が高く、とても面倒な仕組みになります。分かりやすい画面(ユーザインタフェース)があるかどうかは運用で使ってもらえるかどうかに大きな役割を果たします。

分かりやすい画面を作るためにはHTMLを使うこともできます。HTMLを手打ちして画面を作っていくのはとても大変ですが、最近ではBootstrapのように見栄えの良い画面を簡単に作成できる仕組みも存在します。しかし、Webブラウザ向けのシステムを動かすにはWebサーバ(HTTPサーバ)が必要になったり、その設定を行うなどとても面倒なものになるでしょう。いわゆる普通の実行ファイルとしてのプログラムを開発し、それをユーザに配布して終わり、くらいの手軽さが大事なのです。

シチズンデベロッパーは誰なのか?

シチズンデベロッパーとはプログラミング専門職ではない、企業内開発者と言えます。本職は様々で、業務担当者の場合もあればサポート部門、営業、はたまた開発部門長といったこともあるでしょう。プログラミングにおける専門の勉強は行っていないことが多く、コーディングスキルについて言えば専門のプログラマーに比べると劣るかも知れません。しかし多くの開発会社が作るのが複数人による大きなシステムであるのに比べて、シチズンデベロッパーは小さなツールを素早く作り上げるのです。

昨今、ビジネストレンドの変化は高速化しており、ゆっくりとシステム開発を行っていてはあっという間に他社に出し抜かれてしまう可能性があります。そうならないためには現状のワークフロー、新しく生まれるニーズを素早く自動化し、省力化していく必要があります。そのためシチズンデベロッパーの存在は今後、さらに求められるようになるでしょう。名前としてシチズンデベロッパーとラベリングされていますが、ここで書いているようなことを元々行っているという方はとても多いはずです。


プログラミングは特別なことではありません。工作と同じで、規模によって作る人が変わるだけで、本来は全員ができる方がいいものなのです。それによって自分の業務を効率化、自動化できるようになります。ブラウザを開いてログインしてダウンロードして…などを逐次やっていたような作業を一気に自動化してしまうこともできるのです。その方がヒューマンエラーも減りますし、空いた時間をもっとビジネスの本質にあてられるようになるでしょう。