Last week I published an article talking about how I learn a new programming language. To prove my point, I decided to start a new series on my blog where I learn a new programming language. In this case, I'm gonna start with Python.
Python and I met a long time ago. It was one of my first contacts with software development. At the time, I didn't pay much attention to it and decided to learn PHP instead. Now with its increasing popularity, I decided to take another shot.
Following the principles of my last article, this is the first article from a series where I go deep into learning Python and applying it in real-world scenarios. Sit tight.
Why Was Python Created?
Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python's design philosophy emphasizes code readability with its notable use of significant whitespace. Its language constructs and object-oriented approach aimed to help programmers write clear, logical code for small and large-scale projects.
After reading its description, one thing that caught my eye was the "interpreted" part. That means the code must be read and interpreted by its underlying engine. I believe that is the only downside of using Python on a large scale or with more heavy-duty tasks.
Here are a few links to back my point:
What Are Its Main Features?
Now that we know Python runs slower than compiled programming languages, what about the advantages? I can assure you that are many.
My second favorite feature is not specifically about Python because it envolves all interpreted languages. The fact that Python is interpreted, it gives us power and flexibility to change its runtime, debug code and override the language itself. That is powerful.
Here are a few more:
- Easy to learn and use
- Open Source
- Easy integration with other languages
- A large variety of stand and community libraries
Learning The Code Syntax
I ain't gonna tell you that I mastered Python's code syntax in a week, but after solving a few Project Euler's problems I few comfortable on taking more complex problems and projects.
As the problems grow harder, I start to do more research on how to solve the problems more elegantly and efficiently. That is just the way it is. You first solve the problem and then you refactor to a more elegant solution.
I have a few more long weeks to go, but it has been fun so far.
This first week trying to catch up with Python has been fun. I am excited about the upcoming weeks. I already have an idea of a project where Python fits perfectly.
If you liked this article and want to see my progress, tune in next week where I will be learning about Python's community and ecosystem. I'm gonna share a lot of resources I will come across along the way.
See you then!