aws cloud9を軽く触ってみた結果をまとめてみる


初めに

はじめまして。raqwelと言います。
普段は新卒として入った都内のITベンチャーでSREとして働いています。
業務中で気になった技術やらなんやらを休みの日に調べたり試したりすることが増えてきたので、
備忘録がてらまとめて見たいと思い、qiitaに投稿しようと思いました。

やったこと

今回はaws cloud9を軽く触ってみたので、自身が感じたメリデメ等をまとめようかと思います。
cloud9に関しては↓を見ていただけると良いかと思います。

簡潔に述べると、awsが提供しているクラウドIDEで、
awsアカウントとブラウザとネット環境があればどこでもコーディングできるものです。
最近だと東京リージョンに来たことがちょっとしたニュースになりました。

実際にはこちらの方が行ったことをなぞるような形で手を動かしました。
https://qiita.com/icck/items/7705ef6871e261d6535e
この場を借りてお礼申し上げます。

実際に触ってみた感想

実際に触ってみた感想を以下にメリデメで書いていきます。
あくまで個人の意見なので、その点配慮して見ていただけたら幸いです。

メリット

  • ブラウザがあればどこでもコーディングできる
  • ペアプロが容易なため、手戻りの発生を抑えられる
  • セットアップの容易さ
    • cloud9で実際に開発しようとしたとき、基本的には以下のステップを行うだけで簡単に用意できます。しかもcloud9自体は無料で使えます。
setup
    1. コンソールを開いて、
    2. cloud9を選択して、
    3. Create Environmentをクリックして、
    4. Name(作業環境名)とDescription(環境の説明)を入力して、
    5. そのまま進めて「Create environment」を押して、
    6. 少し待つ。
  • 対応言語が豊富
  • localstackとかのモック化したawsサービスを用意せずともそのまま連携できる。
    • ローカル開発環境でawsのサービスを用いた機能を開発しているとデバッグするのに大変です。
    • その際によく用いられるのは、fakes3やlocalstack等のawsのサービスをモックしたようなものです。
    • もしawsが新たなサービスを発表しそれを用いるとなった時や、なにかがあって配布が中止されてしまった時に、まだlocalstackが使えなくなってしまうケースが考えられます。
    • しかし、aws cloud9はaws上のサービスなので、他のサービスと連携した際のデバッグ、テストができます。これによって実際のawsのサービスを用いて開発ができます。
デメリット
  • 普段利用しているIDEからの移行コストが高そう
    • 特に中〜大規模のプロダクトに関して移行が厳しい印象。
      • 実際に全員が使える様になるまでの学習コスト
      • 複数人が同じenvironmentで触った時の動作が重くならないか・・・
      • 開発者全員分のawsアカウントを用意し無くてはならない。ということは組織的にアカウント管理が抜けもれなく土壌が備わっているか・・・ IAMユーザの間違いでした。(@tokusyuさんありがとうございます!)
  • gitのGUIがない
    • 自分はいつもIDE付属のGUIでgit操作を行っています。
      • その方が直感的に理解、操作がしやすいためです。
    • しかし、cloud9にはGUI機能が見当たりませんでした。(もしかして見逃してるかもしれません)
    • git操作を普段からコマンドで行っている方は問題ないと思いますが、GUIを利用する人の事を考えると、どちらも用意してある環境が欲しいな〜と思ってしまいます。

まとめ

今回はawsがリリースしたクラウドIDE「aws cloud9」を触ってみました。
実際触ってみて感じたのは、中〜大規模のプロジェクトがIDEからcloud9に移行するのは結構大変そうな印象を受けました。
しかし、セットアップの容易さ、対応言語の多さ等を考えると、個人や小規模のプロジェクトの開発にはむしろ使えるのではないかと感じました。
今後、どのようにアップデートしていくかが気になります。

というわけで以上です。
初記事なので至らぬ点が多いかと思いますが、温かい目で見ていただけたら幸いです。