今回のテーマ
今回は最近注目されているノーコードの将来性についてお話ししていきたいと思います。
まずノーコードとはなにかというと、その名の通り、「NO code」なのでコードを書かない、コードがないプラットフォームのことです。基本的にWEBサービスであったりWEBアプリなどの様々なソースを作るときには全てにおいてプログラミング言語というのが今まで必要でした。WEBサービスであればPHPやRubyであったり、最近であれば人工知能でPythonがつかわれていたりしますが、そのようなものが全く関係なく、プログラミング言語を全く書かずに構築していくというものが最近注目されています。
ノーコードは身近にも
実際、みなさんの普段の生活の中にも浸透してきていて、日本で普及しているものを具体的に見ていくと、例えばBASEが挙げられます。BASEはECサイトを誰でも構築できるサイトとして普及しています。当然ですが今までECサイトをつくるとなればプログラミングをしなければいけませんでした。しかし、BASEを使えば誰でもECサイトの構築ができるようになりました。他に日本で使われているものでいうと、WixやJimdo、WordPressといったコードを書かずにブログやランディングページなどのWEBサイトを作れるツールがノーコードにあたります。さらに日本から世界に目を向けてみると、全くコードを書かずに本格的なWEBサービスが作れるようになってきています。TwitterやFacebookをはじめとしたSNSや、メルカリやUberのような消費者間サービスもコードを書かずに作れる時代がきています。今後もこれらは注目されていくと思われます。
ノーコードは本当にラク?
ではこのノーコードというものをどのように扱っていくのかという点です。
実際日本でも浸透してきているように、ECサイトやホームページのように、特化しているものが一般人でも作れるようなわかりやすいものが出てくるとは予測できます。一方で、Uberやメルカリのような決済が含まれていたり、データベースを使わなければいけないような複雑なサービスになってくるとなかなか多種多様なサービスが普及してくのは難しいのではないでしょうか。もちろん、ある程度複雑なサービスをつくるサービスも技術としてはできていて、実際にドラッグアンドドロップで組み合わせていくだけで簡単にサービスが使えるようになってきてはいます。しかし、このようにノーコードでできる複雑なサービスを駆使することは、プログラミングスキルをつけるのと難易度は結局変わらなくなってきていると私は感じています。どういうことかというと、過去に私が、プログラミングの勉強法の話で、プログラミングはブロックだと説明した通り、そのブロックが文字列なのか図形なのかの違いだけで、高度なシステムになってくるとプログラミングもノーコードも難易度的には大差なしといっても過言ではありません。ノーコードでなにかつくれるプラットフォームを用いてWEBサイトやWEBサービス作っていくといっても誰でも簡単にできるわけではなく、結局その中で「ここはこう組まなければいけない」とか、「データベースはここに入れなければいけない」というような、ブロック的思考が必要になってきます。であれば、普通にプログラミングをやったほうがいいのではないかというのが現状です。高機能なノーコードシステムというものが浸透してきてない原因はここにあるのではないでしょうか。
まとめ
今後どうなっていくかはわかりませんが、特化したものに関しては活用していきつつ、新しいサービスを作っていくときにはまだまだプログラミング技術が必要なのではないかと思います。「車輪の再発明はするな」という有名な言葉がありますが、昔はライブラリやフレームワークから自作していたものが、最近は誰でも簡単に使えるライブラリやフレームワークが出てきていたり、それ以外にもAWSやGCPのようなインフラも出てきて、どんどん開発は楽になってきています。将来、PHPやRubyのような文字列ではないブロック式言語、最近でいうスクラッチのようなものがエンジニア向けになってくれば、いずれは全く言語を書かなくてもブロックを組み合わせていくことでのプログラミングというものはできてくると思います。しかしこれがPHPやRubyのように汎用化され、全世界均一でリファレンスやドキュメントがちゃんと作られて成り立つのかというのと、そこは難しいとは思いますが、今後NoCode化の流れにはなっていくのではないでしょうか。