NoCodeがこない2つの理由と、くる2つの理由
※ 最近、NoCode自体の開発をしたくてNoCode製品を作っている企業(Bubble)に就職しました。なので色々偏見入ってるかもしれません。
※ ここに書かれていることは全部僕の個人的な意見、そして一般的にNoCodeに対して僕が思っていることを書いているので、Bubbleとは一切関係ありません。
※ 僕自身、NoCodeに関してはほぼ素人です。なので間違ったことを言っているかもしれません。
NoCodeって?
コードを書かずに製品を開発する方法です🤯
NoCodeがこない理由
ロジックはコードで書いた方が分かりやすい
これはNoCodeが発展途上とかいう理由じゃなくて、そもそも人間は大昔からロジックを説明するのには言語を用いてきたので、ロジックは言語で表す方が直感的で分かりやすいんだと思う。絵や図を用いてロジックを説明することはあっても、絵や図だけで、言語を使わずにロジックを説明しようとするとめちゃくちゃ難しい😵💫
そしてプログラミング言語は、言語は言語でもそもそもロジックを書くために作られた言語🤖ロジックを説明するという部分においては、NoCodeがこれより優れた選択肢になるのは根本的に難しいんじゃないかと思います。
フローチャートとかもありますが、やっぱり複雑になってくるとコードの方が分かりやすく思う人も多いんじゃないでしょうか🤔
コードを書くのって楽しい
もちろん人によりますが、コードを書くのが楽しくてプログラマになった人は一定数いるんじゃないでしょうか。僕も楽しさに惹かれてプログラミングにハマりました😄もしコードを書くことが目的でプログラマをやっているなら、NoCodeを使ったら本末転倒な気もしちゃいます。
NoCodeがくる理由
GUIを言語で表すのって難しい
GUIをただの文字列(言語)で説明するのって、あまり直感的じゃなくて難しいんですよね。例えばHTMLでGUIを書いたとしても、そもそもHTMLという言語のルールを知らなきゃ何が何だか分からない😟
これって、絵を言語で説明するのが難しいのと同じ感じだと思うんです。絵は絵としてみてくれた方がいい。逆に絵を描くときも、言語で絵を成り立たせるのって大変😲絵は絵として描いた方がいい🧑🏻🎨
NoCodeだと、見ているものがそのままGUIです。例えば新しいボタンを追加したいときでも、まるで絵を描くように新しいボタンを配置するだけでいい。
ボイラープレートを書くのって面倒
ボイラープレート(どのアプリでも書かなきゃいけない定型分みたいなコード)を書くのって面倒に感じる人が多いんじゃないでしょうか。例えば新しいバックエンドを作るときに書く最低限のコードとか、それにともなうセキュリティ周りのコードとか。フロントエンドでも、各フレームワーク毎に絶対に書かなきゃいけないボイラープレートがある。
NoCodeに任せちゃった方が楽だし、ミスも起きないのでいいと思うんです👍
これからのNoCodeの予想
GUIやボイラープレートだけNoCodeで作られて、ビジネスロジックだけコードで書かれるようになると予想💭
つまり基本は全てNoCodeで開発をして、複雑なロジックが必要なところにだけコードを注入するとか。
ゲーム業界は何年も前からそうしてる
僕は趣味程度でしかゲームを作ったことがないので的外れなこと言うかも知れませんが、実はこの流れ、もうゲーム業界が何年も前に通った道と似てるような気がします。グラフィックや物理演算、どのゲームでも共通するボイラープレートなどは全部ゲームエンジンに任せて、ロジックは言語で書く✍️
それまではグラフィックも物理演算も何もかも全部手書きだったので、まず「何かを表示する」というだけでも3DCGや物理で使われる数学を勉強しないといけなかったし、勉強し終わってもそれを全て手書きしてたので時間がかかった😰
けど今はゲームエンジンが色々やってくれるので、「何かを表示する」程度なら秒でできる。その後の開発もCGや物理演算の部分は実際に動きを見ながら開発することで直感的に開発を進め、ボイラープレートの部分はゲームエンジンに任せてロジックの部分は自分で書くことで、効率的に開発を進めることができる✨
それでも、やっぱりゲームエンジンが出てきた当初は賛否両論という感じでした。それは当時のゲームエンジン自体の発展途上さに加え、作る側の心構えの問題もあったように思います。
ただ、時間が経つにつれてゲームエンジンがもたらす利点は無視できなくなってきました。ゲームエンジンを使うことで、人間はゲーム作りに集中できる。より早く、より安く、より良いゲームを作れるようになる🥳
今後、同じようなことがウェブ開発業界やモバイル開発業界で起こっても不思議じゃないと思っています。
NoCodeを応援したい理由
個人的にNoCodeを応援したい理由もあります。
プログラマって、他の業界と比べると給料や待遇がよくて結構恵まれた位置にいます。少なくともアメリカではそう。そうなると出てくるのが周りとの格差。プログラマが持っている特権。
そしてプログラマとしてその業界に入るには、現状だとたくさんのお金や時間を費やして技術力を手に入れなきゃならない。業界に入るためには、すでにお金や時間に余裕がある人が有利になる構造になっている。
個人的には、テック業界ってもっと包含的で開放的で、色々な人が参加できる業界であって欲しいという想いがあります。
NoCodeが広まることで、プログラミングを勉強するお金や時間がないけど製品を作るのには興味がある人とか、製品のアイデアはあるけどそれを作るプログラマを雇うお金がない人とかにも、もっと気軽に参加できる業界になったらいいなとも思っています🙂
Discussion