The Python programming language, which has never been more popular, arguably thanks to the rise of data science and AI projects in the enterprise, officially turns 30 years old tomorrow.
One of the five members of the 2021 Python Steering Council within the Python Software Foundation is Pablo Galindo, a software engineer at Bloomberg, who spoke with VentureBeat about the inherent challenges of enabling a language to grow and evolve without sacrificing backward compatibility.
This interview has been edited for clarity and brevity.
VentureBeat: How did you first get involved with Python?
Pablo Galindo: I was doing my first year of [my] PhD when I was in Granada. My background is in physics. I used to simulate black holes. The code that normally goes into simulations is compiled in C and C++. Python was a fantastic language to kind of wrap simulation code. I very quickly fell in love with the syntax and the power that it has.
VentureBeat: Has the popularity of Python surprised you?
Galindo: I will say for sure. It surprises me [that] this is still one of the most used languages in the world.
VentureBeat: What are some of the most common use cases for Python within Bloomberg?
Galindo: We actually use a lot of Python. There are 2,000 developers using Python. The use cases are quite broad. We use Python for things like machine learning models or service-oriented architecture. We have also used Python for a lot of internal user experience tools and developer tools. We also use Python for data transformation.
VentureBeat: What’s your current assessment of Python?
Galindo: Python is a very mature language, and it has evolved. It also has a bunch of things that it carries over. Python has some baggage that nowadays feels a bit old, but the community and the ecosystem has to be preserved. It’s similar to how C and C++ are evolving right now. When you make changes to the language, it’s quite dangerous [because you can] break things. That’s what people are scared of the most.
But even though Python is quite old, there are big changes. The Python 3.1 release for this October will include pattern matching, which is one of the biggest syntax changes that Python has seen in a long time. We can learn from other languages. I think we’re happy to say that we are still evolving and adapting. We have a good experience with respecting the importance of backwards compatibility.
VentureBeat: If you could be Python king for a day, what would you change?
Galindo: I would be a horrible King for a day. The first order of business would be to fix all these things that we have acquired over the years in the language. That would require breaking a bunch of things. Obviously, I will not do that, but I think one of the things I really would like to see in the future is for Python to become faster than it is. I think Python still has a lot of potential to become faster. I’m thinking this will be impossible. But one can dream.
VentureBeat: What do you know now about Python today that you wish you knew when you first began using it?
Galindo: I think the most important thing I learned is how many different uses there are for Python. It’s important to listen to all these sorts of users when considering the evolution of the language. It’s quite surprising and quite revealing to consider how changes or improvements will conflict or will interact with other users of the language.
That’s something that when I started I didn’t even consider. It would be good if people could be empathetic to us changing the language when we have to balance these things.
VentureBeat: What’s your best advice to the leaders of organizations that have adopted Python?
Galindo: It’s important to explain in a compelling way to the decision makers of the organization what are the advantages of Python compared to something different. They need to specifically understand how the ecosystem and the languages will transform the organization.
The key here is making developers more proactive. Productivity not only means producing more; it is pretty difficult to compete with the speed to market of something that can iterate as fast as Python.
The second important thing is the happiness of the developer. Writing code for a developer is a way of expressing themselves. A developer can express themselves in a compiled language. It is kind of more difficult, because the interaction cycles are longer and less interactive. In Python, the syntax doesn’t get in the way. You can say what you want very easily, and experiment.
VentureBeat’s mission is to be a digital town square for technical decision-makers to gain knowledge about transformative technology and transact.
Our site delivers essential information on data technologies and strategies to guide you as you lead your organizations. We invite you to become a member of our community, to access:
- up-to-date information on the subjects of interest to you
- our newsletters
- gated thought-leader content and discounted access to our prized events, such as Transform
- networking features, and more