Introduction to this section.

Note: Please read this carefully, this guide will teach you how to go through this section in an effective way.


This section is designed to take your Python skills to a completely new level.

Unlike other sections of the course, this sections demands you to do the work and write code instead of me.


How this section would enhance your skills:

A programmers job is not to write code but to think critically to solve a problem. 

This section is not to test your coding skills but it is designed to make you think critically about a problem. 

A lot of courses have coding challenges which are relatively easier to solve but you wont gain much skill solving those challenges. If you easily solve a challenge means that you already knew how to solve such problem and it didn't force you to think.

 Some of the challenges in this section need less critical thinking while others need more. These challenges are not designed to quickly get them done and move ahead, they are here to make you aware of how to approach a problem.

Do not start writing code right away.

Before you start writing code, I want you to think deeper about the problem and have a specific approach to solve the problem. I would recommend you to grab a pen and paper and layout the problem and try to solve it on paper first. Simply layout the steps and then move ahead.

There are no solutions provided for the challenges:

No solutions are provided for these challenges and hence you cannot compare your final solution with mine. Because thats not the purpose of this challenge. Many students are compelled to look at the solution and then start with the problem, however that completely spoils the need to think critically.


You need to do some research:

Some of the coding challenges need you to research information over the internet. I have purposely designed some challenges in such a way because while tackling any challenge we might not have all the information we need.

Ability to find such information over the internet is extremely crucial as a developer. For example in some coding challenges you will need to perform something in Python which is not taught in the course. You need to figure that out on your own.


Lets get started:

Now that you are ready, lets get ahead to the next lectures and solve some problems.