Time: 18:00 - 21:15
Location: KS - Keeley Street
This course is FREE if a) you live in London and your job is at risk of redundancy or b) you are either on Jobseekers' Allowance (JSA) or Employment & Support Allowance(ESA) or c) you receive other state benefits (including Universal Credit) and your monthly take home pay is less than £343. For more information click here
This course takes place in the classroom, please follow this link to find out what we are doing to keep you safe: Staying COVID-19 secure at City Lit
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.
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?
Advanced Python, Data analytics with Python: introduction, Algorithms in Python, Introduction to machine learning.
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.