高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

プログラミングのハードル

f:id:TakamiChie:20210527094719p:plain

今日はこちらから。

stand.fm

最近、割と小規模なアプリを作る機会がとても増えました。

stand.fmのBGMを貼り付けるツールとか、カバー画像を生成するとかもありますが、SBCast.用の画像コラージュツール、YouTube番組の配信支援ツールなど、開発規模はそれほどでもないけど手動でやるにはそれなりにしんどいのでツール化したというものが多い。

現在もSBCast.やそのほかSBC.関連のイベント参加人数を集計するツールを検討中。YouTubeFacebook、Blubrryなど各種配信サービス・集計サービスのAPIをつかったものとなります。

それを通して、つくづくプログラミングのハードルってつくづく上がったなあと感じたという話し。

なぜプログラミングのハードルがあがったと思ったか

特に思ったのが、特に今回使ってるWebAPIについて、公開Webサービスで使う方法はたくさん載っていても、デスクトップのツールとして使う方法がほとんどなかった ということ。

最近WebAPIとか、プログラミング言語そのものとかの使われ方はなんとなく画一化されてきているなあ という感じがしていて。

アプリと言えばWeb上に配置するもの になってきているし、Web APIといえば、そのサービス上で他サービスと連携するためにつかわれるものという感じになってきている。

スマートフォン向けのアプリを作るという事例は多くなっているけれど、パソコン上でちょっとしたツールを作ったり、簡単な集計作業を行なったりするという情報は、あまり聞かなくなったな という気がする。

そのものズバリな事例が減る=読み替えの難易度が上がる

そうなるとなにが困るかというと、小規模なツールを作るときに、情報を探しづらくなる。

コマンドラインツールでWeb APIを使ってなにかを処理する方法も、デスクトップ上で動画を処理する方法も、そのものズバリの情報を入手することが困難になる。

そうなると、既存のWebアプリ向けに書かれた情報を、読み替えて使わなければいけない

これって結構難しくて、例えばWebアプリだったらいったんそれぞれのWebサイトに飛ばすだけでよかった認証処理をPC上で行なうようにしなければいけないし*1GUIとしてアプリを作るのであればCSSで表現されているものをそれぞれの言語に読み替える必要がある。

プログラミングである以上、参考情報からなんらかの読み替えだったり、アレンジを加えることは必要になります。が、ここ最近そのアレンジの幅が大きくなってきたなあ と、感じます。

敷居は低くなったけど、ハードルは上がった

プログラミング自体の敷居はとても下がりました。

昔はVisual StudioDelphiなどの高価な開発環境を買わなければいけなかったのが、今はVisual Studio CodePythonなどの言語実行環境を揃えてくれば、無償でアプリが開発できる。

ストアに公開する などということを考えなければGithub PagesやAzureなどを使って、無償でアプリを世に出すことだって不可能じゃない。

ただし、ハードルはとてつもなく上がっているなと思いました。言語そのものの知識だけでなく、フレームワークやWeb API、HTTPの仕組みなど、ある程度のアプリを作るのに知らなければいけないことや、越えなければいけないハードルは、とても増えたなと思います。

もうちょっと最低限の知識で、使ってるサービスを繋げたり、日頃の不便を解消するツールを作ったりできればいいよなあ などと思います。

まあ、その辺の役目はIFTTTやPower Automateなどのノーコード環境がになうのかもしれません が*2

*1:もちろん認証処理だけを手動でやれば良いだけなのですが、それをする情報がないので果たしてそれでもいいのか、どこまで手動でやってどこからプログラミングでやるのかが、仕組みを理解していないと分かりにくい

*2:アレもまた既に用意されたコネクタ以上のことがやりづらいので、なんとも言いにくいなあ