NoCodeの勉強会に参加して感じたこと

普段はRubyとRailsを使った開発やWEB知識に関して学びながら、いろんな勉強会にも参加しております。
私自身、NoCodeの勉強会に何度か参加し、WEB制作企業のCEOの方々にもNoCodeに関してどう捉えているか個人的に尋ねてみたりもしたのでその内容もまとめておきたいと思います。
※NoCodeに対する考えをまとめていくので、現状では記述に情報不足な箇所はあるかと思いますがご容赦ください。

## エンジニア目指しているのに、なぜNoCode勉強会に参加したのか？
理由は２つあります！！

１. 新しい？ツールとして出てきてた**NoCode**の特徴を踏まえて、**企業にとって必要なエンジニアとは？**を考えたかったから。

２. 自社の会社にとって**"今後求められる提案の形"のヒントになるんじゃないか？**と思ったためです。（自社の会社と言いつつまだ転職活動中なのですが...）

私事ですが、前職でマーケティングやマネジメントに携わってきたので、**「新しいツールとは何なのか？」「会社としてビジネスチャンスになるか？」「ツールの成熟度から企業やチームとしての変化のタイミングは？」**など新しい技術は興味があり調べたい性格というのもあります。^^;

## NoCodeとは
・プログラムを書かずにアプリやWEBサイトを作ることができる技術。
・ノーコード開発をするためのプラットフォーム。

## 【アプリケーション構築できるノーコード】
**「Bubble」**(Webサイト・Webアプリを細かく作成できる)
　　⬇︎
・フロントエンド開発はドラック&ドロップで設定できる
・インフラ基盤が強め
・共同で編集ができる
・バックエンド処理もノーコードで対応可

 
**「Adalo」**(スマホアプリを作れる)
　　⬇︎
・外部サービスと連携できる
・アクション設定が可能
・データベース作成が可能

**「Glide」**（Googleのスプレッドシートを使ってモバイル向けWebサイトが作成できる）
　　⬇︎
・データベース作成が可能
・外部サービスと連携できる
・共同で編集ができる

## 【ECサイトを構築できるノーコード】
**「BASE」**
　　⬇︎
・初心者でも無料（初期費用と月額費用はかかる）で簡単にECサイトが作成できる
・Appsで機能を追加できる

**「Shopify」**
　　⬇︎
・高品質なデザインのテンプレートが多数ある
・ストア分析ができる
・越境EC（国境を超えたECサイトの取引）ができる
・テンプレート数が多い
・在庫管理ができる

**「COLOR ME」**
　　⬇︎
・とにかく低コスト（月額費用と決済手数料も他より安く、販売手数料は無料）
・サポート体制がしっかりしている
・作成できるだけでなく、売れるための機能も豊富に備えている
・決済方法が豊富

**「STORES」**
　　⬇︎
・決済方法が豊富
・サポートマニュアルが充実している

**「Square」**
　　⬇︎
・オンライン販売だけでなく、実店舗販売にも対応している
・初期費用や維持費が無料

## 【WEBサイトを構築できるノーコード】
**「Webflow」**
　　⬇︎
・レスポンシブに対応できる
・アニメーション・CMSなどの機能を使える
・ソースコードを出力できる（個人的にこれは重要）
・HTML要素をドラッグで追加できる
（HTML・CSSの知識が無いと少し難しい？）
・利用は無料

**「ペライチ」**
　　⬇︎
・ホームページ公開までがかなり簡単
（3ステップと書かれているが、２ステップ？と感じる程）テンプレート選択→内容作成→公開
・公開サイトはスマホにも対応
・SSLに対応
（WEBブラウザとWEBサーバ間でのデータの通信を暗号化して送受信させることで、情報の改ざんや盗聴を防ぐ仕組みのことです）

## 【業務効率化・改善系ノーコード】
**「kintone」**（クラウド型業務アプリ開発プラットフォームでWEBデータベース型の業務アプリを作れる）
　　⬇︎
・案件管理・進捗管理・日報管理などに適している
・CSV入出力できる
・ドラックアンドドロップの操作

**「PowerApps」**　➡︎　（業務効率化のアプリが作れる） Microsoft
　　⬇︎
・ドラック&ドロップ操作
・外部サービスと簡単に連携できる
・クロスプラットフォーム対応
（OSやブラウザごとのシステム開発は不要）

**「Honeycode」**　➡︎　（業務改善ができる） Amazon
　　⬇︎
・ブラウザ、iOS、Androidで動作するWeb・モバイルアプリを構築できる
・価格はプランによる
・DBサービスを参照するには有料プランが必要

と...まだまだありますが、それぞれ得意とする特徴がある。
サーバーを提供するAmazon・Microsoft・Googleも参入しており、サーバーの利用者が増えてくることが見込めるツールと捉えていると考えられます。
だからこそ一概に「ノーコードなんて..」とは言えないのかなと感じます。

