In the initial episode of 52 Weeks of Cloud, I start off on covering AWS. In this episode I walk through the general thought process for an upcoming book on AWS and C# I am writing for O'Reilly. It is tentatively due to launch at Re:Invent 2022.
Outline
**Key Book Facts:**
* (8 chapters: 30 pages/chapter & 240-250 total length)
* Each chapter has one more more independent code examples in Github
* Chapter 1: Getting started with .NET on AWS
* What is Cloud Computing
* Types of Cloud Computing:
* IaaS
* PaaS, FaaS and Serverless
* SaaS
* MaaS
* Key Cloud Computing Concepts
* Elastic Infrastructure
* Overview of Core Services
* High-level overview of AWS
* History of AWS
* Global Infrastructure
* Using AWS
* Setting up an account
* Using AWS Console
* Setting up and Using IAM
* Setting up and Developing AWS C# SDK with:
* Quickstart of cross-platform C# app
* AWS Cloudshell
* AWS Cloud9
* Visual Studio
* Visual Studio Code and Visual Studio Codespaces on Github
* Chapter 2: AWS Core Services
* AWS Storage
* Overview of AWS Storage
* Developing with S3 Storage
* Developing with EBS Storage
* Using EFS Storage
* Using EC2 Compute
* Overview of EC2
* Using EC2
* Using EC2 Instance Types
* Using EC2 Purchase Options
* Security Best Practices for AWS
* Encryption at REST and Transit
* PLP (Principle of Least Privilege
* Developing NoSQL Solutions with DynamoDB
* What is DynamoDB
* Key DynamoDB Concepts
* Build a Sample C# DynamoDB Console App
* Chapter 3: Migrating a legacy .NET application to AWS
* Choosing a migration path
* Rehosting
* Replatforming
* Repurchasing
* Refactoring
* Retire
* Retain
* Rehosting .NET Framework
* App2Container
* Rehosting .NET Core / 5
* .NET Core Elastic Beanstalk
* Replatforming: Migrating .NET Framework
* Considerations for moving to .NET 5
* Microsoft .NET Upgrade Assistant
* AWS Porting Assistant for .NET
* Migrating Build and Deploy to AWS
* Teamcity to AWS Code Build
* Selecting Deploy Compute Target Environment
* Chapter 4: Modernizing .NET applications to Serverless
* What is “Serverless” Computing?
* Choosing the correct Serverless components for .NET on AWS
* Developing with AWS Lambda and C#
* Developing with AWS Step Functions
* Developing with services with SQS and SNS
* Developing Event Driven via AWS Triggers
* Developing Serverless .NET Microservices on AWS
* What is a Microservice according to AWS?
* Overview of AWS Microservice options
* Develop RESTful API with AWS App Runner
* Developing RESTful API with AWS Lambda, API Gateway and SAM
* Chapter 5: Containerization of .NET
* Developing with Containers on AWS
* Introduction to Containers
* Comparing Containers to Hardware Virtualization
* Advantages of Containers
* Building Microservices with Containers
* Introduction to Kubernetes
* What is Kubernetes?
* Understanding Kubernetes on AWS
* Developing with AWS Container Compatible Services
* Amazon ECR
* Amazon ECS and Fargate
* Amazon EKS
* AWS App Runner
* AWS Lambda
* Chapter 6: DevOps
* Getting started with DevOps on AWS?
* What is DevOps?
* What are AWS DevOps best practices
* Developing with CI/CD
* AWS Code Build
* AWS Code Pipeline
* Integrating 3rd party build servers
* Jenkins
* Teamcity
* Github Actions
* Developing with IAC
* What is IAC?
* Developing with Amazon CDK for IAC
* What is CDK?
* Working with CDK in C#
* Developing with Terraform for IAC
* Chapter 7: Monitoring, Instrumentation and Auditing and Testing for .NET
* Using AWS Cloudwatch
* Alarms, Logs, Metrics
* Application monitoring
* ServiceLens
* Traces, Resource Health and Synthetic Canaries
* Enabling SDK Metrics and Additional Tools
* Using AWS Cloudtrail for Security Auditing
* Continuous Delivery Key Concepts for .NET on SDK
* Chapter 8: Developing with AWS C# SDK
* Using AWS Toolkit for Visual Studio in Depth
* Configuring Visual Studio for AWS Toolkit
* Special Features of Visual Studio for AWS Toolkit
* Key SDK Features
* Async APIs
* Retries and Timeouts
* Paginators
* Working with High-level AWS Services
* Using AWS Rekognition
* Using AWS Comprehend
* Using AWS Sagemaker
If you enjoyed this video, here are additional resources to look at:
Coursera + Duke Specialization: Building Cloud Computing Solutions at Scale Specialization: https://www.coursera.org/specializations/building-cloud-computing-solutions-at-scale
Python, Bash, and SQL Essentials for Data Engineering Specialization: https://www.coursera.org/specializations/python-bash-sql-data-engineering-duke
O'Reilly Book: Practical MLOps: https://www.amazon.com/Practical-MLOps-Operationalizing-Machine-Learning/dp/1098103017
O'Reilly Book: Python for DevOps: https://www.amazon.com/gp/product/B082P97LDW/
Pragmatic AI: An Introduction to Cloud-based Machine Learning: https://www.amazon.com/gp/product/B07FB8F8QP/
Pragmatic AI Labs Book: Python Command-Line Tools: https://www.amazon.com/gp/product/B0855FSFYZ
Pragmatic AI Labs Book: Cloud Computing for Data Analysis: https://www.amazon.com/gp/product/B0992BN7W8
Pragmatic AI Book: Minimal Python: https://www.amazon.com/gp/product/B0855NSRR7
Pragmatic AI Book: Testing in Python: https://www.amazon.com/gp/product/B0855NSRR7
Subscribe to Pragmatic AI Labs YouTube Channel: https://www.youtube.com/channel/UCNDfiL0D1LUeKWAkRE1xO5Q
View content on noahgift.com: https://noahgift.com/
View content on Pragmatic AI Labs Website: https://paiml.com/