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

Introduction to Data Analytics with Python (FutureLearn) FutureLearn
FutureLearn

Introduction to Data Analytics with Python (FutureLearn)

Learn the fundamentals of using Python for data analysis and develop skills in two of Python’s core libraries, Pandas and Seaborn. Build your data analytics toolkit with Python. We are in the era of ‘big data’. According to a Forbes article published in 2018, around 2.5 quintillion bytes of data were being generated each day globally. On this four-week course, created in collaboration with Tableau, you’ll gain a foundational knowledge of data science for business applications, acting as a launchpad to help you become a successful data scientist.

Self Paced
4 Weeks
Software Development Basics (FutureLearn) FutureLearn
FutureLearn

Software Development Basics (FutureLearn)

Learn the basics of HTML code, gain expert insights into web development, and decide if the industry is right for you. Kick-start your career in web-based software development. The web design and development industry is growing exponentially and offers several exciting employment opportunities. Many people perceive this field as too complex, assume they won’t understand the material and therefore don’t consider it as a viable job prospect.

Self Paced
4 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
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
Intermediate Python (FutureLearn) FutureLearn
University of California, Irvine

Intermediate Python (FutureLearn)

Develop your programming skills and learn the dynamic semantics of Python as an object-oriented programming language. Build your Python programming skills. On this six-week course from the University of California, Irvine, you’ll gain basic computer science knowledge to help you become more efficient with Python programming, focusing on the data-science applications of programming concepts.

Nov 29th 2021
5-12 Weeks
Computer Programming for Everyone (FutureLearn) FutureLearn
University of Leeds,Institute of Coding

Computer Programming for Everyone (FutureLearn)

Discover the art of computer programming and learn what code can do with the Institute of Coding and the University of Leeds. Explore computer programming and complete block-language programming exercises. What are computers good at and how can you get the best out of them? On this course, you’ll find out how and why people program computers.

Self Paced
2 Weeks
Data Visualisation with Python: Bokeh and Advanced Layouts (FutureLearn) FutureLearn
FutureLearn

Data Visualisation with Python: Bokeh and Advanced Layouts (FutureLearn)

Elevate your data visualisation skills and better communicate your data insights with the data visualisation package, Bokeh. Learn how to use Bokeh in Python. On the first week of the course, you’ll explore the key functions of Bokeh and how it can be used to create interactive visualisations and dashboards.

May 30th 2022
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: 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
Understanding Maths and Logic in Computer Science (FutureLearn) FutureLearn
Raspberry Pi Foundation

Understanding Maths and Logic in Computer Science (FutureLearn)

Improve your understanding and ability to teach maths and logic in computing while building elements of an escape room. Become more familiar with maths and logic in computer science. The mathematical aspects of computer science can be difficult to understand and teach. On this course, you will be introduced to maths and logic in computing in an engaging way.

Nov 1st 2021
3 Weeks
Software Development: Understanding Python (FutureLearn) FutureLearn
FutureLearn

Software Development: Understanding Python (FutureLearn)

Get an introduction to software development and learn the basics of Python. If you want to start a career in software development, it’s important to build your programming skills. This course focuses on one of the most popular programming languages – Python – which is widely used in scientific and numeric computing.

Self Paced
4 Weeks
Scratch to Python: Moving from Block- to Text-based Programming (FutureLearn) FutureLearn
Raspberry Pi Foundation

Scratch to Python: Moving from Block- to Text-based Programming (FutureLearn)

Learn how to apply the thinking and programming skills you've learnt in Scratch to text-based programming languages like Python. Discover how you can transition from block to text-based programming. Block-based programming languages like Scratch make it simple to learn and teach programming. But once you and your students have mastered it, it’s time to move on to a text-based programming language such as Python. This online course will show you how.

Mar 6th 2023
4 Weeks