My Python Journey so far
- NalediumConcept Staff
- Jan 30, 2024
- 6 min read
Please be aware that this is a new site and still testing things out. Write up may contain unintentional grammatical errors.
A few years ago, I came across a small book by the title Mastery: The Keys to Success and Long-Term Fulfilment by George Leonard. The book made me consider which of my skills to develop and master. After reading the book, I understood three things. One is that making a change requires a sustained effort before you start to see effect – he called it homeostasis. In your journey to Mastery, you would reach a point when your skill appears to be stagnant – a plateau. The last lesson for me is that we shouldn’t underestimate the contribution of one’s temperament in the journey to Mastery. In all I have found these three points to be relevant in my journey to learn Python programming language so far.
A Sustained Effort
When I was a teenager, I decided to learn a programming language in addition to other skills that could take a life-time to develop. Naively I said to myself ‘I want to be a known contributor in the world of software and computing’. This stance was encouraged by a guy who suggested to “make your dream as big as possible that it scares you”. Well, I made my dream big and it probably scared me off at some level because I put my effort into the other skills instead while this aspiration remain dormant.
There were several attempts to follow this aspiration, give it a bit of live but first I would like to tell you how I was introduced to computers in the first place. I was introduced to computers at school as a young child by a contracting company that goes from school-to-school teaching computer to children. When a couple of white vans pass through the school and make a turn at roundabout that overlook the field you can be sure its Wednesday and the time is 10a.m.
These guys would quickly unload the desktop computers and move it to different classes. Every class had their designated teachers and assistant until the bell goes and its “Angelos” and we break for lunch. It is always an interesting time. As I recall, the only 2 hours, I don’t feel like sleeping in class. During this period, they would teach us some computer theory and show us how to play old computer games like prince of Persia (this was a while ago)
The teacher would define a computer as a “machine that accepts data, processes the data to give information” they made computer fun and interesting. They made it come alive. Especially when they told me to right click on the mouse to select an item on the screen. I am talking about the cathode ray screen that are as heavy as a dumbbell for the newly converted iron heads. What they didn’t say is that this is not fully automatic. Back then I thought the computer was alive and responding to my input. I was intrigued. It would take me several years to realise that it is the software that determines the response and my experience with the computer.
The Plateau
Fast forward several years I went to a venue that was created as a hub for computing and ran by a local charity this time I was able to sit behind a computer alone unlike in a class where a dozen student crowd around a computer with the screen and no one to instruct me on what to do and what to press. This time I was baffled the computer did not do anything. There was no games, no prince of Persia. I was disappointed and remember thinking that their computer is inferior to the one that was shown to me at school.
Thinking about it at the time, not having a personal computer really dampened my enthusiasm for learning. Retrospectively, I think I’ll probably would have spent the whole-time playing games if I had a computer at home.
It would be half a decade before I have access to another computer at the local internet café adjacent to a major University. The GUI is now more familiar. The internet had improved, one can browse the internet and avoid sites that just want to give you phones for free.
After a few more days of browsing on the internet. I landed on Python. I had a bit of reservation on the name because of my upbringing however I looked into it a bit more and I was liking how well reviewed the language was. Everyone agree it is a good starting language to learn. For me I just wanted to learn. Unfortunately, I had to abandon this journey to mastery about three times. The first one was that I had no patience, I just wanted the elements of the language to find their way into my head without the level of crazy effort, Also I couldn’t find books that break it down for me very well and also my Laptop computer at the time was so battered that it can not run anything order than DVD in real time so all the frustrations each time made me abandon this quest just to restart it again and again.
No Longer a dabbler
It was not until I started my PhD that I realised that a more powerful software than Microsoft excel is needed to plough through my data without freezing or crashing (Things that made me abandon it a few times. While my reason for learning Python is by chance, presently, its so that I can write my own programme when required, That I am not restricted by proprietary software. The other reason is that all my attempt to learn language to communicate with human also lose steam and the move to communicate with computer seems to be very interesting and I can also practice it by myself. Why you start something doesn’t always the reason to continue. Don’t fall for the sunken cost fallacy.
So why should you learn Python Programming language?
As I mentioned I started learning Python out of necessity to solve real problems that I have during my PhD and I have since graduated but I still study it now with the aim of knowing as much as I can to solve any problem that I have. Now I have met a few people say that some languages are best suited for different situation, that’s is true but I am committed to this one and I don’t want to divide my attention like I did a while ago trying to learn JavaScript.
Learning Python can be beneficial for several reasons, as Python is a versatile and powerful programming language. Here are some key reasons why learning Python can be advantageous:
Easy to learn – This is only because the syntax is simple to read nothing more. You can learn the same computer science principles or concept using Python.
Versatility: Python is like the Swiss army knife in terms of applications and this makes it a valuable tool in multiple industries.
Community and Support: Python has a large and active community of developers. This means that there is a wealth of resources, tutorials, and documentation available online. The community support can be particularly helpful for beginners and experienced developers alike which can feed into the ease of learning.
Libraries and Frameworks: Python has an extensive ecosystem of libraries and frameworks that make it easy to accomplish various tasks. For example, libraries like NumPy, Pandas, and Matplotlib are popular in data science, while frameworks like Django and Flask are widely used in web development.
Data Science and Machine Learning: Python has become the language of choice for data science and machine learning. Popular libraries such as TensorFlow, PyTorch, and scikit-learn are written in Python. Learning Python can pave the way for a career in these rapidly growing fields.
Automation and Scripting: Python is well-suited for automation and scripting tasks. It is used to write scripts for automating repetitive tasks, handling data, and managing system processes.
Career Opportunities: Python is in high demand in the job market. Many companies use Python for their projects, and proficiency in Python can open up opportunities in diverse fields such as software development, data analysis, machine learning, and more.
Compatibility and Integration: Python can be easily integrated with other languages and technologies. It has a C API that allows integration with C and C++ code, making it a suitable choice for projects that require interfacing with other languages.
Comments