Skip to content

「アプリ職人」の終焉に思うこと。個人開発者の未来は・・

ひと昔前に比べて「アプリ職人」「ソフト職人」と呼ばれる人たちが少なくなってきたように感じがする。

「アプリ職人」とは、個人規模でPC用のフリーソフトや、スマホアプリを開発する人たちのことだ。多分、誰でも一度は、彼らの作ったソフトウェアをPCやスマホにインストールしたことがあるだろう。

アプリ職人の活躍の舞台は、PCのフリーソフトからスマホアプリへと移っていった。今は審査が厳しく、品質をクリア出来ないアプリはストア並ぶことは無い。もはや、そこは企業が主戦場にする市場となっている。個人が出る幕ではない。

例え、個人の作ったものが厳しい基準をクリアしてリリースすることが出来たとしても、大量にリリースされるアプリの一つに過ぎず、それを誰かが発見しダウンロードする確率は極めて低い。

大抵、需要の見込める市場のほとんどは、名の知れた大手企業が無料アプリを提供しており、個人の開発者が新たにブラウザや、メモアプリを作ったとしても、まず勝ち目は無い。

例えば、全く同じ機能を有する二つのアプリがあったとする。どちらも優れた品質だ。

一つは、Googleが提供するアプリ。一つは、個人開発者のアプリ。どちらを自分のスマホにインストールしたいか、悩む必要は無いだろう。

個人で作る必要が無い世界

パソコンを使った作業で必要になる大抵のものは、Googleがウェブサービスとして既に提供している。スプレッドシートからスケジュール管理、ウェブサイト構築まで。

Windows10には、Windows Defenderという高機能セキュリティソフトが標準で入っている。もはや有料のセキュリティソフトのライセンスを毎年更新する必要も無くなってしまった。

他にも、オープンソース開発という形で、OpenOfficeや、GIMP、Inkscape、Brenderなど、ひと昔前なら高額なソフトウェアでしか実現出来なかった機能を実装したアプリケーションが無料で提供されている。

大抵のツールは、ウェブサービスや、オープンソースプロジェクトによって、対価無しで利用することが出来る時代になった。

そして、大抵のニーズは、それら大手のベンダーが提供する各サービスを組み合わせれば実現できてしまう。

僕の場合なら、複数のメールアドレスに送られてくる大量のメールをGmailに転送し、そこでフィルターを使って仕分けしている。他にも、開発したアプリケーションなどをGoogleドライブにアップロードし、共有設定にして無料配布したりもしている。ブログ記事の作成に図が必要なら、inkscape という無料のドローイングソフトを使用する。

それはレゴブロックのように組み合わせることで、容易に実現したい仕組みを構築することが出来る。全くプログラミングを知らない人であっても。

必要な機能は最初から提供されている

「そんなもの、わざわざ作らなくても、OOとXXを使えば実現できるじゃないか」

というような合理的な考えを持つ人もいる。

確かに今の時代、個人開発者が作った便利ツールなど探し回る必要もなく、大手ベンダーが提供する高機能で無料のアプリケーションを使いこなせば済む話だ。

例えば、僕が AAC形式の音楽ファイルをMP3形式に変換するために、何か良い変換ツールは無いか探していたところ、AppleのiTunesでMP3変換が出来るということをとあるブログ記事で知った。

「何だ、最初からあったのかよ。じゃあ、iTunesで」

僕はよく分からない海外のフリーソフトをダウンロードしようとしていたのだ。

もはや個人の開発者がいちいち変換ツールなど作る必要は無く、それを世に送り出したとしても誰も使わないだろう。それは「車輪の再発明」だ。

ただ・・・・

僕の使っているPCのデスクトップには、一つのファイルが置かれている。

それは、Pythonというプログラミング言語で書かれた自分で使うためだけに作った自作の画像変換ツールだ。ファイルをダブルクリックすれば、下図のように小さな画面が起動する。

「無駄な努力」とは何か?

「画像変換ツールなんてネットで探せばすぐに見つかるでしょ。わざわざ時間かけて何作ってるの? 頭悪いの?」

そう言う人もいるかもしれない。でも、僕は、それを作った。

簡単に説明するなら、このツールは画像のリサイズと圧縮を一括で処理するもので、これまでリサイズをやってくれるウェブサイトと、圧縮をやってくれるウェブサイトを順番に回って画像処理をしていたが、それが何とも面倒だと感じたので、このツールを作ることになった。

枠の中に640と数字が入っている。これは、幅が640pxに納まるように画像をリサイズする設定で、ブログ記事のヘッダー部分にはめ込むアイキャッチ画像は、全てこのツールでリサイズしている。これまでウェブサイトに手入力していたのだ。

確かに僕は「車輪の再発明」をした。従来、提供されていたサービスを組み合わせれば実現出来ることを。

しかし、それは「わざわざ」でもないし「時間をかけた」わけでも無い。ここが重要だ。

「従来のサービスを組み合わせれば、大抵のことは実現できる」という考えは、一見すると、労力をかけずに必要なことを実現するという合理的思考にも思えるが、それは「わざわざ時間をかけて自分で作るよりはマシだ」という考えが前提になっている。

ならば、時間がかからないとしたら、どうだろう?

わざわざ、出来合いのサービスをかき集めて組み合わせる必要があるのだろうか?

自分で理想の仕組みを実現する労力が、従来のサービスを借りて実現する労力よりも小さい場合、この合理的思考の前提は崩れる。

googleの未来

僕が使う主なプログラミング言語は Python だが、日本でも年々認知度が高まっている。Python は、実にシンプルな形で様々なことを実現してくれる。

画像の圧縮が必要にならそれ用のライブラリがあり、高度な計算処理が必要なら専門のライブラリがある。個人開発者はそれらを簡単に自分のプログラムに組み込むことが出来る。

個人が理想を実現するために、それほど「時間」はかからないのだ。

Python に限ったことではなく、今、プログラミング言語そのものが「誰もが気軽に自分のアイデアを実現するために身に着けるべき基本的スキル」になりつつあると思う。

これまではインターネットというマクロの世界で技術の組み合わせが行われていた。Googleの提供する各種ウェブサービスのように、僕たちは大企業が提供するそれらを組み合わせて、様々なニーズを処理してきた。世間は、それらをうまく組み合わせることが出来るユーザーこそが優秀だと評価した。

ただ、pythonという言語の中にも数多くのライブラリがあり、それらを「組み合わせて実現する」という思想がある。それは、ミクロレベルの思想だ。

pythonに限らず、今後、プログラミング言語がさらに進化し、一般の人でも容易に扱えるものになれば、いちいちマクロレベルで技術の組み合わせをする必要が無くなり、ミクロレベル、つまり、個人が自宅で、googleが提供するような大規模サービスを自分が使うためだけに構築できるようになる。レゴブロックを組み立てるように。

googleが人々に必要とされなくなるとしたら、その時だろう。

もしくは、市民が作るプログラムの中で呼び出されるライブラリの一つになっているかもしれない。こんなふうに。

import google
import facebook
・・・・
・・・・
facebook.addPost(google.gmail(text, "picture.jpg"))

一見すると「アプリ職人」「ソフト職人」と呼ばれる個人開発者は市場の端に追いやられ、零れ落ちそうになってはいるが、実際、プログラミング言語は日々進化しており、ネット上の情報量の増加とともに扱いやすくなっている。

いまや、機械学習ツールを個人で開発出来る時代だ。

世界中で個人が自分で必要なものを勝手に作り始めたとしたら・・・インターネットの構造が今とは全く違うものになることは間違いない。

 

この記事をシェア

Comments are closed.