Python is the future of coding

June 17, 2024

In recent years, Python has emerged as a leading programming language, with many predicting that it will become the language of choice for most developers in the future. This trend can be attributed to the law of least effort, as Python is known for its simplicity and ease of use. Just as Ruby on Rails dominated in the past, Python now seems to be its successor. Despite its growing popularity, Python has faced criticism for its slow performance, poor typing, and challenges in working with large codebases. Many experienced software engineers have expressed concerns about its suitability for serious projects. However, the rapid growth of Python's open-source ecosystem and its adoption by a vast community of developers have contributed to its unexpectedly fast growth. Recent surveys and studies have shown that Python's popularity continues to rise, with a significant increase in its usage across various domains, particularly in data science, machine learning, and web development. The Stack Overflow Developer Survey 2021 ranked Python as the third most popular programming language, with 48.24% of respondents reporting that they use it. While some large enterprises and VPs of engineering may be hesitant to embrace Python due to its perceived weaknesses, they often find themselves adopting it nonetheless. The reason? Python's extensive open-source ecosystem, with thousands of developers contributing to its growth, often outpaces the development speed of smaller, in-house engineering teams. This allows for faster feature velocity and access to a wide range of tools and libraries. Several companies have successfully capitalized on abstracting complexities into Python, finding product-market fit and raising significant funding:

Modal ($16M raised) - abstracts infrastructure into Python Reflex ($5M raised) - abstracts frontend into Python Transformers ($100M+ raised) - abstracts complex ML into Python FastAPI (funded by Sequoia) - abstracts web servers into Python Mojo ($130M+ raised) - abstracts systems engineering improvements into Python Streamlit ($30M+ raised, acquired for $800M) - abstracts app development/frontend into Python

For product-led growth (PLG) companies, Python remains the fastest way to adopt and grow initial traction before expanding to other tools. As enterprises develop their AI strategies, they typically choose one of three approaches:

Adopting Python internally and spinning them up as separate microservices Forcing AI engineers to learn Java or TypeScript and adapting agentic/RAG systems to them Building adapter layers between their main software teams, a Python ecosystem, and the rest of their codebase

Each approach has its trade-offs, but most teams and enterprises must choose one of these methods to effectively integrate AI into their strategy. While some may bet against the Python open-source ecosystem by opting for the second approach, this could be a risky move for most teams, considering Python's strong position in handling unstructured data, working with cutting-edge AI models, and easily incorporating new AI system designs and agent experiments. At Nullify, we carefully considered these options and determined that building an adapter layer (approach 3) was the most suitable choice for integrating Python's velocity with our more stable Golang codebase. While we cannot disclose the proprietary details of our adapter layer, it is clear that Python has become a necessary part of our tech stack to effectively build AI. As the Python ecosystem continues to grow and mature, it is likely that more resources will be invested in addressing its shortcomings and further strengthening its capabilities. While some may continue to bet against Python, the language's rapid adoption, extensive open-source ecosystem, and strong position in the AI domain suggest that it will remain a dominant force in software development for the foreseeable future.