Networking with Python: Socket Programming for Communication (FutureLearn)

Networking with Python: Socket Programming for Communication (FutureLearn)

Discover how you can create networked applications in Python by using sockets. Supported by Google. 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.

Class Deals by MOOC List - Click here and see FutureLearn's Active Discounts, Deals, and Promo Codes.

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.

Syllabus

Week 1: Sockets
Week 2: Dealing with lossy communications
Week 3: Designing and coding protocols

What will you achieve?
By the end of the course, you‘ll be able to...

  • Describe the layers of the TCP/IP model
  • Produce Python programs using sockets
  • Demonstrate a knowledge of the life cycle of a socket
  • Compare reliable and unreliable communication
  • Develop a protocol of your own

-Produce programs that use both TCP and UDP

  • Investigate the causes of network errors
  • Describe methods of correcting errors

Who is the course for?
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.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programming 101: An Introduction to Python for Educators (FutureLearn) FutureLearn
Raspberry Pi Foundation

Programming 101: An Introduction to Python for Educators (FutureLearn)

Explore the basics of Python. Guided by the Raspberry Pi Foundation, you’ll learn to code your first program. Learn how to program in Python with help from Raspberry Pi. On this course, you’ll explore programming in Python. Guided by the Raspberry Pi Foundation, you’ll discover basic programming concepts, learning how to understand the basics of python syntax and interpret error messages.

Nov 1st 2021
4 Weeks
Programming Essentials with Python: Cloud Technology and SaaS (FutureLearn) FutureLearn
FutureLearn

Programming Essentials with Python: Cloud Technology and SaaS (FutureLearn)

Launch your career in programming with this course on the fundamentals of Python and other programming languages. Develop your knowledge of cloud infrastructure and cloud technologies. What’s powering the architecture of cloud computing, and how does it rely on Python programming? Take a deep dive into the cloud and look at different types of cloud architecture and learn to articulate the benefits, challenges, and opportunities they offer.

May 23rd 2022
4 Weeks
Django Features and Libraries (FutureLearn) FutureLearn
University of Michigan

Django Features and Libraries (FutureLearn)

Gather all the skills you need in order to build Django-based web applications suitable for use. Learn the ins and outs of Django and how to build web applications. This practical, six-week course from the University of Michigan will give you all the skills you need in order to build Django-based web applications suitable for use by end users.

Jan 11th 2021
5-12 Weeks
Video Game Design and Development: Introduction to Game Programming (FutureLearn) FutureLearn
Abertay University

Video Game Design and Development: Introduction to Game Programming (FutureLearn)

Discover the essentials of video game programming and learn how you can start your own programming career. Learn the basics of game development to understand how great games are designed. Video games have become a multi-billion-dollar industry, even recently overshadowing cinema as the globe’s go-to entertainment medium of choice.

Jun 28th 2021
2 Weeks
Programming Applications with Python: Working with Files (FutureLearn) FutureLearn
FutureLearn

Programming Applications with Python: Working with Files (FutureLearn)

Discover how to read and create files and directories in Python, and how Python is used for data collection and exploration. Learn how to use Python create applications. On this course, you’ll start to develop the knowledge and skills needed to successfully launch a career in programming or software development, learning how to program applications using Python. You’ll study alongside industry experts at Github, giving you the confidence and competitive advantage to work in or manage development teams.

May 23rd 2022
4 Weeks
Teaching Physical Computing to 5-11 year olds (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Teaching Physical Computing to 5-11 year olds (FutureLearn)

Teach your young learners how to create electronic circuits, then learn to control them using block-based programming languages. Learn how to create physical computing projects using a Crumble or micro:bit. Physical computing is the process of designing, building, and programming systems that use physical components such as buttons, lights, and motors.

Mar 6th 2023
3 Weeks
Functional Programming in Haskell: Supercharge Your Coding (FutureLearn) FutureLearn
University of Glasgow

Functional Programming in Haskell: Supercharge Your Coding (FutureLearn)

Get an introduction to Haskell, the increasingly popular functional programming language, with this University of Glasgow course. Do you want to develop software using the latest programming language paradigm? Haskell is a functional programming language, based on formal mathematical principles. As such, it is easy to reason about and develop, and it executes efficiently on modern multicore machines. From investment banks to social networks, everyone is adopting Haskell.

Self Paced
5-12 Weeks
Programming 103: Saving and Structuring Data (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Programming 103: Saving and Structuring Data (FutureLearn)

Learn how to save and structure data in external files, and import files back into your Python programs. Supported by Google. Discover how to save data to use it across multiple runs of your program. On this course, you will learn how to save text and binary files, and how to structure data so that programs can interpret it correctly.

Jan 2nd 2023
3 Weeks
Big Ideas in Programming: Expressing Yourself with Python (FutureLearn) FutureLearn
University of Michigan

Big Ideas in Programming: Expressing Yourself with Python (FutureLearn)

Harness the power of Python and its programming concepts to express yourself and automate the work you do. Learn the Python basics you need to create the content and projects you want. Coding and programming allow better work performance, across diverse professions. If you want to discuss ideas with programming professionals or develop the code yourself, you need to know the basics.

Sep 27th 2021
4 Weeks
Start a CoderDojo (FutureLearn) FutureLearn
Raspberry Pi Foundation

Start a CoderDojo (FutureLearn)

Get support and advice on how to grow your confidence in coding and start a CoderDojo for young people in your area. In today’s world, technology is everywhere, so it’s never been more important to know how to code. It’s easier to learn these skills early on in life, which is why coding is a great subject for young people to learn.

May 30th 2022
3 Weeks
Programming Applications with Python: Libraries and Web Scraping (FutureLearn) FutureLearn
FutureLearn

Programming Applications with Python: Libraries and Web Scraping (FutureLearn)

Consider applications for APIs and Python, and explore the purpose of web scraping. Examine Python libraries for web development. This course will introduce you to the popular Requests library in Python. You’ll study how to install the Requests library and get to know how it works. Learning via videos, interactive exercises, and quizzes, you’ll also explore what HTTP requests are and what each of the status codes in HTTP mean.

May 23rd 2022
4 Weeks