Tag Archives: Python

Cisco DNA Learning Track

On this new track you can learn about about the building blocks of the Cisco Digital Network Architecture (DNA), including an introduction to REST APIs, how to code in Python, and how to use programmability in the context of controllers and device-level interface. You have 10 module and 32 learning Labs, free, free, free!

devnet_dna

Labs Available

devnet_dna_modules

References:

DevNet Express for DNA

SDN and Python in Coursera coming soon

Time to learn different things, this time i will learn SDN concepts and re-learn how to programming but in Python… Yes, i did a lot of programming while i was taking my degree at University using Java,C,C++, PHP and other technologies.

I heard really good things from my friends who took courses on Coursera, so i decided to try it.

coursera_courses_in_2015

Software Defined Networking by Georgia Institute of Technology

About the Course

This course introduces software defined networking, an emerging paradigm in computer networking that allows a logically centralized software program to control the behavior of an entire network.

Separating a network’s control logic from the underlying physical routers and switches that forward traffic allows network operators to write high-level control programs that specify the behavior of an entire network, in contrast to conventional networks, whereby network operators must codify functionality in terms of low-level device configuration.

Logically centralized network control makes it possible for operators to specify more complex tasks that involve integrating many disjoint network functions (e.g., security, resource control, prioritization) into a single control framework, allowing network operators to create more sophisticated policies, and making network configurations easier to configure, manage, troubleshoot, and debug.

 Course Syllabus

This course will cover 8 modules (one per week).

Module 1: History and evolution of SDN

Module 2: Control and data plane separation

Module 3: Control Plane

Module 4: Network Virtualization

Module 5: Data Plane

Module 6: Programming SDNs

Modules 7: Verification and Debugging

Module 8: Use Cases and Looking Forward

Recommended Background

Students should have taken at least an undergraduate-level networking course and have programming experience in Python. Experience with virtual machines and other virtual networking environments may also be useful.

Suggested Readings

There are some useful videos available online; these might be a good starting point for many people:

You may find the additional reading useful for introductory material:

Course Format

The course will consist of a series of video lectures, each about 10 minutes in length.

Assignments for the course are lab-based programming assignments, many of which build off of the Mininet software developed at Stanford University, which can run SDNs in emulated environments on networks of virtual machines.

 

Programming for Everybody (Python) by University of Michigan

About the Course

This course is specifically designed to be a first programming course using the popular Python programming language. The pace of the course is designed to lead to mastery of each of the topics in the class. We will use simple data analysis as the programming exercises through the course. Understanding how to process data is valuable for everyone regardless of your career. This course might kindle an interest in more advanced programming courses or courses in web design and development or just provide skills when you are faced with a bunch of data that you need to analyze. You can do the programming assignments for the class using a web browser or using your personal computer. All required software for the course is free.

Course Syllabus

Week One: Introduction – Why we program?
Week Two: Variables and Expressions
Week Three: Conditional code
Week Four: Functions
Week Five: Loops and Iteration
Week Six: Strings
Week Seven: Files
Week Eight: Lists
Week Nine: Dictionaries
Week Ten: Tuples
Optional Topic: Regular Expressions

Recommended Background

There are no pre-requisites for this course. We avoid any advanced mathematics. You can do the entire class using a web browser. If you are going to do the programming exercises on your own computer (optional), you should know how to download and install software and be able to make folders and organize files on your computer. We will have detailed instructional videos for both Windows and Macintosh computers for all software installation and file management tasks for those who want to do software development on their computers. All required software for this class is free.

Suggested Readings

The textbook is titled Python for Informatics: Exploring Information.  The book is free to download in all major electronic formats including: PDF, EPUB, MOBI, HTML, and Apple’s iBooks.  The free iBooks version of the book contains enhanced video materials and exercises built into the book.  You can purchase a printed copy of the book from Amazon for $8.99.   It is not necessary to purchase the printed book.   All of the book materials are available under a Creative Commons Attribution-NonCommercial 3.0 Unported License.