Grafvision - Fotolia
Google and Microsoft are investing heavily in the future of the Python and Rust programming languages.
Microsoft has joined Mozilla, AWS, Huawei and Google as founding members of the Rust Foundation. In addition, Google donated $350,000 to the Python Software Foundation (PSF), making the company the organization's first visionary sponsor. Other PSF sponsors include Salesforce, a sustainability sponsor contributing $90,000. Microsoft, Fastly, Bloomberg and Capital One are maintaining sponsors contributing $60,000 apiece.
Impact on standards
Corporate sponsorships of foundations that support different technologies have long been a way for companies to influence standards.
"Both of these decisions are illustrative of a desire to steer the evolution of each respective language," said Arnal Dayaratna, an analyst at IDC.
Regarding Python, for example, Google is investing in improved PyPI malware detection, better foundational Python tools and services, and hiring a CPython Developer-in-Residence for 2021. PyPI is the Python Package Index.
"In the case of Microsoft and Rust, the motivation is analogous but more strategic and long-term focused, for the time being," Dayaratna said. "The obvious concern here is that the evolution of languages gets corporatized to the point whereby the language clearly benefits one vendor over another. Seen from another angle, it's a good thing that these languages have commercial relevance and can be steered in the service of enterprise-grade products and services."
Open source culture steps in
In the past, enterprises would duke it out over standards that would benefit one company to the detriment of another. But the world of open source seems to have tempered that attitude among vendors.
Involvement, particularly early involvement, in open source software carries more weight than ever, because it demonstrates a vendor's influence in guiding which direction pivotal technologies will take, said Charlotte Dunlap, an analyst at GlobalData in Santa Cruz, Calif.
"Kubernetes, for example, which originated with Google, has turned into the guiding force by which enterprises deploy and manage containerized apps, which are at the heart of app modernization initiatives," she said.
Rust at Microsoft
Microsoft has shown an interest in Rust, particularly for writing secure code. In fact, Ryan Levick, principal cloud developer advocate at Microsoft, said he believes Rust programming changes the game when it comes to writing safe systems software, in a blog post.
"As Rust usage in Microsoft grows, we know it is not enough to only use it as open source software. We must also contribute back to it," added Nell Shamrell-Harrington, principal software engineer at Microsoft, and board director at the Rust Foundation, in a blog post. "Joining the Rust Foundation is a way for us to financially support the project, contribute back to the project, and engage more deeply with the Rust community."
To carry on with their work creating and developing standards and innovations, foundations need money. "Tech vendors seem to have found a heart recently to fund foundations, mostly because they need the standards to interoperate to protect investments and at the same time to keep projects going and innovating," said Holger Mueller, an analyst at Constellation Research in Cupertino, Calif.
However, the value of language-specific foundations is to provide a neutral home for the language's definition and implementation, said Mike Milinkovich, executive director of the Eclipse Foundation. In some instances they also host registries of packages and extensions that help accelerate development with the language. In most cases, companies act to support these foundations because they see value in the language itself.
"For example, Rust has rapidly built a great community and use of the language for development of both microservices and systems software," Milinkovich said. "Python is the leading development language for artificial intelligence and machine learning. Companies want to ensure that the vendor-neutral home for these languages, their compilers, and their runtime libraries have the funds necessary to act as responsible stewards for their technology communities."
Meanwhile, Microsoft is forming a Rust programming team to contribute engineering efforts to the language's ecosystem, focusing on the compiler, core tooling, documentation and more. Last year, Microsoft started sponsoring Rust's CI costs and Amazon began paying Rust's S3 bills in 2019.
"It seems like these foundations have two interdependent purposes: to drive adoption and ensure independence from vendor influence," said Eric Newcomer, CTO at WSO2, based in Mountain View, Calif. "But then I guess if you are donating or leading the foundation, you can help steer the language. They sound a lot like the old standards bodies in that way."
Newcomer said WSO2 has not yet considered a foundation for its Ballerina programming language.
Python at Google
For its part, Google has been a financial supporter of the PSF and its programs since 2010. Many Googlers also participate in the Python community as volunteers by helping maintain infrastructure and projects, organizing Python events, serving on the PSF board, and assisting in specialized work groups.
"Python is popular inside of Google," said Dustin Ingram, a senior developer advocate at Google who also penned a blog post about Google's sponsorship. "Google engineers use Python for a variety of tasks, from writing big applications such as YouTube, to writing glue code, to developing dashboards. In addition, Python helps power runtimes for a number of Google Cloud products that developers can use to deploy Python code, such as App Engine and Cloud Functions."
Arnal DayaratnaAnalyst, IDC
Even Oracle, which owns Java, enables others to participate in shaping the language through the Java Community Process (JCP). The JCP is the mechanism for developing standard technical specifications for Java technology.
"That said, there are a multitude of other voices and opinions about the evolution of languages that do not get a seat at the table because of a lack of resources," IDC's Dayaratna said. "I imagine there are ways to render the process of influencing the evolution of programming languages more democratic, and less dependent on large, extremely well capitalized companies."