Skip to content

Latest commit

 

History

History
79 lines (55 loc) · 5.39 KB

README.md

File metadata and controls

79 lines (55 loc) · 5.39 KB

Phase 2: Programming fundamentals

Author: GPS

How does this phase apply to Cloud?

You'll be using code to automate tasks and deploy infrastructure. You don't need to know how to build full applications but understanding the basics of programming will give you an upper hand. There are dedicated developer roles in cloud. For those you will need to know how to build full solutions, checkout this video for more info on that role.

<iframe width="100%" height="315" src="https://www.youtube.com/embed/WMUAc7bvB7M" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

In the previous step you were introduced and wrote some Bash scripts. Bash scripting is used to automate tasks and is considered a universal language for servers, since nowadays, Bash is installed by default almost on every Linux server.

I think now it would be beneficial to learn some more programming skills.

There are several programming languages that are popular with Cloud, like Go, Rust, .NET, JavaScript, but since you are a beginner, I would go with Python. It's a very popular language and there are many quality free resources out there to learn it and it's one of the simpler languages to get started with.

Git is the most popular version control tool and one of the DevOps practices. It is used to manage and share your code. GitHub is one of the most popular Git repository hosting services. Take some time now to create a GitHub account 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.

How to break down this phase

I would suggest spending time on these three topics and this timeline:

Order Topic
1 Introduction to Programming with Python
2 Introduction to Version Control with Git and GitHub

Of course feel free to spend as much time as you'd like, people have asked for a timeline and breakdown so I've added it.

Resources

Order Title Notes
Optional An introduction to Programming A great Microsoft Learn module on the topic.
1 Python Crash Course A great Python book, also there is an Appendix in there on Git which is great!
1 FreeCodeCamp Learn Python One of the many amazing resources provided by FreeCodeCamp
1 Python for Beginners A 44 part video series introducing you to Python
2 An introduction to Git A great resource to learn Git by Microsoft Learn
2 FreeCodeCamp Git course A great resource to learn Git by FreeCodeCamp

Projects

Title Description
25 Python Projects for beginners Do as many of these as you'd like.
Create your GitHub profile readme Create a README to tell other people about yourself. Here's mine as an example. Rishab has a cool one too.
Networking Python Projects Build some Python and Networking skills

Things you should be familiar with at the end of this phase

Programming

  • Variables
  • Data types
  • Comments
  • Functions
  • OOP
  • Lists
  • Modules
  • Dictionaries
  • Loops
  • Control statements
  • Exceptions

Git

  • How to create a Git repo locally
  • How to create a GitHub repo and clone it locally.
  • How to create a git branch
  • How too add changes to a git branch
  • How to merge Git changes
  • How to document code with a README

Certifications you might want to look into

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.