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
Lauren Malhoit has been in the IT field for over 10 years and has acquired several data center certifications. She's currently a Technology Evangelist for Cisco focusing on ACI and Nexus 9000. She has been writing for a few years for TechRepublic, Tech Pro Research, and VirtualizationAdmin.com. As a Cisco Champion, EMC Elect, VMware vExpert, and PernixPro, Lauren stays involved in the IT community. Lauren has been a delegate for Tech Field Day and has also authored a book called VMware vCenter Operations Manager Essentials.