• FutureLearn logo

Programming Essentials with Python: Source Code and Solutions Architecture

Discover how Python programming and other computer languages can be used to kickstart your career as a programming expert.

Person using a keyboard at a desktop computer.
  • Duration

    4 weeks
  • Weekly study

    4 hours

What does programming involve, what are the most commonly used programming languages, and what are their applications?

This introductory course will teach you the fundamentals required to become a successful programming professional. You’ll learn Python programming essentials and find out why the software has grown in popularity.

What is Python used for? A beginner’s programming guide

Many of the world’s biggest online companies, including Google, Dropbox and Instagram, heavily rely on Python to program their back-end. It’s also widely used by scientists, mathematicians, and in academia. But what is Python programming and why is it so popular?

The course will teach you the fundamentals of this programming language, and programming in general. You’ll learn how Python is installed and set up. And you’ll find out how to install libraries in Python and gain an understanding of code execution.

Understand how to use source code in programming

First, you’ll learn about source code programming in the context of coding.

You’ll examine the types of errors that may occur, and how to troubleshoot and fix them. You’ll learn about code flows, including loops and conditions, along with sequential, conditional and branching code flows.

You’ll also develop your understanding of variables and data types, symbols and operators, plus keywords and identifiers.

Learn how solutions architecture relates to programming

As well as covering the basics of programming for beginners, you’ll also examine how a solutions architect helps organisations to develop new applications for services.

You’ll look at the role, processes and responsibilities of solutions architects and how they’re integral to solving technical business problems, before getting to grips with the basics of how solutions architecture works.


  • Week 1

    Introduction to programming

    • Welcome to the course!

      Introduction to the course, information about the optional project tasks, and an overview of Week 1.

    • What is programming?

      This topic touches on the fundamentals of programming, what programming actually is, and how we can utilise it to improve our lives.

    • Python overview

      This activity will provide learners with an overview of the Python programming language. This includes installing Python, providing a brief overview of how Python executes code, and discussing what libraries are in Python.

    • Wrap-up

      Now it's time to reflect on your learning throughout the week and look to what's next!

  • Week 2

    Basics of programming

    • Introduction

      Welcome to Week 2! Let's first introduce the week's topics and outcomes. This week, we’ll explore variables, data types, symbols and operators, troubleshooting and fixing errors, as well as loops and conditions.

    • Source code

      A continuation of the source code topic. This part of the topic aims to discuss variables, data types, symbols and operators.

    • Debugging

      Learning the types of errors that may occur while coding is important so that you can troubleshoot and fix these errors more efficiently. Thankfully, Python is an interpreted language which makes finding the cause of errors easy.

    • Coding flows overview

      In this section, you'll learn about how code can flow in Python. This includes the loops and conditions you can place inside your code.

    • Wrap-up

      This is a short summary of some of the content we have covered, along with some practice exercises for you to practice the skills you have learned.

  • Week 3

    Introduction to solutions architecture

    • Introduction

      An introduction to the week's topics and key learnings.

    • What is solutions architecture?

      Here we will discuss what solution architecture is exactly, and some of the skills you may need to succeed as a solutions architect. We will also look into cloud solutions architecture and what this is exactly.

    • Effective solutions architecture

      In this topic, we will discuss some of the critical success factors you may need to succeed as a cloud architect, along with the skills you learn along the way that may benefit you in other ways.

    • Wrap-up

      Now it's time to reflect on your learning throughout the week and look to what's next!

  • Week 4

    Landscape and context of solutions architecture

    • Introduction

      Welcome to Week 4! Let's first introduce the week's topics and outcomes.

    • Solutions architecture, challenges, risks, and opportunities

      Solutions architecture presents certain risks when working in industry. Navigating these risks along with understanding what makes a solutions architect different from other roles can create opportunities for you.

    • Solutions architecture landscape

      This activity will discuss who the key stakeholders are in solutions architecture, along with the key technologies that you may have to understand to succeed as a solutions architect.

    • Understanding machine and deep learning in the context of cloud solutions architecture

      Machine and deep learning are prevalent in our society today. Understanding how solutions architecture leverages this technology can make you a much better solutions architect.

    • Wrap-up

      We'll summarise what we've learned in the past two weeks here.

Learning on this course

On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Articulate the basics of programming
  • Identify critical traits of solutions architecture

Who is the course for?

This course is designed for professionals looking to build confidence in Python and other programming languages.

It’s ideally suited to career-changers seeking a programming role, established technology professionals, and tech team leaders.

What software or tools do you need?

On this course we’ll be using Python. We recommend you use a computer to access these elements.

Who will you learn with?

Hi everyone. I'm Jey, a professional accredited engineer that is looking to create innovations inside the engineering industry. My interests include deep learning, cryptography and quantum computing.

Who developed the course?


FutureLearn is a leading social learning platform and has been providing high quality online courses for learners around the world over the last ten years.

In collaboration with

GitHub logo

Endorsers and supporters

endorsed by

Coventry University logo

Learning on FutureLearn

Your learning, your rules

  • Courses are split into weeks, activities, and steps to help you keep track of your learning
  • Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
  • Stay motivated by using the Progress page to keep track of your step completion and assessment scores

Join a global classroom

  • Experience the power of social learning, and get inspired by an international network of learners
  • Share ideas with your peers and course educators on every step of the course
  • Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others

Map your progress

  • As you work through the course, use notifications and the Progress page to guide your learning
  • Whenever you’re ready, mark each step as complete, you’re in control
  • Complete 90% of course steps and all of the assessments to earn your certificate

Want to know more about learning on FutureLearn? Using FutureLearn