Slashdot Mirror


How Microsoft Embraced Python (medium.com)

Steve Dower, a Python developer at Microsoft, describes how the language become popular internally: In 2010, our few Pythonistas were flying under the radar, in case somebody noticed that they could reassign a few developers to their own project. The team was small, leftover from a previous job, but was chipping away at a company culture that suffered from "not invented here" syndrome: Python was a language that belonged to other people, and so Microsoft was not interested. Over the last eight years, the change has been dramatic. Many Microsoft products now include Python support, and some of the newest only support Python. Some of our critical tools are written in Python, and we are actively investing in the language and community....

In 2018, we are out and proud about Python, supporting it in our developer tools such as Visual Studio and Visual Studio Code, hosting it in Azure Notebooks, and using it to build end-user experiences like the Azure CLI. We employ five core CPython developers and many other contributors, are strong supporters of open-source data science through NumFOCUS and PyData, and regularly sponsor, host, and attend Python events around the world.

"We often felt like a small startup within a very large company" Downer writes, in a post for the Medium community "Microsoft Open Source Stories."

24 of 163 comments (clear)

  1. Microsoft only embraces things... by MikeDataLink · · Score: 2, Insightful

    that give them a competitive edge. The second they get the marketshare they want in an area support for other competing products is eliminated.

    --
    Mike @ The Geek Pub. Let's Make Stuff!
    1. Re:Microsoft only embraces things... by arglebargle_xiv · · Score: 3, Funny

      I'd rather a Python embrace Microsoft... and squeeze... and squeeze... and squeeze...

    2. Re:Microsoft only embraces things... by Antique+Geekmeister · · Score: 2, Offtopic

      Microsoft has also been known to _steal_ technologies that had a competitive edge. It may be difficult prove the theft of the GUI from Xerox, but the theft of VMS source code and technologies to create the NT kernel was clear. David Cutler and his team took a great deal of copyrighted code and patented technologies and trade secrets with them, from their work on VMS and it's canceled followup projects Mica designed to run on the new Prism hardware. While Intel was stealing Alpha technologies to create the Pentium chip, Microsoft was stealing the core VMS technologies to create NT. The combined theft created the "Wintel" commercial juggernaut and bankrupted DEC. There have been other thefts since then, but I've not personally seen any thefts as thorough and outrageous as those.

      With Python integration, I'd be concerned that they'll create incompatible, proprietary aspects in their classic "embreace and extend" approach, where the "extend" part adds unrequested features that break compatibility.

    3. Re:Microsoft only embraces things... by K.+S.+Kyosuke · · Score: 2, Funny

      that give them a competitive edge.

      You meant a competitive chrome?

      --
      Ezekiel 23:20
  2. Oops. by msauve · · Score: 2, Funny

    "In 2018, we are out and proud about Python"

    Careful, or some SJW will accuse you of cultural appropriation.

    --
    "National Security is the chief cause of national insecurity." - Celine's First Law
  3. didn't they first tie a version only to Windows by Locutus · · Score: 2, Interesting

    I thought they first took python and hooked it into a bunch of Microsoft One Way products and called it iron python or something like that.

    Most likely the only reason why Microsoft might now accept and embrace standard Python now is because, like Linux, they can't ignore what the rest of the world is doing any more. The desktop control doesn't have the power it once wielded.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
    1. Re:didn't they first tie a version only to Windows by Undead+Waffle · · Score: 2

      Yes, they had Iron Python. Then they decided to drop it and eliminate that team. Last I checked some of the developers still worked on it in their free time but it was way behind.

      Which is a little annoying because if you're mixing languages the integration between Python and C# is nonexistant.

    2. Re:didn't they first tie a version only to Windows by Actually,+I+do+RTFA · · Score: 3, Insightful

      IronPython sounded great. It used the same .NET virtual machine as C#, F#, etc. So it was designed for interoperability with other MS languages. It's great if your team is already using C# and you want to write python to integrate various modules (like if you had a bunch of C libraries and wanted to use regular python.)

      The guy in charge of the project got let go like a decade ago and now it's OSS on GitHub.

      --
      Your ad here. Ask me how!
  4. In jungle by Kohath · · Score: 4, Funny

    Python embraces you.

  5. Microsoft by sit1963nz · · Score: 2, Insightful

    Embrace, Enhance, Extinguish.

    1. Re:Microsoft by Anonymous Coward · · Score: 2, Funny

      Dear Microsoft,

      Please, please, please extinguish Python.
      It's not dead yet, but it should be.

      -Signed,
      AC Representing People Who Hate Whitespace-Sensitive Programming Languages

    2. Re:Microsoft by Bongo · · Score: 3, Funny

      { AC { Representing { People { Who { Hate { Whitespace-Sensitive } } } } Programming } Languages }

  6. Comment removed by account_deleted · · Score: 2, Insightful

    Comment removed based on user account deletion

  7. Why the unmarked commercial advertisement? by hdasch · · Score: 2

    Reads like a paid infomercial.

    1. Re: Why the unmarked commercial advertisement? by bogaboga · · Score: 2

      Reads like a paid infomercial

      Please be serious...and who'd be the beneficiary party exactly?

  8. Why Python? by guruevi · · Score: 3, Insightful

    I just don't see what other people see in the hype of Python. It has poor backwards compatibility (Python 3 != Python 2), it is single-threaded like JavaScript and it's pretty slow all around unless you code all your libraries in C (and throw away all the stuff that makes it Python)

    Sure it's easy to learn, but then so is JavaScript, PHP and Perl.

    --
    Custom electronics and digital signage for your business: www.evcircuits.com
    1. Re:Why Python? by Actually,+I+do+RTFA · · Score: 4, Insightful

      Unlike JS, PHP or Perl, I actually know people who make C libraries and hook them into Python. It's a great way to do small, high-level things that tie together many components quickly.

      --
      Your ad here. Ask me how!
    2. Re:Why Python? by roskakori · · Score: 4, Insightful

      It has poor backwards compatibility (Python 3 != Python 2)

      This is mostly an issue if you mix Python versions. These days reasonably modern shops tend to solely use Python 3.

      (It is definitely annoying though if you never got the budget to migrate your legacy project from Python 2 to Python 3 or if you do operations work on some ancient box that only includes Python 2.)

      it is single-threaded like JavaScript and it's pretty slow all around unless you code all your libraries in C (and throw away all the stuff that makes it Python)

      Many classic Python usage scenarios simply use Python libraries that wrap C libraries. Most important everything related to data science and machine learning. There Python is used to express business logic and C libraries do the actual computation.

      Apart from that, there are plenty of scenarios where Python is "fast enough" and you don't really care if you get the result in 0.001 seconds or 0.005 seconds.

      It's really about picking the right tool for the right job. And sometimes faster development time is more important than faster execution time.

    3. Re:Why Python? by gweihir · · Score: 2

      Indeed. Python is great for glue-code and great for prototyping those C libraries. In particular, you can code almost anything really fast, if speed matters little. Once the code works, you can port the critical parts over to C pretty easily and can use the Python code as the basis for some nice randomized testing or as "contracts" in addition.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    4. Re:Why Python? by drinkypoo · · Score: 2

      Unlike JS, PHP or Perl, I actually know people who make C libraries and hook them into Python.

      I don't personally know anyone who does that for other languages, but CPAN was chock-full of examples of that for Perl before PHP even existed. I believe that if mod_perl wasn't such a PITA, PHP probably wouldn't even exist today.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    5. Re:Why Python? by PPH · · Score: 2

      This is mostly an issue if you mix Python versions.

      So what do you do if you have many millions of lines of code released under strict configuration control* in the old language version?

      *Developed and tested per DO-178 as required by the FAA. Not cheap to re-certify.

      --
      Have gnu, will travel.
  9. Re:You mean.... by Anonymous Coward · · Score: 4, Insightful

    And you can keep that kind of thought where it belongs, behind closed doors. NO ONE thinks code references to "master/slave" literally means the same as human slavery. Reminds me of a coworker who got angry at the term "orphan" because SHE worked with orphan children. The idea that orphan document was completely different from a human child was something she couldn't accept. Orphan child process set her off the deepend though. At that point we may or may not have given up on her stupidity and used every opprotunity we could to use the terms (correctly of course), but no one cared when she was canned.

    Bottom line, sjw correctness is a cancer that spreads.

  10. WSOD by Tablizer · · Score: 2, Funny

    White space of death

  11. Re: You mean.... by ph1ll · · Score: 2

    Similar experience: a technically illiterate boss blocked us fron using Git for months because 'git' is a childish insult in British English. He couldn't believe a polished piece of software would have a name like that. Explaining that Apache software did not derive its name from Native Americans but was a play on words of "a patch" for buggy software didn't help.

    --
    --- "We've always been at war with Eastasia."