DEV Community

Cover image for Why learn Python as a DevOps Engineer? πŸ€”
TechWorld with Nana
TechWorld with Nana

Posted on

Why learn Python as a DevOps Engineer? πŸ€”

I saw a lot of messages and questions about why a DevOps Engineer needs to know Python. It seems there are only vague answers to that on the internet so with the below video I want to give you clear answers to the following questions:

  1. Why is Python so popular in general?
  2. Why is Python so demanded in DevOps?
  3. What is Python used for in DevOps? Giving you specific use cases
  4. How much Programming and Python knowledge you need as a DevOps Engineer?
  5. How to get started with Python?

Watch the full video here πŸ€“


Like, share and follow me 😍 for more content:

Top comments (10)

Collapse
 
andreidascalu profile image
Andrei Dascalu

That makes sense though for the same purposes I largely prefer Go, with the added bonus that it's the language of Docker and Kubernetes and working with it also enables extending Kubernetes for example.

Collapse
 
techworld_with_nana profile image
TechWorld with Nana

Hi Andrei, that's a great point. I see that some prefer Go. But when you consider what is demanded on the job market for DevOps role, it's by far Python.

Collapse
 
andreidascalu profile image
Andrei Dascalu

When you put it like that, I sense that what you mean by DevOps is actually Ops. DevOps is not a role but rather a practice where Ops knowledge is spread around a development team so that they're not dependent on external resource and can own their entire process.
What's demanded in general for Ops in the context of automation, is generally Python, for sure, but there's also the context of the role. (Dev)Ops is pretty broad.

Do you work in a Kubernetes/containerised/Cloud-Native environment (or do you want to)? Go is way more popular in that subset. It involves Kubernetes extensions, Terraform plugins and related tooling. Virtually all need Go.

If you need to maintain existing Ops scripts/tools and/or you work in an Ansible-dominant environment, certainly Python gets the prize.

But if you don't need to work with existing tooling and aim for an environment where you can choose, an environment that's cloud-native focused or one that performs a transition, might as well go with the core language.

Collapse
 
franciscomateusvg profile image
FranciscoMateusVG

You are the best! You helped me a lot with my understanding now a days of kubernetes and your videos are really well made and helpfull.
Just leaving a comment here to show my apreciation of your work and give my total recommendation!

Collapse
 
techworld_with_nana profile image
TechWorld with Nana

Thank you for your appreciation! 😊 Really happy to hear that! πŸ™

Collapse
 
darkwiiplayer profile image
π’ŽWii πŸ³οΈβ€βš§οΈ

Regarding bash not being platform independent: This is kinda true, but not complerely: you can perfectly run bash on windows; the problem is actually not the language, but that bash relies on other programs for most tasks that actually do something, and that's what makes it a bit more difficult to write a bash script that works exactly the same on windows and on linux. As for how powerful both languages are, consider that bash is a DSL built precisely for manipulating the filesystem and running other programs, so it's definitely more powerful that Python in that regard.

Collapse
 
mccurcio profile image
Matt Curcio

Hi Nana,
Great video as usual. Two questions;

  1. I have been learning R for quite some time and like it a lot but wonder if I should put it down and learn Python. What say you?

  2. I have thought about making some educational material. I have looked into Podia/Teachable. How do you feel about giving your info away on Youtube? What would make you consider charging for your online material?
    Best ;)

Collapse
 
techworld_with_nana profile image
TechWorld with Nana

Thank you Matt!

  1. R is more for data science, Python is more general purpose. But equally powerful in the same field. So, I would go with Python.
  2. Youtube is great for building a personal brand, so that people know you. So you get a lot of opportunities. I do paid online courses for more advanced topics or more complete tutorials.
Collapse
 
vajracool profile image
VajraCool

That's an excellent video. Can you share your course link for boot camp of devops?

Collapse
 
techworld_with_nana profile image
TechWorld with Nana

Thanks a lot! :) Sure: techworld-with-nana.com/devops-boo...