My experience learning Python
Hello everyone,
Today I will be talking about my most recent challenging learning experience.
First, let me give you a background of myself.
My name is Fadojutimi Temitayo. I am a software developer with 6 years working experience and I dedicate my expertise to solving practical problems in the society. In 2011 when I learnt Web Development using PHP as the programming language, I thought that was the best thing to have ever happened to me after Nigerian Jollof rice.
I was marveled by the fact that I could create a website from scratch, not depending on using wapsites like Wapka.mobi and muf.mobi. From 2011 till now, I’ve built both simple and what others consider complex web applications ranging from a bus ticketing software, loan management software, school management software, social media for education institutions and students, among others using both PHP procedural and object oriented programming (codeigniter3).
I have interest in Artificial Intelligence/Robotics so in 2015, I learnt Java, by reading multiple tutorials online, so I can use it to program Arduino components and for developing Android apps. It was a whole new experience; I got introduced to some concept I didn’t know before especially OOP.
I learnt that in java, you have to declare a variable before accessing it. This and more made it look complex to me considering my previous background in PHP where you can declare and initialize a variable at the same time. I persevered and finished learning Java. Did a small project and that was it.
Same year in 2015, a friend introduced me to Python programming language but wasn’t interested in it since I was still daunted by Java.

Fast forward to June, 2017, my team was invited to the Presidential Enabling Business Environment Council Hackathon organized by The Presidency, Federal Republic of Nigeria and hosted at the Andela headquarter in Lagos, Nigeria. Prior to then, I’ve heard a lot about Andela and how they build and connect software developers with companies all over the world so it was a great opportunity for me to learn more about them at the hackathon.
After the hackathon and after reading about Andela, I registered for the Andela fellowship circle 25 on the 28th June, 2017 and I got the homestudy test invitation link a day after and it was to be submitted by July 7. That’s less than a week and a half.

The Andela homestudy curriculum is a list of carefully curated links on the different topics in Software Development and Programming. Each link explains each topic in a simple and easy to understand manner. Thanks to the Andela team for this.
With no prior experience with Python programming language, no power supply in my area, faulty power generating set, among others, how will I meet the deadline?

The first thing I did was to get one of my friend to lend me her power bank so I can always access the homestudy curriculum on my phone. And then I figured out the curriculum website wont open on my Microsoft Lumia phone. So what I did was to copy and paste each page of the homestudy curriculum including their links in a word document then I converted it to a PDF document and sent it to my phone.
Once that was done and after I had studied section 1; Intro to Computer Science and section 2; Introduction to Programming, I decided to have a look at the homestudy test so I can have an understanding of how questions are being asked, among others.
I found out that questions are categorized and asked based on each sections in the homestudy curriculum. So I can read Section 1, for example, take the test, logout and move to the next section.

Let me state unequivocally that, Python is the best thing after Nigerian Jollof rice. Of course, unless you are a programmer and perhaps have been using PHP or any other low level language for sometime, you will agree with this. Well, this is not a PHP vs Python war. PHP has its own use cases and it’s very good at that.
While learning Python, I got introduced to a lot of new concepts that at first, it seemed weird but I got used to them later. The first thing to note while learning Python is that Python uses indentations and not curly braces. You can use a variable without first declaring it. Also, a comma must precede a single-element tuple. Comparing Python with PHP, dictionaries are arrays with keys enclosed in curly brackets while lists are arrays without keys explicitly defined and are enclosed in square bracket. Also, tuples are immutable; you cannot change them. And some other interesting details.
After days of reading, coding, making mistakes and correcting them, I finished the homestudy test few days to the deadline. I think it was a day or two.
Now I have a good understanding of Python programming language, Data structures and other concepts.
I am currently working on a small project using Django. It’s a simple Customer relation management. I am also diving into Machine learning.
This was challenging to me because, I had limited time and resources before the deadline and I learnt what I considered difficult to learn two years earlier within a week and a half. There’s still room for improvement though.
So if you are thinking of learning Python, don’t get scared. It’s a beginner’s language so you are sure of having a good knowledge of it within days.
Also remember that, when challenges come, our resilience have to bounce back.