Wrcdmzws22cldb77fpk8

Python Network Programming - Part 1: Build 7 Python Apps

Learn Python From Scratch! Go from zero programming to building great network apps with Python. Full Python Apps Inside!

   Watch Promo

* Full Python Apps, Quizzes, Coding Exercises and Final Project are included *

Before you read what I have to say, see what my students are saying about my courses:

"What an incredible value and learning experience!" by Sean A.

"Excellent material. Kudos to a great instructor with a vast level of creativity." by Anthony W.

"I can say this man is going on smoothly and perfectly, explaining in the most empirical/foundational way." by Kolapo A.


*** Why would you take this course? ***

Do you want to become a Python Developer without having to spend a lot of money on books and boring theoretical courses?

Are you a network professional who wants to start automating network tasks using Python?

Or maybe you're seeking a raise or even a career change?

Join thousands of successful students who have decided to learn Python, upgrade their networking skills and boost their careers using this 100% hands-on course!


*** What's this course all about? ***

Python network programming (v2.7.3) course aimed not only at network professionals, but at anyone having little or no experience in coding or network automation and a great desire to start learning Python from scratch. This hands-on Python Network Programming training takes you from "Hello World!" to complex network applications in less than 15 hours.

During this course you will learn Python concepts which are relevant to your networking job and build some amazing network tools using Python:

  • Python App#1: Subnet calculator.
  • Python App#2: Configuring multiple network devices concurrently via SSH or Telnet.
  • Python App#3: DHCP client simulator for testing a DHCP server in the local network.
  • Python App#4: Collecting information from routers and storing it in a MySQL database.
  • Python App#5: OSPF network discovery via SNMP. Building the OSPF topology.
  • Python App#6: Basic network sniffer.
  • Python App#7: Configuration file comparator.

Sounds unbelievable given your current programming experience? Well, it's true! How?

First, you will learn and practice every Python key concept, which is explained in one or more video lectures, followed by a short quiz. Each video is filled with relevant examples, in a learn-by-doing fashion and the quizzes will help you consolidate the main ideas behind each Python topic.

After laying the foundation (and also exploring some advanced Python topics), you will dive right into the real-life network scenarios and apply your knowledge to build 7 great network tools using the power of Python.

Equipped with working files, network topologies and Python code samples, you will be able to work alongside me on each lecture and each application. I will provide a virtual machine with all the Python modules already installed and also the full code for each application, so you can save time and start coding and testing on the spot.

