ノーコード(NoCode)とは?エンジニアは不要になるのか|現役エンジニアが解説
初心者向けにノーコード(NoCode)について解説しています。これはソースコードを書かずに開発を行うことを指します。ノーコードの利点や課題点、ノーコードでできること、これから学ぶべきかについて見ていきましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
ノーコード(NoCode)について、TechAcademyのメンター(現役エンジニア)が初心者向けに解説します。
今回の記事の内容は動画でもご覧いただけます。
テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。
大石: 田島メンター、今話題になっているノーコードについて教えて下さい!
田島: わかりました。
ノーコードは、プログラミングなしでホームページ制作やアプリ開発ができてしまうので、エンジニアを目指している方からすると「需要がなくなるのでは」といった不安も少なからずあると思います。
今回はそのような方のために、
を解説していきます。
大石: よろしくお願いします!
ノーコードとは何か
田島: まずはノーコードとは何かについて解説します。
ノーコードとは、ソースコードを書かずにソフトウェアを開発できるサービスのことを指します。
一般的に、ソフトウェアを開発するには、プログラミング言語を使ってソースコードを記述する必要があります。
しかしノーコードはソースコードを書かなくてもソフトウェアを開発することができます。
そのため、エンジニア以外でもソフトウェアを開発できると最近注目されています。
大石: ソースコードが不要だからノーコードなんですね。
ノーコードはなぜいま注目されているのか
大石: ノーコードはなぜ今、注目されているのでしょうか?
田島: ノーコードは、プログラミングを行えない非エンジニアでもソフトウェアを開発できるため、注目を集めています。
現在では多くのサービスのオンライン化が進んでいます。
例えばインターネットで買い物をする場合、欲しい商品の情報を調べ、最適な価格とアフターサービスを提供する企業から商品を購入しますよね。
このようなサービスのオンライン化は、Webサイトやアプリを開発することで実現されています。
逆に、オンライン化ができていない手続きや作業も、身の回りに多く存在しています。
例えば会社での勤怠管理や経費精算には、多くの企業で未だに紙とハンコが使われていて、社員ひとりひとりが領収書を集めて一覧表を作成、上司にハンコをもらって総務部で精算、というなかなかの労力をかけています。
これまでは、このような課題をソフトウェアの開発で解決するためには、エンジニアに依頼しなければならず、費用や時間の面でハードルが高いものでした。
そこで注目されたのがノーコードです。
ノーコード技術を使うと、非エンジニアでもソフトウェアを開発することができます。
つまり、身の回りの課題について、エンジニアでなくてもソフトウェアを開発して解決することができるため、ノーコードはいま注目されています。
大石: エンジニアでなくても、便利な機能を持ったツールを開発できることが注目の理由なんですね。
ノーコードは何がすごいのか
大石: ノーコードのすごいところを教えて下さい!
田島: わかりました。
ノーコードのすごい点を2つピックアップして紹介します。
ソースコードを書かずにソフトウェアの開発が行える
1つめは、注目されている理由の箇所でもお話ししましたが、ソースコードを書かずにソフトウェアの開発が行えるという点です。
一般的にソフトウェアの開発を行うにはソースコードの記述が必要です。
ソースコードを書くためには、プログラミング言語やコンピュータの専門知識など、いくつかのことを学ぶ必要があります。
エンジニアとは、それらのスキルを身につけた、いわば職人集団です。
それに対してノーコードはあらかじめ用意された多くの部品を組み合わせて、ソフトウェアを開発することができます。
またほとんどのノーコードのサービスでは、ソフトウェアを実行する機能も用意されています。
よってソフトウェアの開発からサービスとしての提供まで、一連の流れをエンジニアでなくても行える、というすごさがあります。
ノーコードが多く活用されている現場としてスタートアップ企業があります。
スタートアップでは自社のサービスを迅速に立ち上げる必要があります。
立ち上げたあとも、数日、ときには数時間の間隔でサービスをアップデートしていきます。
このような環境下では、自社のサービスに精通したエンジニアを多く必要としますが、そのようなエンジニアを集めることはスキルや資金的な面から容易ではありません。
そこでノーコードを使って経営者や非エンジニアがサービスの立ち上げやアップデートを行う、ということも行われています。
様々なオンラインサービスと連携できる
2つめは、様々なオンラインサービスと連携することができるという点です。
実はノーコードが流行する前から、オンラインサービス同士を連携する仕組みは多く開発されてきました。
しかしそれらはソースコード、すなわちプログラムからの利用を前提としていました。
業界用語ではAPIと呼ばれています。
多くのノーコードではこれらのAPIを呼び出す仕組みが用意されています。
またノーコード用のオンラインサービスを連携する仕組みも、様々な企業から提供されるようになってきました。
最近は、多くの企業でテレワークを取り入れていますが、そこで問題となっているのが契約書です。
これまでは商品の受発注などはオンライン化されていても、契約書は押印する必要があり、紙ベースでのやりとりが一般的でした。
そこで一部の企業では、企業の業務システムと、外部の電子印鑑のオンラインサービスをノーコードで連携させることで、紙を使わない契約書のやりとりを実現してきています。
このようなオンラインサービスとの連携は、ますます活発になることでしょう。
以上が、ノーコードのすごいところです。
大石: ノーコードの活用が増えると、あらゆることがオンライン化されて生産性があがりそうですね。
ノーコードの課題
田島: 逆に、課題もまだまだあります。
2つピックアップして説明します。
ノーコードでは定型的なことしか行なえない
1つめ、ノーコードでは定型的なことしか行なえません。
ノーコードはあらかじめ用意された多くの部品を組み合わせて、ソフトウェアを開発します。
そのため、用意された部品以外のことは行なえません。決められた部品と組み合わせ以外は対応できないということになります。
もちろんノーコードにも、新たな部品を作成する拡張機能はありますが、
ほとんどのノーコードでは、新たな部品を作成するにはプログラミング、すなわちソースコードの記述が必要となり、課題と言えるでしょう。
ノーコードを提供しているサービスに依存している
2つ目は、ノーコードを提供しているサービスに依存している点です。
ノーコードはソフトウェアの開発から実行までを、ノーコードを提供しているサービスに依存しています。
たとえばノーコードの機能があるKintone(キントーン)というサービスは、Kintoneのソフトウェアを開発するツールで開発作業を行い、Kintoneのサービスの1つとしてソフトウェアを実行します。
仮にKintoneのサービスが終了した場合、開発したソフトウェアも全て無駄になりかねません。
実はノーコードの流行は、今回が初めてではありません。
10年ぐらい前にも統合CASE(シーエーエスイー)ツールやRAD(ラッド)ツールなどの名前で、プログラミングを行わずにソフトウェア開発を行う機運が高まったことがありました。
しかし、それらのツールは、ほとんど全てが廃れ、サービス提供も終了しています。
もちろん、現代のノーコードは柔軟性も高く、昔より格段に使いやすくなっています。
しかし、ノーコードを提供しているサービスに依存しているということは、サービス終了や大幅な値上げなどのリスクがあるということも忘れないようにしましょう。
ノーコードを提供しているサービスが使えなくなった場合の代替策を用意しておくなど、リスク対策を行っておくのがベストです。
大石: 柔軟性の不足と、リスクがあるという点が課題なんですね。
ノーコードでエンジニアは不要になるのか
大石: ここまでノーコードについて理解を深めてきましたが、結局、ノーコードでエンジニアは不要になるのでしょうか?
田島: ノーコードが流行したとしてもエンジニアは必要です。
とてもシンプルな根拠としては、ノーコードサービス自体の開発はエンジニアが行っているということです。
エンジニアがソースコードを書いて作ったサービスの中で、利用者がノーコードで開発を行っているのです。
また、前に述べたように、ノーコードでは一般的な企業で行うような、定型的な業務しか行なえません。
企業独自のサービス、他社との差別化の軸となっているような業務はノーコードでの実装に向いていません。
また、無理にノーコードで実現するよりも、ソースコードを書いた方がシンプルで高速ということもあります。
楽天やAmazonなどのオンラインショッピングのアプリを使ったことがある人は多いでしょう。
どのアプリも商品の検索方法や電子マネーへの対応など、ユーザー体験を向上させる独自のサービスが実装されています。
それらは企業にとって他社との差別化であり、収益の源泉でもあります。
ノーコードは、あらかじめ決められた部品の組み合わせでしか機能を実現できないため、独自のサービスの実装は難しいものがあります。
また、本格的なソフトウェアの開発にノーコードは合わないということもあります。
ソフトウェアの開発は、顧客の要件を分析し、機能を設計した上でプログラミングやテストを行います。
そこに、ノーコードを使うというのは、できることが限られることになり、大きな制約となります。
例えば、顧客の要件を実現したくてもノーコードが理由で実現できないという問題が起きかねません。
ソフトウェア開発の主流はプログラミングでありエンジニアのスキルは今後も必要です。
ノーコードは一部の定型的な業務の開発を行うツールと考えると良いでしょう。
大石: エンジニアはなくならない、安心しました!
ノーコードを学ぶべきか
大石: 今、目的を持ってプログラミングを学習している人は、ノーコードを学ぶべきでしょうか?
田島: ノーコードは学ばなくても大丈夫です。
興味があるのであれば触ってみたり、学んでみたりしてもいいと思います。
エンジニアへの転職と、副業やフリーランスでの案件獲得の2つの側面から解説します。
エンジニア転職を目指してプログラミングを学習している人がノーコードを学ぶべきか
田島: まずエンジニア転職を目指している人ですが、ノーコードは、IT関係の知識の1つとしてニュースなどに目を通しておく程度で良いでしょう。
システム開発の現場では、ノーコードはほとんど使われていません。
ノーコードのサービス自体を開発するという機会はあるかもしれませんが、エンジニアがノーコードを使って開発を行うことはほぼ無いといっても良いでしょう。
それはノーコードがあくまで非エンジニアをターゲットとしたサービスだからです。
そのため、操作が分かりやすく工夫されている反面、できることは定型的なものに限られています。
あくまで一般の方が利用するツールという位置づけだと理解しましょう。
未経験からエンジニアを目指すなら、ノーコードよりも学ぶべきことは多くあります。
まずはプログラミング言語を何か1つ選び、プログラムの書き方を覚えましょう。
他にもインターネットやネットワークの仕組み、ソースコードを記述するエディタと呼ばれるソフトウェアの使い方なども覚えておくと良いでしょう。
IT業界に関する基礎知識を広く浅く身につけておくことも重要です。
情報処理技術者試験のITパスポートの取得に向けた学習を行うとIT業界の基礎知識を身につけることができます。
エンジニアになるなら、ノーコードよりも学ぶべきことは多くあります。まずはプログラミングなどの基礎知識をしっかりと身につけるようにしましょう。
エンジニアとして副業やフリーランスでの案件獲得を目指してプログラミングを学習している人がノーコードを学ぶべきか
田島: 次に副業やフリーランスの側面からお話しします。
現状、ノーコードの案件はほとんどありません。よってノーコードを覚えても案件を獲得できるチャンスはあまり多くない、ということになります。
副業やフリーランスでの案件獲得を目指すなら、実際に求人情報サイトや案件情報サイトなどで案件情報を調べてみると良いでしょう。
案件が多いのはWebアプリケーションを構築するフロントエンドエンジニアやバックエンドエンジニアなどです。
プログラミング言語としては、JavaScriptやJava、PHP、Ruby on Railsなどの案件が多くあります。
また注目なのは、AWS(Amazon Web Services)やGCP(Google Cloud Platform)などのクラウドサービスです。
これらは案件数が多い割にスキルのあるエンジニアが少なく、エンジニアの需要が高止まりしている状態です。
ノーコードを学ぶより、プログラミングとクラウドサービスの使い方を学びましょう。
大石: エンジニアとして活躍するなら、プログラミングのスキルやエンジニアとしての知識を付けることの方が大事なんですね。
まとめ
田島: まとめです。
今回は、ノーコードについて解説しました。
簡単に復習しましょう。
- ノーコードとは、ソースコードを書かずにソフトウェアを開発できるサービスのことを指します。
- 注目を集めている理由は、プログラミングを行えない非エンジニアでもソフトウェアを開発できるためです。
- ノーコードのすごい点は2つあり、サービス開発にコードが不要な点と、様々なオンラインサービスと連携することができる点です。
- 一方で課題は、柔軟性の不足と、依存するとリスクが高まる点です。
- ノーコードが流行してもエンジニアは不要になりません。
- エンジニアを目指す人は、目的が何であれノーコードではなく、エンジニアとしてのスキルを磨きましょう。
以上です。
繰り返しになりますが、ノーコードは現在注目のツールですが、それによってエンジニアが不要になることはありません。
これはブログを記述するツールであるWordPressを考えてみると分かるでしょう。
WordPressが登場する前は、HTMLやCSSを使ってブログを書くことが一般的でした。
それがWordPressの登場で普通の文章を書くようにブログを書けるようになり、爆発的に普及しています。
しかし、ブログをWordPressで書けるようになったからといって、Web関係のエンジニアの需要は無くなっていませんよね。
ノーコードについても同じことです。
安心してエンジニアを目指してプログラミングなどの学習に取り組みようにしましょう。
大石: わかりました!まずはプログラミング言語の習得を目指します!
今回もわかりやすい解説ありがとうございました!
田島: 最後にお知らせです。
このチャンネルはプログラミングやWebデザインなど、テクノロジーの力で実現したい夢がある人を応援するチャンネルです。
- プログラミングやWebデザインに興味のある人
- エンジニアへ転職をしたい人
- アプリを作りたい人
など、自分の目標へ向かって頑張っている人はチャンネル登録をして、目標へ少しでも近づいてもらえたらと思います。
大石: これで新しい動画が公開されてすぐ見られますね!高評価とコメントもしておきますね。次の動画でもよろしくお願いします!
TechAcademyでは初心者でもエンジニアになれるオンラインブートキャンプを開催しています。
未経験でもこれからプログラミングを習得したいと思っている方は特にご覧ください!
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。