Take Your Blinders Off

from brian curtin

Feb 23, 2016, 8:30:00 PM

Real life is happening all around us. Technology changes at an astounding rate. Companies refocus and change, or they die. The city you live in and the one you grew up in are probably different than they were a few years ago, especially if they're different cities. Yet it's all too easy for an individual to hold on to what once was.

I was recently perusing Reddit's r/Python [0], an online forum created to answer homework and "What IDE should I use?" questions, and a post on a new blog to be used by Microsoft's Python Engineering team came up. Wow, cool, something useful! I better read this one.

"The beast itself doesn't care about Python"

As with many family traditions passed down from previous generations, several people trotted out the "embrace, extend, extinguish" meme when they saw it was time for a discussion on Microsoft. One of them goes into detail on how the Three E's could play out, and it couldn't be disconnected further from reality. Having been a part of the core development team, jumping between active and passive over the years, I can't fathom how "[e]xtinguish Cpython (sic) by making MS-extensions mandatory via a deprecation cycle," could occur. That's just not how things work on this Earth, so it makes the example even more ridiculous. There is literally zero value to Microsoft as a company taking that extinguish step. I can't think of any possible extinguish step involving Python that would make sense for a modern day Microsoft.

Furthermore, an alleged former Microsoft employee doesn't even think the company could care about something like Python. On one hand it's slightly believable, as it's a huge company and no one person knows it all. However, the size of the blinders you'd have to be wearing in order to think that Microsoft -- an enormous software company with obvious roots in operating systems on the desktop, server, and in the cloud -- couldn't care about Python, must be huge. It's astounding, really.

It's 2016. Microsoft isn't staffed with the same group of people who years ago espoused the company's old school values at every opportunity. Steve Ballmer isn't in charge anymore; he owns the LA Clippers. "The beast itself doesn't care about Python, but I bet individuals at the company do," couldn't be more wrong if you've been paying any amount of attention. Through a lot of the work I've done, I've been exposed more to Microsoft caring about Python than I have any sort of consumer/producer relationship with them [1].

"Extinguish Cpython (sic) by making MS-extensions mandatory via a deprecation cycle."

Once upon a time, I was one of three CPython contributors actively looking after the Windows build, as my job at the time was at a Windows-using software shop and I was bringing Python into their QA department. I got to do some of my upstream work on company time, but in order to work on my own time I needed Visual Studio on my personal computer. After asking around, I was able to get a hookup via Microsoft's Open Source Technology Center. Since that time many years ago, I've been the CPython team's liaison, handing out somewhere near $400,000 worth of MSDN Ultimate subscriptions and renewals to CPython contributors and those running the CPython buildbot test fleet, courtesy of Microsoft.

It is well within Microsoft's interest to care about Python -- and to care about it in a non-extinguishing way -- which has been near the top of just about every attempt to measure programming language popularity since these metrics became a thing [2]. Throughout my time as a core developer and stretching into my time on the board of the Python Software Foundation, the download metrics [3] showing the growth of Python on Windows -- as in the count of Windows installers downloaded from python.org, sorted per-version and per-month -- were very valuable to the folks working on Python at Microsoft. This included when IronPython was still a Microsoft-funded initiative, as well as what used to be the Python Tools for Visual Studio team, which now seems to be under this Python Engineering team they have. The ability to show demand trends from Python's users on Microsoft platforms translates to those teams being able to spend more time giving Python users first-class support. Of the many things they do for Python and its related tooling, they directly support CPython by employing two core developers, something few other companies do [4].

Beyond supporting Python-the-software, Microsoft has been a supporter of Python-the-community for years. They were platinum sponsors of PyCon for years until 2015 when they became the sole Keystone sponsor. This year is their tenth year as a sponsor member of the Python Software Foundation. They are one of two sponsors of the NumFOCUS foundation. They donated $100,000 to the IPython project for its continued development. They've sponsored SciPy, PyData, and other conferences.

It's actually hard for me to think of a company that rivals the level of commitment to Python's future that Microsoft has had for years. To have people stuck on this old ass "embrace, extend, extinguish" meme from their parents, and to have people prefer that Microsoft stays away from Python, is mind numbing to still be reading. Take off the blinders and see what's happening in 2016 instead of what you heard about in 1996.

ps. I'm shocked that no M$ or M$FT or Micro$oft spellings showed up in that thread.

[0]I had an account and was once a moderator of r/Python, but that was years ago and it became a useless wasteland that I was sick of trying to clean up.
[1]I haven't used Windows since 2013, though I'm not opposed to it.
[2]They're all pretty bad measurements, but they're all roughly consistent, so maybe they're not bad after all?
[3]Which are now long gone, as the redesigned site is much more state-of-the-art and behind CDNs and all sorts of other fanciness. The old site just used webalizer to parse the single web server that was serving up the download files.
[4]Even hiring one person to spend time upstream on Python is a rarity.