We will use emulated routers in GNS3 to test our Python apps in a network environment, so you can see the actual results of running your Python code. You need to find yourself a Cisco IOS image (from Cisco's official website - contract required) to load into GNS3 or practice all the concepts on real network devices you have at your job/home.

I encourage you to learn Python, an amazingly beginner-friendly programming language and take your (networking) job to a higher level of automation.


*** Is this course regularly updated? ***

Update May 4, 2017: Added: Quizzes

Update Aug 27, 2016: Added: The "Python 2 vs. 3" Debate: FAQ

Update May 1, 2016: Massive course refresh. Improved Linux VM. New content. New sections. Python 3.x section added. Other fixes based on student feedback.

Update Dec 4, 2015: Added: Video lecture: Web Access Basics with Python: requests | FAQ lecture in Section 1

Update Nov 2, 2015: Added: Video lectures: Sockets: Server and Sockets: Client | Text and Code Samples: Socket Server Code and Socket Client Code

Update Oct 27, 2015: Added: Video lecture: Quick Insight To Get You Warmed Up!

Update Oct 19, 2015: Added: Text lecture for troubleshooting VirtualBox and GNS3

Update Sep 24, 2015: Added: Application #7 - Configuration file comparator

Update Sep 23, 2015: Added: Application #6 - Basic network sniffer

Update Sep 18, 2015: Added: Video lecture: Decorators

Update Sep 2, 2015: Added: Video lecture: Itertools

Update Aug 7, 2015: Added: VirtualBox and Virtual Machines - Short Guide

Update Aug 1, 2015: Added: Video lecture: Python Iterators and Generators

Update July 1, 2015: Added: Flow diagram for each application | Video lecture: How To Install a New Python Module | 3 new quizzes.

Update June 16, 2015: Added: Project for building a small Python network application | Video lecture to answer a student question | Video lecture to show how can students interact with me.

Update June 10, 2015: Added: 100 Python exercises and answers.


*** What others have to say about this course? ***

"I have been programming since 1978 and wanted to learn python. I have had no java or OOP experience, and I tried several 'paper' tutorials but got little out of them. The first part of this course is a steady walk through the Python language at just the right speed. The instructor seems to touch all the basis in a logical and methodical way while providing examples and explanations. I can only conclude the instructor is a professional educator who spent considerable time structuring and organizing the course. The result is evident. THIS IS A GREAT WAY TO LEARN PYTHON!" by Larry Laswell

"I've tried learning from the books & multiple videos - most were too basic to make a practical app. Some books were too thick and made me sleep. But still none of the materials had the perfect balance like this course where all the basics were covered, instructions were concise, and Mihai walks you through how to create 7 practical apps step by step. I've also tried reading some advanced python book which didn't make sense because it was too advanced. Let me tell you, this is hands down "that course that takes you up to beyond the basics" to bridge you to the advance topics. Right now I'm hitting the advanced topics and it finally makes sense..." by Joon Park

"Usually I'm not doing courses review but this time I will make an exception. During time I took a lot of trainings but very few provided by Udemy proved as having the right approach in teaching the audience. I will mark this one as being one of my personal top three best trainings as content's quality, technical explanations, and additional learning materials perspective. Long story short this course is a very simple, straight forward way of learning Python for managing IT networks." by Johnny Stanescu

"This is a great course for network engineers who would like to start automating their tasks. Geared towards beginners, this course teaches the fundamentals of programming and applying those concepts to networking. There is a lot of fluff about python on the internet, however the instructor managed to put together the necessary information to start automating the network. A working knowledge of TCP/IP is needed to get the most out of this course. Should you understand every lecture, you will be ready to start writing your own scripts according to your needs. In particular, I loved the use of scapy, an amazing tool which should be in the arsenal of anyone working with TCP/IP." by Costin-Alin Neacsu

"I've seen the blueprint and some demo videos and I was convinced right away. Without a doubt, it's one of the best trainings a network engineer can have. It gives you actual valuable and marketable skills that you can use in your daily job. Mihai explains the topics really well, with practical examples making it a fun way to learn. Highly recommended." by Vlad Vlaicu


Over 25.000 satisfied students are enrolled in my Python Network Programming courses across the Web:

  • Last week, over 300 students have joined my Python courses.
  • The average course rating is above 4.5 / 5.

*** Important information before you enroll! ***

  • In case you find the course useless for your career, don't forget you are covered by a 30 days money back guarantee, full refund, no questions asked!
  • Once enrolled, you have unlimited, lifetime access to the course!
  • You will have instant and free access to any updates I'll add to the course.
  • I will give you my full support regarding any issues or suggestions related to the course.
  • Check out the course curriculum for a quick insight.


Enroll NOW and hop on the Python network programming train. Let's get started!


Your Instructor


Mihai Catalin Teodosiu
Mihai Catalin Teodosiu

Hi! My name is Mihai. I have a degree in Telecommunications and Information Technology from University Politehnica of Bucharest, Romania and also the CCNP, CCNA, CCDA, JNCIA and ISTQB CTFL certifications.

I worked as a Network Quality Assurance Engineer since 2010, testing the OS for Nortel/Avaya L3 switches.

# 6+ years experience in the Networking and Testing/Quality Assurance industries.

# Certified professional: Cisco, Juniper and International Software Testing Qualifications Board certifications.

# Teaching courses on Udemy, GNS3 Academy and other e-learning platforms.

# Thousands of satisfied students, 4.5 / 5 average course rating.

# Thousands of followers on LinkedIn, Twitter, Facebook and Blogger.


See what my students are saying about the kind of courses I created:

"What an incredible value and learning experience!" by Sean A.

"Excellent material. Kudos to a great instructor with a vast level of creativity." by Anthony W.

"I can say this man is going on smoothly and perfectly, explaining in the most empirical/foundational way." by Kolapo A.


In early 2014 I decided to start learning a programming language that can make my daily work easier and also boost my networking career. This is when I discovered that Python, being a great language for beginners, can help me write some scripts that connect to network devices and perform various tasks I was doing manually, thus saving a lot of time. Also, working as a tester, I used Python to automate a lot of network tests, about 250, in a short period of time, again reducing my workload.

For all the above reasons and because there is a lot of Python material out there on the Internet that may seem discouraging for you as a beginner, I decided to build courses that take you from zero programming knowledge to advanced topics, all in a hands-on fashion.


In March 2015 I started working on my first course, "Python Network Programming - Part 1: Build 7 Python Apps", without really knowing what is online education all about and with no prior teaching experience, either online or offline. I just wanted to try it for some reason, despite a lot of mental obstacles, a full time job and zero experience in teaching people.

I worked a lot on this first course, with countless hours of researching, recording and editing, but there was something that kept me going further. In May 2015 my course was approved by Udemy and was an instant success, despite my low expectations. Gradually, the course became a bestseller on other e-learning platforms, as well. One example I'm very proud of is the GNS3 Academy.

In April 2016, I finished working on Part 2 of the Python Network Programming series, called "Multivendor Environment", after about three months of researching, testing, summarizing, simplifying, recording, editing and structuring the course content.

Finally, in September 2016, I released Part 3 of this amazing course series, called "Python Network Programming - Part 3: Scapy & Security Tools", which in my opinion is very interesting and exciting for anyone wanting to enter the world of network security in a 100% hands-on fashion.

I am really putting a lot of energy and effort into each of my courses and I am always trying (and succeeding) to pay special attention to the smallest details and provide a lot of value to my students.

I really think my courses will get better and better, both by learning from my mistakes and carefully listening to the feedback I get from my students.


So, check out my courses and stay tuned for more!


Class Curriculum


  9. Python Classes (Object-Oriented Programming) Basics
Available in days
days after you enroll
  18. Application #6 - Basic network sniffer
Available in days
days after you enroll
  19. Application #7 - Configuration file comparator
Available in days
days after you enroll

Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Get started now!