Online course in Teaching

Networking with Python: Socket Programming for Communication

Discover how you can create networked applications in Python by using sockets. Supported by Google.

Networking with Python: Socket Programming for Communication

  • Duration 3 weeks
  • Weekly study 2 hours
  • Learn Free
  • Extra benefits From $44 Find out more

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.

Download video: standard or HD

What topics will you cover?

  • The lifecycle and use of sockets in network programming
  • Popular networking models; the TCP/IP layers and client-server programs
  • The use of both TCP and UDP in Python programs
  • What protocols are, and how they are used.
  • How to detect and correct errors in transmission
  • Methods for testing applications

When would you like to start?

Most FutureLearn courses run multiple times. Every run of a course has a set start date but you can join it and work through it after it starts. Find out more

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.

Who developed the course?

Raspberry Pi Foundation

The Raspberry Pi Foundation works to put the power of digital making into the hands of people all over the world, so they are capable of understanding and shaping our increasingly digital world.

National Centre for Computing Education

National Centre for Computing Education courses

Supporters

Join this course

Start this course for free, upgrade for extra benefits, or buy Unlimited to access this course and hundreds of other short courses for a year.

Free
$0

Join free and you will get:

  • Access to this course for 5 weeks

Upgrade
$44

Upgrade this course and you will get:

  • Access to this course for as long as it’s on FutureLearn
  • A print and digital Certificate of Achievement once you’re eligible
New

Unlimited (New!)
$249 for one year

Buy Unlimited and you will get:

  • Access to this course, and hundreds of other FutureLearn short courses and tests for a year
  • A printable digital Certificate of Achievement on all short courses once you’re eligible
  • The freedom to keep access to any course you've achieved a digital Certificate of Achievement on, for as long as the course exists on FutureLearn
  • The flexibility to complete your choice of short courses in your own time within the year
Find out more about upgrades or Unlimited.