Sys admins, hone your DevOps skills by learning Python

Lauren Malhoit encourages sys admins or anyone who is new to IT to consider learning a coding language or two. Zed A. Shaw's Learning Python the Hard Way is a good place to start.

DevOps is here to stay, and a lot of infrastructure engineers (myself included) should start jumping on board to avoid getting left behind. (Learn more about DevOps by reading my TechRepublic article about Gene Kim's book The Phoenix Project.)

In an effort to do just that, it was suggested that I check out Learn Python the Hard Way by Zed A. Shaw. Depending on how much you want to spend (from $0 to $30), you can have access to the material in various formats, including HTML, book, or videos.

Python is free, compatible with most guest operating systems, easy to use, and very flexible. Python seems to be a popular language in the developer and DevOps communities, especially given the most recent run at automating all the things. For instance, we can use vCO APIs within Python to create workflows that can be used in vCenter or even through vCloud Automation Center. Think of this as a way to extend the Everything-as-a-Service (XaaS) capabilities. 

Learn Python the Hard Way is actually not hard at all because Shaw has written it for the average person. He starts with the very basics of coding, such as basic math and calculator functions, how to echo back the familiar "Hello World," and variables. By the end of the 52 lessons, you'll start creating your own web game.

Each lesson usually begins with a coding exercise and an explanation, and then there are drills that you're supposed to dive into. The more you work on these drills, the better you'll become. Shaw recommends working on the drills up to two hours a day, which seems like a lot, but if you can spare 15 minutes here and a half hour there, it's doable.



Before you get into coding, Shaw tells you which tools you'll need to start depending on the operating system you're running (i.e., Windows, Mac, or Linux). With the Mac, most of it is built in, but since I'm a Windows user, I needed to download Python 2.7. (Shaw recommends going with the latest 2.x release and not using the 3.x release.) I also needed to download Notepad++, which is where you write the actual code. You need Windows PowerShell to run everything. (If you have a recent version of Windows, you most likely have PowerShell.) It's all free to download, though donations are accepted for some of the open source utilities.

Additional coding resources

If you're a woman who is looking for a really deep dive into coding, check out Hackbright Academy, which offers a 12-week fellowship in San Francisco. Another free online resource is Codeacademy, which I have used. Codeacademy manages to gamify learning to code and offers a variety of language options. 

Start your DevOps education

I highly encourage system admins and people getting started in IT to seriously consider learning a coding language or two. You might even pick languages that are quite dissimilar to get a feel for how things work and what you enjoy more. There are some interesting ideas on this on the recent Puppet Labs podcast.

What's your advice?

What programming language do you recommend sys admins and new IT pros learn? What resources do you think would be most helpful when learning a new coding language? Let us know in the discussion.

Also read on TechRepublic