kakakakakku blog

Weekly Tech Blog: Keep on Learning!

Zenn Book で「LocalStack 実践入門」を公開しました

今週月曜日(2024年8月5日)に Zenn Book で完全無料の学習コンテンツ「LocalStack 実践入門 | AWS アプリケーション開発ワークショップ」を公開しましたー🎉

AWS エミュレーターの LocalStack に実践的に入門するワークショップです❗️

zenn.dev

概要 🚀

アプリケーションを AWS 上で稼働させていて,マネージドサービスを中心に組み合わせたりすると,ローカル環境での開発がしにくく感じたり,AWS サービスに依存したアプリケーションコードの単体テストがしにくく感じることがあるはずです💡そんなときには LocalStack が便利だぞ〜👏という技術的な選択肢を紹介したく,ワークショップの開発を企画しました.

アプリケーションコードは Python (Boto3) を使っていて,単体テストは pytest を使っています.比較的簡単なコードですし,コード解説も載せているため,Python の経験がなくても大丈夫かなと思います👌

www.localstack.cloud

読者層 🎃

このワークショップは「LocalStack 未経験者」はもちろん「AWS 初学者」にもおすすめです❗️

僕自身は過去に AWS を教える仕事(テクニカルトレーナー)をしていて,現在も AWS 未経験者の多い組織では AWS 導入の支援や人材育成のサポートをしています.そういった経験の中でよく聞くのは「AWS を試しながら学習したいけど課金が怖い(無料利用枠もよくわからない)」という声です.もちろんある程度 AWS に慣れれば,料金ページや無料利用枠を理解しながら「試しながら学ぶ」というサイクルを回せますが,初学者にとっては第一歩を踏み出すこと自体にハードルの高さがあって〜という相談もよく受けます👀

LocalStack を使えば,AWS アカウントを作らずに AWS の学習ができます.macOS などのラップトップ上に「使い捨てできる自分専用の AWS 環境」を構築できるようなイメージです🌍 もちろん完璧なエミュレーターではないですし,サポートしている AWS サービスも限られていますが,それでも学習用途であれば十分かなと思います👌

docs.localstack.cloud

ワークショップ構成 🧪

ワークショップは Chapter.1 から Chapter.7 まであります.Chapter ごとにステップバイステップに進められて,Chapter を進めるごとにアーキテクチャも広がっていくように作っています.そして Chapter.8 は「応援購入」のための付録です.ワークショップに関連する小ネタを紹介しています.次のワークショップを企画するモチベーションにも繋がりますので,よろしければぜひ❗️

  • Chapter.1: ワークショップ環境をセットアップしよう
  • Chapter.2: LocalStack を使ってみよう
  • Chapter.3: Python コードで Amazon SQS と Amazon S3 を操作しよう
  • Chapter.4: AWS CloudFormation でデプロイを自動化しよう
  • Chapter.5: AWS SAM でサーバレスアプリケーションをデプロイしよう
  • Chapter.6: 使い捨ての LocalStack で単体テストを実行しよう
  • Chapter.7: Amazon API Gateway で API をデプロイしよう
  • Chapter.8: 付録(応援購入)

GitHub Codespaces 🌍

今回のワークショップでは「環境構築でつまづいて欲しくないな〜」ということを意識しました.そこでワークショップで使える統一的なオンライン環境として GitHub Codespaces を選んだところは工夫したポイントの一つで,ワークショップを進めやすくなっているはずです💪

github.co.jp

GitHub Codespaces では自動的に Python 3.12・AWS CLI・Docker・GitHub CLI を含んだ環境を起動するようにしています.

{
    "name": "aws-application-workshop-using-localstack",
    "image": "mcr.microsoft.com/devcontainers/python:1-3.12-bullseye",
    "features": {
        "ghcr.io/devcontainers/features/aws-cli:1": {},
        "ghcr.io/devcontainers/features/docker-in-docker:2": {},
        "ghcr.io/devcontainers/features/github-cli:1": {}
    }
}

ちなみに LocalStack・LocalStack AWS CLI・LocalStack AWS SAM CLI も GitHub Codespaces で自動的にセットアップできますが,LocalStack に関連するツールセットを意識することも重要かなと考えて,ワークショップでは意図的にセットアップしてもらうようにしています💡

github.com

GitHub Codespaces を使ったワークショップ(ハンズオン)の実施はとても便利で,今後もっと流行るかもしれないな〜と思っています❗️

Zenn Book 📕

今回のワークショップを企画するときに配信プラットフォームも悩みました.

ワークショップ以外に解説動画を編集して Udemy や YouTube に公開する案は,準備コストが大きすぎることとアップデートがしにくいことを懸念して避けました.また LocalStack に関する書籍を執筆する案も考えて,出版までの道のりが長すぎることと,今回書籍化するほどのボリュームではなかったこともあって避けました💨

最終的に Zenn Book を選びました.Zenn での執筆は初体験でしたが,Markdown 拡張・プレビュー機能・GitHub 連携など,執筆体験が良かったです❗️さらにコンテンツを基本無料で公開しつつ一部の Chapter のみ有料にしたり,バッジを贈れたり,執筆者のモチベーションに繋がる仕組みが整っているのも良いな〜と思いました.

まとめ 🐸

ぜひ「LocalStack 実践入門 | AWS アプリケーション開発ワークショップ」をお試しください❗️

好評であれば続編も考えたいな〜 \( 'ω')/

zenn.dev

ポスト 🦜