You'll be using code to automate tasks and deploy infrastructure and even though you don't need to know how to build full applications, understanding the basics of programming will give you an upper hand. In the previous step you would've been introduced to bash scripting, so you should know some concepts by now.
For this step, I would go with Python. It's a very popular language and there are many quality free resources out there to learn it and is one of the simpler languages to get started with too. Also please create a GitHub account NOW if you don't already have one. It'll be your code portfolio and you should put as many projects as you'd like on there.
Order | Title | Notes |
---|---|---|
1 | Python Crash Course | Another fun book to follow, also there is an Appendix in there on Git which is great! |
1 | Automate the boring stuff with Python | I haven't fully finished this book, but it can be used to learn Python too |
1 | FreeCodeCamp Learn Python | One of the many amazi**ng resources provided by FreeCodeCamp |
2 | Git tutorial for beginners | You'll need Git, learn it! |
3 | Git branching | A great resource to learn Git branching! |
You can follow any one of the python resources, you don't have to do them all, but definitely do the Git one, Once you finish one of them, it's time to build something for your GitHub. The books will have plenty of projects. These can just be text based, don't worry about building UIs, unless you want to.
Try to build at least one of these, we will build on them in each of the following steps.
Title | Resource |
---|---|
Product Inventory Project | Create an application which manages an inventory of products. This will help you practice OOP concepts. |
Score Tracker | Create a console application that you provide a team name and it will tell you if that team played today and what the game score was. #HalaMadrid btw. |
To do app | Create a todo app. |
There are plenty of lists of projects out there you can do. Google is your best bet here.
- Variables
- Functions (defining them, function arguments)
- When and how to use arrays, lists, dictionaries.
- Basic data types and their uses (strings, booleans etc)
- Iteration (for loops, etc)
- An understanding of why testing your code is and it's importance (try to implement a simple unit test with a project you do)
- Classes and OOP concepts.
Programming certifications aren't as in demand/popular than cloud ones. As with any certification, you can use it to reinforce your knowledge, but it isn't an obligation. There are plenty of cloud engineers with zero certifications.