-
Notifications
You must be signed in to change notification settings - Fork 10
ARCHIVE: DevNet Programming Task Force (DPTF)
The DevNet Programming Task Force (DPTF) was responsible for defining a core set of labs that represent DevNet's primer material and content covering programming fundamentals. This work is considered code-complete.
TOC (on this page)
Members
Useful Links
List of Learning Objectives
List of Labs that Cover Programming Fundamentals
Guiding Principles
- Marcos Campos
- Matt Denapoli
- Anne Gentle
- Armen Martirosyan
- John McDonough
- James Neiman
- Hank Preston
- Stève Sfartz
- David Staudt
- Paul Zimmerman
- Chris Lunsford
-
Slides from Hank:
https://cisco.app.box.com/folder/34827797838
Hank wrote: "As part of the Network Programmability Video course, I created a 'Programming Fundamentals' module that provides the foundation in Python, APIs and Data Formats needed for the reset of the technical modules. ... I offer it up as a recently updated and curated starting point that we could build from, or completely deviate from." -
Consolidated SE Feedback
https://cisco.box.com/s/wl0qzc0vkp0rqdtxzcm9fci7nupbj1ra -
Slides from Chris:
https://cisco.box.com/s/g7z8pgm3djrirz724xir7jucpv4r3jcj
What are the learning objectives (skills and knowledge) that DevNet considers part of core programming fundamentals?
| Learning Objective (language-independent) | Non-Technology Specific Description | Examples / Commands that should be included |
|---|---|---|
| Git & GitHub | Understand basics about Git, GitHub, and repos. | What is Git? What is GitHub? |
| DevNet / DevNet Express Git Workflow | clone branch commit reset |
|
| REST API calls | Concepts on how APIs work | |
| Resources and Endpoints | ||
| Structure of an HTTP Request & Response | ||
| HTTP Operations | GET POST PUT DELETE |
|
| Authentication / Authorization | ||
| Language-Specific | Python fundamentals | |
| Powershell fundamentals | ||
| Javascript fundamentals | ||
| Basic Data Types | Understand basic (non-collection) data types | boolean int string |
| Operators | Operators for working with basic data types | |
| Variables | Creation, use and scope | |
| Input/Output | ||
| Control Structures | Flow control syntax (conditionals and etc.) | if switch |
| Collection Data Types | arrays/lists hashes/dicts |
Examples: devices, hostnames, ports |
| Loops | Iterative and conditional loops | for while |
| Functions | Basic Syntax: passsing in parameters, returning data Calling a Function |
|
| Working with Objects | Accessing attributes and methods (dot-syntax) | |
| Importing Libraries | Requests |
|
| Data Formats | Basic structure and syntax Language-specific parsing |
JSON XML YAML |
This is the list of labs currently available that cover the learning objectives listed above:
Introduction to Git Repo: https://github.com/CiscoDevNet/devnet-express-cloud-collab (private)
Python Primer Level 1 Repo: https://github.com/CiscoDevNet/devnet-express (private)
Python Primer Level 2 Repo: https://github.com/CiscoDevNet/devnet-express (private)
Parsing JSON with Python https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Windows Users Running Exercises on dCloud Repo: https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Windows Users Running Exercises on Local Hosts Repo: https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Mac Users Running Exercises on dCloud Repo: https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Mac Users Running Exercises on Local Hosts Repo: https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Linux Users Running Exercises on dCloud Repo: https://github.com/CiscoDevNet/devnet-express (private)
Pre-Event Preparation for Linux Users Running Exercises on Local Hosts Repo: https://github.com/CiscoDevNet/devnet-express (private)
Introduction to Git Repo: https://github.com/CiscoDevNet/devnet-express-cloud-collab (private)
Python Primer Level 1 Repo: https://github.com/CiscoDevNet/api-coding-basics (private)
Python Primer Level 2 Repo: https://github.com/CiscoDevNet/api-coding-basics (private)
Using Python to Parse JSON Repo: https://github.com/CiscoDevNet/api-coding-basics (private)
Introduction to XML Repo: https://github.com/CiscoDevNet/api-coding-basics (private)
Overview of REST APIs Repo: https://github.com/CiscoDevNet/devnet-express (private)
Spark's REST API and Postman Repo: https://github.com/CiscoDevNet/devnet-express (private)
Using Python to Interface with REST APIs Repo: https://github.com/CiscoDevNet/devnet-express (private)
Coding and Parsing with Python Repo: https://github.com/CiscoDevNet/devnet-express (private)
Mission: Complete the Spark Script with Python Repo: https://github.com/CiscoDevNet/devnet-express (private)
The following are guiding principles that the DMTF recommends all authors and instructors of programming follow.
John M. wrote:
"...examples/exercises should use data that is Network, Compute, Storage, Wireless, Security, IoT, etc. in nature."
COPYRIGHT © 2019-2021 CISCO SYSTEMS, INC. ALL RIGHTS RESERVED.