Learning to use the Cloud
A common question from a Developer or a student is ‘how do I learn AWS or GCP’. For those of you who don’t know AWS – stands for Amazon Web Services and GCP stands for Google Cloud Platform. At the current moment in time I’ve no opinions on Azure from Microsoft.
Firstly, you can’t learn all of the tools from either Amazon or Google. Even keeping up with product launches from either is very difficult. There’s tons of tools SQS!!SNS!!EC2!!ECS!!EKS!!Fargate!!DynamoDB!! so it’s impossible to know them all, and even figure out what each is good for.
Secondly, there’s no shortcut to actually building something with Amazon or Google tools. It’s this way that one learns how these systems really work. For example, when I was building a tweetbot I learned a ton about how IAMs work in Amazon Web Services.
Thirdly if cost is an issue for you, both providers give you free tiers and free credits. So you can get started, use the tools and pay nothing. In fact my tweetbot is built on the free trial of AWS Lambdas.
All I can do is to provide a list of interesting links. I’ll try to keep this to free content.
Amazon Web Services
- AWS Free Training – AWS provides free online training
- AWS in plain English – Exactly what it sounds like.
- How to use AWS Lambda to build a Tweetbot
- A Cloud Guru — Not free but there is a free trial
- Awesome AWS – an exhaustive list of AWS tools and libraries.
- Tutorial on building an analytics pipeline
- Tutorial on building a serverless data pipeline with Kinesis and AWS Lambdas
- DynamoDB the definite guide – DynamoDB is a NoSQL database from Amazon, it’s super useful for some applications such as storing the results of a recommendation engine. This guide is super awesome.
- Ideas about how to use AWS – Julia Evans has an opinionated blog post on using AWS, through the lens of Skyliner.
- Working with AWS – Helpful article by Vicki Boykis on working with AWS. Get ready to love JSON!!!
Google Cloud
- Learn Kubernetes the Hard Way — Advanced
- Google cloud tutorial from Stanford
- Tons of free content here from Google
- How to train models with Google ML Engine
Cloud Agnostic
- Terraform the definite guide – Terraform is a super powerful configuration management tool. It allows you to spin up servers without ssh’ing into a server. As a Data Scientist you might use Terraform to spin up a PySpark cluster.
- Another resource that looks interesting is Cloud Academy I think they have some free content too.
This is an non-exhaustive list, but that should give you an idea of what
Conclusion
Don’t be too overwhelmed by all of the cloud services out there, pick whatever is suitable for your core need. You’ll learn the other ones when you need to. As Software Engineers we have to keep learning all of the time, so don’t be scared about that.