Time: 18:00 - 21:00
Location: Dual Mode (Online or In Person)
This course will be delivered online or in person. See the ‘What is the course about?’ section in course details for more information.
Course Code: CADP11
Available start dates
Duration: 4 sessions (over 4 weeks)
What is the course about?
Building on what you have learnt on an introductory Python course you will explore more advanced programming concepts and techniques that will make you a more accomplished and efficient programmer. This course is designed to not only give you the practical programming experience to build programs that solve real world problems but also give you the theoretical background that underpins all mainstream programming language.
You can choose to attend this course either live online or in person.
- Internet connection. The classes work best with Chrome.
- A computer with microphone and camera.
We will contact you with joining instructions before your course starts.
What will we cover?
Code hiding and code reuse
As the code in most software applications continue to grow in size (it is estimated that there are over 50 million lines of code in Microsoft Windows alone) it is important that the competent programmer learns techniques to make their code work harder. By learning how to build sub-routines and store them in modules you will create toolkits of code that can be reused in multiple programming projects.
Advanced data structures
What we recognise as the modern day computer only really started to evolve in the late 1970s and therefore programming as a discipline is still a relatively new and evolving field. As advances in technology mean our computers are becoming more powerful and we find more ways to use them to solve problems we also need to find more sophisticated ways of storing data to aid the problem solving process. This course will introduce you to advanced Lists and Dictionaries and give you the opportunity to explore Tuples. All vital tools needed in the modern day programmer’s toolkit.
As a budding programmer we already know we need to create programs that can be used not just by the technically competent but by all users. Using the inbuilt Tkinter library you will create graphical applications that only need to be coded once to work on Windows, Mac and Linux systems. You will learn to use buttons, text boxes and other graphical tools to make your programs user friendly.
What will I achieve?
By the end of this course you should be able to...
- Build sub-routines to improve good programming practise
- Use Modules to create your own code libraries
- Use inbuilt data structures such as Lists and Dictionaries
- Produce programs with Graphical User Interfaces for Windows, Mac and Linux.
What level is the course and do I need any particular skills?
You will need some background in Python either self taught or have completed an Introduction to Python course or equivalent. You will need to be able to:
- Use print() to give the user instructions
- Get input from a user using input()
- Create variables and collect and store data of different data types
- Use the if and elif for selection
- Use for and while loops
You should also be able to follow spoken instructions, read written instructions and information, and discuss work with your tutor in English.
How will I be taught, and will there be any work outside the class?
There will be some theoretical underpinning to the course, but it is nearly all practical, through teacher demonstration and practical programming and problem solving activities. There is no official work set outside the class but it is a good idea to practise the skills you have learnt to reinforce classroom learning.
Are there any other costs? Is there anything I need to bring?
Bring a USB key, pen and notepad for note taking. Computers are provided for each student.
When I've finished, what course can I do next?
Please click here to view our Programming courses.
Tim is a PhD candidate in the field of High-energy physics. He attained an MSci degree from Imperial College London with a thesis on the formation of exoplanet moons. He has studied Python in the context of physics simulations, data analysis, statistical modelling, and Machine learning. For the past three years he has taught A-level students, undergraduates, and some university staff how to use Python effectively for modelling and data analysis. He has also tutored a variety of students in physics and mathematics from KS3 level to first-year undergraduate. His supervision in the undergraduate computing and physics laboratories of Imperial College London earned him a nomination for a Student Choice Award. “I was not exposed to programming until starting my undergraduate, but mere weeks into my degree it became an invaluable tool which I have used ever since.”
Please note: We reserve the right to change our tutors from those advertised. This happens rarely, but if it does, we are unable to refund fees due to this. Our tutors may have different teaching styles; however we guarantee a consistent quality of teaching in all our courses.