-
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.