I was recently interviewed on Cisco Champions Radio where I was asked what is the value and use of SDN/DevOps along with how people with little or no development experience can get started learning network programming.
If you want to learn how to do network programming you can easily get started by accessing the DevNet learning labs at http://learninglabs.cisco.com . These labs are free and DevNet has beginner to intermediate level programming labs that cover topics from basic programming to parsing and processing data returned from network API calls. Currently the labs cover over twenty different Cisco technologies.
DevNet is designed to be the one-stop-shop for developers to come and learn about Cisco APIs, how to write code and to get technical support for the technology of their choice. One popular technology on DevNet, and the world for that matter, is Software Defined Networks (SDN) which is quickly becoming a standard for cost savings as well as adding flexibility to the network. Expensive network devices are no longer needed for specialized routing and packet processing tasks, and the reason is that developers can now write code to do these tasks on a separate device like a workstation.
SDN and DevOps are interrelated because both are about networking, automation and programming on the network. In my view the difference is that SDN is a technology while DevOps is more of a philosophy. DevOps seeks to automate network configuration and changes by tools such as Puppet, Ansible and Chef, and to create better collaboration and understanding between the developer and the network administrator.