ロジカル・アーツ井川です。
サーバーレスの勉強のため、先日 Serverless Meetup に参加してきました。
Serverless Meetupとは?
Serverless Meetup は全世界の110箇所以上で運営されているServerless Architectureやその周辺技術のITコミュニティであり、その数は今も増え続けています。日本では「東京」「大阪」「神戸」「札幌」「福岡」で定期的に開催されています。
私も以前から存在は知っていたのですが、難しそうだと緊張しながら初参加してきました。 ちなみに私が参加した神戸では今回が初めての開催だったようです。人数も15名ほどで、アットホームな雰囲気で参加しやすかったです。
- Serverless Meetupとは?
- LT 1: コミュニティで創るサーバーレスの今とこれから
- LT 2: Clasp + TypeScriptでGAS
- LT 3: マルチクラウドでいろいろ「がおって」みた
- LT 4: NestJS + Serverlessでプロジェクトをメンテナブルにした話
- まとめ
- 参考サイト
LT 1: コミュニティで創るサーバーレスの今とこれから
Speaker: 堀家 隆宏さん / Serverless Operations of CEO
紹介
堀家さんはサーバーレスで開発を行いやすいように様々なオープンソースを作成されている有名な方のようです。最近では Jeffy - AWS Python Lambbda framework をリリースされたようです。私はまだ使ったことがないのですが、使ってみたいと思います。
Serverless の歴史
- 2014年 Serverless 元年、AWS Lambda のリリース
- 2015年 API Gateway のリリース
2016年 ServerlessConf Tokyo
2017-2019年
- サーバーレスを支えるフルマネージドサービスがたくさん出てきた(例えばStep Functionsなど)
- 現在
- サーバーレスによって出来ないことはほとんどなくなった
課題
サーバーレスの成長はコミュニティと共にある
- オープンソースコミュニティ Lambda API / middy / Jeffy / Jets(ruby) / serverless framework
- アーキテクティング、ロギング、モニタリング、CI/CDなども全てサーバーレス化が可能
- Start upが多数
- lumigo / PURESEC(security) / epsagon / THUNORA(monitoring) / Nuweba
- 最近は多くの企業が内製で 1choice としてサーバーレスを採用しつつある
- もはやサーバーレスを前提にシステムを考えることは当たり前になっている
今後どうやって向き合っていくのか
- アプリケーション開発に必要なものを、出来るだけ早くプロダクトを市場に投入する。きっと1回ではうまくいかないので何度も失敗することが大切。誰もが最小コストで最大の利益がでることを目指す
- 出来るだけサーバーレスにすることで開発者が本当にやりたいシナリオに集中することができる!
- Cloud 2.0: Code is no longer king - サーバーレスを使用することによって、多くの責任をクラウドベンダーに任せられるようになった。しかし究極のアプリケーションは「コードレスでも構築できること」
- 拡張性・可用性の高いところが将来的なキングになる
- No Code, No Ops が目指す未来
Q&A
宣伝
- 従来の受託開発は、モノを良くしようとしても、予算などに制限が聞かず、良いものが生まれない
- そこで共創型の受託開発を進めたい
- どんなシステムが良いのかチーム全体で最初に話をするべき
- サーバーレスという手段を使用することは、エンジニアがよりビジネスサイドによっていく必要がある
- 上記の考え方に共感できる方は案件お待ちしてますとのことでした。笑
LT 2: Clasp + TypeScriptでGAS
Speaker: 岡本 秀高さん / 株式会社デジタルキューブ
紹介
岡本さんは関西の勉強会などを多数主催されているオーガナイザーだそう。これからいろいろ参加したいので、機会があれば話してみたいですね。
目的
- Google カレンダーの変更をチャットなどに反映したい
GASとは?
Googleが提供するプログラミング言語「Google Apps Script」のこと。
活用方法
- 環境変数を設定すれば local 環境のVSCodeなどで補完が出る
- Require / import は使わない
- 使い所: イベントブリッジ、AWS EventBridge / Google Apps は GAS / TypeScript での実装
LT 3: マルチクラウドでいろいろ「がおって」みた
Speaker: 高馬宏典 (通称:がおまる) さん / 株式会社アイエンター システム開発本部 R&D
紹介
高馬さんは、Alexa Champion かつ LINE API Expert と、スマートスピーカー業界で有名な方のようです。スマートスピーカーエバンジェリストとのこと。またクラウドなどを連携することを「がおってる!」と言うそうです。笑
Power Automate とは?
Logic Apps とおなじ、ノンコーディングで色々できるツールのこと。OCR Bot Computer Vision を利用してLINE とつなげることができるよう。
こんなブログ記事を見つけました。
今回「がおった」仕組み
- Azure TextTranslator を利用してBot に投げた画像から指定したタグ名を返す
- Google Teachable Machine - Web カメラを使ってどんどん写真として登録してくれ、学習があっという間に終わる
- Line Simple Beacon はLine bot と紐づけてLine Beaconを有効化するだけ
- Line Pay + UiPath Orhestrator / RPA の管理機能を REST API として公開 / LINE Pay
- 決済コードはとても簡単、ただし実現までのステップがなかなか大変。(アクセストークンの取得など)
- LIFF (LINE Front-end Framework) ウェブアプリのプラットフォーム というツールを用いた
LT 4: NestJS + Serverlessでプロジェクトをメンテナブルにした話
Speaker: 榊原 昌彦さん / 一般社団法人リレーションデザイン研究所 代表理事 一般社団法人エリア・イノベーション・アライアンス CTO
紹介
榊原さんは Ionic framework の本を書かれているそうです。Ionic framework とは何か知らなかったので調べてみたのですが、Web/iOS/Android アプリが全て同時に開発できるプラットフォームのようです。すごいですね。面白そうなので触ってみたいと思います。 また、IONIC で開発されたサービス 女友達を作るためのソーシャルサービス tipsys も運営されており、ユーザーは7万人ほどいるそうです。 www.tipsys.me
LT
- サーバ管理は危険がたくさん
- アプリ側からみれば理想は GraphQL 複雑なマイグレーション、だから第一選択はサーバーレス
- TypeScript の API は型を共有できる、express はフレームワークとしてはちょっと薄いため NextJS で管理したい
- サーバーレスを入れたいならCI環境ないと難しい
宣伝
Ionic Framework を使うと Web でモバイルアプリを作ることができ、収益化することも可能なためおすすめ
まとめ
普段あまりお会いできない凄いエンジニアの方にお会い出来て、刺激をたくさん頂けた Meetup でした。知らない事が沢山あったため、宿題が沢山できてしまいましたが。。このMeetupにはAWSの中の方も参加されており、注目度の高さを感じました。今回得た情報を基に使ったことのないツールなどをいろいろ試してみようと思います。
参考サイト
チュートリアルでこんなアプリがつくれるように!|WebでモバイルアプリつくるIonic本を出版します|榊原昌彦|note