## NoCodeのメリット
#### 1.とにかく開発スピードが早い
シンプルなアプリを開発する場合に圧倒的な速さで完成させられる点が最大の武器
**リリース後のPMFが早い　＝　ユーザーの要望に即座に対応できるからユーザーの満足度を充実できる**

#### 2.低コストで気軽に開発できる
要件定義→外部設計→内部設計→実装→テスト→リリースの手順や、デザイナーやエンジニアを集めなくても開発ができる。
つまり、思い立ったらすぐに開発してリリースできるので、ニッチな分野やアプリでも開発コストを抑えてスタートできる点が良い所。

#### ３.直感的な操作
現段階では、既に用意されているパーツをドラッグ&ドロップしながら作成していくので、非エンジニアでも直感的に理解できる点。

kintoneを使った「特別定額給付金の申請フォーム」をエンジニアでは無い方が作成したことは有名ですよね。




## NoCodeのデメリット
#### 1.複雑なシステム開発はできない（現時点で）
・非エンジニアでも直感的に作成できできるシンプルさ故に、複雑なシステムには向かない。
複雑なシステムとは：　
「細かなUI/UXの改善」「アルゴリズムの改善」など使いやすさや、「複雑な機能を持たせる」ことはできない


#### 2.プラットフォームへの依存

・プラットフォームありきになるので、**プラットフォームが潰れたり、サービスを辞めたらアプリを改修できなくなる。**
・プラットフォームを乗り換えることができないので、**利用料金の引き上げにも弱い**。

※サービスが終了した時に**「ソースコード」や「データ」がもらえない**場合も結構あるみたいなので利用規約をよく確認した方が良い。

#### ３.決済時の手数料
これは利用するサービスにもよるようですが、決済時に数％の手数料が発生するものもある。
デメリットにはなり得ないかと思いますが、こちらも利用規約をよく確認した方が良い。

#### 4.PWFやWEBマーケは個人能力になる
**サイトやアプリを作る ＝ すぐ集客できる**とは一概には言えない部分と思います。（直接的なデメリットとは違いますが）
マーケティング能力や、ユーザーの要望をどう汲み取って反映させてユーザー満足度を維持、向上させるかという部分は個人がどこまで対応できるかにもよるのではないか？と感じます。
エンジニア、デザイナー、マーケターなど専門のノウハウから生み出されたアプリやサイトなどとは明らかに違いは出てくる。


## WEB制作企業目線でのNoCodeツールの捉え方
※2社のCEOの方に聞く機会があったのでその一部をまとめます。（現状での見解になります）

**K社：**
ノーコードツールでの開発は、エンジニアがやりたがらないので、実際に仕事の場面で使用することはほぼないです。
また市場に普及しきっておらず、そのあたりの保守性を気にされてお客様が導入に踏み切る数も現状ではまだ少ないと思います。
ただ、個人的にはマイクロサービスなどのスタートで使う分にはものすごく敷居が低くなってやりやすくなると思います。お客様からも、プロトタイプをまず作って欲しいと言われることは多いので、そういったアプローチで活用するのは良いと考えてます。


**T社：**
個人的には、サービス内容にもよりますが、中規模以上の企業（事業規模5億以上）を相手にする場合、本格的なサービスとして選択するのはまだ難しいかなという印象です。
ただ、小規模事業者や個人向けにスピードとコスト重視でまず導入するという使い方には最適だと思います。
一方で、大手の基幹システムに既に導入されているものも現にあるので、シンプルな内容でも機能として満たされるのであれば、ノーコードで十分であると思います。
お客様からの要望にはアルゴリズムを構築しないといけない案件も多く、テンプレートや既に構築されている要素から選択してくることはかなり難しいと捉えてます。

## まとめ

プラットフォームの選択によって一長一短あって、デメリットなども考慮して考えても「コーディングしないでアプリやECサイトなどが作れる」のはかなり強力なツールであるのは間違いない。
私自身も、実際にノーコードで作成されたサイトもいくつか見てみて感じたことは。
率直な感想として、かなり面白い技術だな！と感じました。
デザイン的にもシンプルですが、ログイン機能や問い合わせ機能などもあってこういったものが非エンジニアでも簡単に構築できるのは素晴らしいと思います。
ただ、難しい要件に対しコードを書いて対応できるエンジニアの方が価値があると個人的に思います。
今回のことを踏まえて、自分自身改めてスキルの大切さを感じました。
技術面では**複雑な実装ができること**、**ノーコードではできないスキルを身に付けること**、PMFを実現するためには、開発に対して**ユーザーの反応から検証と改善を行ってより価値あるサービスを構築できるようになる**ことが必要で、積極的に難しいことへチャレンジしていきたいと感じました。