About this course
The Python Level I Course is an introductory hands-on, in depth guide to the Python programming language designed to give you a solid foundation in computer programming. It is delivered through online lectures, continuous assessment tests and programming challenges culminating in a mini-project. Through this course you will receive personal attention from the instructor together with tips and tricks that will fast-track you in your learning journey.
Through this course you will discover a systematic approach to logical problem solving that can be applied to virtually any domain.
This course consists of:
- Seven (7) 1.5 hour live online lectures, which will also be streamed live and freely available on YouTube.
- Capacity for 20 students.
- A weekly 20 question multiple-choice quiz to test your grasp of the main concepts.
- A weekly 10 problem programming challenge of increasing difficulty for which you will receive personal feedback on your attempts.
- A mini-project in an area of your interest at the end of the course.
- A personal endorsement from the instructor attesting your performance on the course.
- You will develop a personal portfolio of your code on Github.
- You will be included in a Google group where you can discuss challenges as well as receive group feedback from the instructor. This Google group will also be where you will receive regular programming challenges to solve and discuss with your peers.
- Classes are scheduled to run on Saturday mornings from 10.30am-noon (EAT).
- Week 1: Basic Linux, using git to track changes, why Python
- Week 2: Python program structure; input/output; atomic data structures; basic operations
- Week 3: Lists, tuples, exceptions
- Week 4: Dictionaries and sets
- Week 5: If, for, while constructs
- Week 6: Functions
- Week 7: Files, project tasks and your future learning journey
Who is this course for?
This course is ideal for anyone who has always been interested in automating repetitive tasks. You will particularly benefit if you are undertaking a course that has a significant analytical component such as science or engineering or work in such a field and would like to include computational analysis. Priority will be given to those with excellent academic credentials at any level.
What do I need to attend the class?
You need access to an Internet-connected computer to attend the lectures. Alternatively, you can view the videos from YouTube live or afterwards. However, you will only be able to ask questions live by attending the online lectures.
How many places are available?
There will be room for 20 students only. The personal nature of the course limits the class size because of the demands on the instructor.
How much time will it need?
If you are accepted you will be required to devote at least six (6) hours per week. This will consist of the hour and a half lecture and time to do the tests and programming challenges.
What’s special about this course?
There are literally thousands of Python courses online. Most of them consist of the author providing everything the instructor knows about Python leading to overwhelmed students and little learning. Almost all online courses are provided purely through videos with no personal instruction from the creator. This course differs in both the depth and attention each student receives. We believe that the best learning happens under the watchful eye of a skilled practitioner to nudge you step-by-step in the right direction.
In this course you will receive:
- A strong emphasis on the fundamentals through repeated practice.
- The benefit of the instructor’s 20 years of experience.
- Weekly quizzes to assess your appreciation of the core concepts.
- Weekly programming challenges with detailed feedback.
- A mini-project to apply your new skills in a real-world task.
- A personal endorsement from the instructor on your learning achievements.
What is an endorsement?
As this course is offered as a personal training exercise, the instructor will issue an endorsement – a formal letter outlining the course material as well as your performance throughout the course. This letter will be an attestation that you have mastered the concepts of the course.
When is the next session of this course?
At present we have only planned a single run of the course. Future sessions will be communicated at a later date.
What comes next?
We are still designing the Python Level II Course, which will focus on object-oriented design. Keep an eye open for that. Python Level II Course will be for those who have successfully gone through Python Level I Course or who pass a screening test.
About the instructor
Paul has been programming for close to 20 years beginning from his early days using Pascal then moving on to C, where he wrote programs for image processing. He learned Python in 2009 as part of a rigorous mathematics course at the African Institute for Mathematical Sciences in Cape Town, South Africa and fell in love with the language. Paul completed a PhD in Computational Biology at the National University of Ireland, Galway in 2014. He currently works as a scientific software developer at the European Bioinformatics Institute in Cambridge, UK.
Paul is a passionate and patient instructor eager to share his considerable experience to develop the next generation of scientists and engineers to expand their technical abilities by applying the latest computational skills.