Full Stack Journey 009: Jake Robinson
The Everything Feed - All Packet Pushers Pods - A podcast by Packet Pushers

Categories:
This episode is a very special episode of the Full Stack Journey podcast, recorded live at the Dallas-Ft. Worth VMUG UserCon on Thursday, September 29, 2016. This special episode continues our series of looking at individual technologies that are necessary steps along the “full-stack journey.” Joining Scott on this episode is Jake Robinson (@jakerobinson on Twitter as well as on GitHub), an automation specialist at VMware, Inc. Naturally, the conversation centers on automation, why automation is important, and getting started with automation. Enough introductions, let’s jump right in! Show Notes * Jake is a development manager for Project Zombie, an orchestration framework that drives a lot of the automation behind VMware’s vCloud Air service. * Having automation is important, but scale of one’s learning ability is also important. * The rise of the software-defined data center has also given rise to a new archetype, the “data center developer,” who leverages automation tools, APIs, scripting languages, etc., to programmatically define and orchestrate resources within a software-defined data center. * Automation is driven by business needs—to move more quickly, to stay ahead of the competition. The business needs demand that we (IT professionals) are able to deliver software and/or infrastructure more quickly and more consistently. * Jake finds that learning happens best when centered around a “problem,” a key thing you’re trying to solve. This is especially true for automation and/or learning programming/scripting languages. * PowerCLI is an outstanding interface to vSphere, and offers a really easy learning curve for folks getting started in automation. * Running reports–like listing all the VMs in your environment, or something similar—is a useful way to get started with PowerCLI. * So how does one help build “programmatic thinking” skills? * CodeAcademy is a good tool you can use to interactively play with various languages, and allows you to build your “programmatic thinking” skills. * Scratch is another tool, oriented a bit more towards children, that can be used to help build “programmatic thinking” skills. The board game Robot Turtles is another tool (again oriented toward children). * Using these kid-centric tools offers a secondary purpose as well: it helps encourage your kids to be involved in developing these sorts of skills in a way that also helps promote work-life balance. * It’s OK to admit you don’t know something, and ask the “dumb question.” You just have to be brave enough to ask the question. * IFTTT.com is another, easy-to-use way to build programmatic thinking and incorporating automation into your regular workflows. * Learning automation doesn’t necessarily have to be data center-focused. * Along the lines of “low-hanging fruit” that listeners can tackle as an easy first project, reports (as mentioned earlier) are a great way to get started. * Start with simple reports on your VMs. * Then add more information. * Next, add some formatting of the output. * You can then have the report delivered to you via e-mail on a regular basis. * As you can see, you can start small and build upon your success as you go. * Digging into other peoples’ code can be helpful in your own learning journey.