Networking with Python: Socket Programming for Communication
Offered By: Raspberry Pi Foundation via FutureLearn
Course Description
Overview
Build your practical network application skills and understanding
On this course from the Raspberry Pi Foundation, you’ll learn how to create programs that communicate over the internet.
You’ll explore the principles that industry professionals use when programming for networks, and learn how sockets are used to abstract the complexities of the internet.
In the final week, you’ll design and create your own protocol for a networked quiz that you’ll program using Python. This final challenge will help you to consolidate and apply your learning from the course.
This course is designed for teachers who deliver lessons on network principles in the classroom, at GCSE level or equivalent.
To take part in this course, you will need experience in the following areas of programming:
- Using functions, including parameters and returns
- Using multiple data types
- Debugging Python programs
It may also be beneficial to have some experience with classes and methods.
Syllabus
- Sockets
- Introduction to the course
- Networks and sockets
- Sockets and Python
- Handling two-way messaging
- End of week one
- Dealing with lossy communications
- Unreliable and reliable communication
- Python and UDP
- Testing and simulating errors
- End of week two
- Designing and coding protocols
- Welcome to week three
- Protocols
- Design a networked quiz
- Coding your quiz
- Quiz royale
- End of the course
Taught by
Martin O'Hanlon
Related Courses
A Formal Treatment of Accountable Proxying over TLSIEEE via YouTube A More Open Trust Protocol - Leveraging Hardware-Backed Security for IoT
Linux Foundation via YouTube Asiacrypt 2022 Real World Protocols
TheIACR via YouTube Blazing Fast OT for Three-Round UC OT Extension
TheIACR via YouTube Broadcast-Optimal Two-Round MPC
TheIACR via YouTube