Welcome to the Python Engineering blog


We here on the Python team at Microsoft are starting a blog. And since this is the first post, we wanted to give a bit of an introduction of who we are, what we do, and what this blog is for.

Microsoft has a Python team?

Yes, we do! We are part of the Data Group in Azure, the same group that brings you SQL Server, Azure ML Studio and Cortana Analytics Suite. Python is obviously a big part of data science these days, and so it's great for us to be located so close to the teams that are really advancing the field.

You may have already seen Jupyter Notebooks in Azure ML Studio and the Cortana Analytics Gallery - that was us. We've also collaborated with other teams to bring the Azure ML data access SDK for Python, so you can programmatically bring your data sets in and out of Azure ML Studio.

Besides our data-focused work, we also work with the Visual Studio team to provide Python support through Python Tools for Visual Studio, which you can get in any of the free (or paid) versions of Visual Studio 2015.

We also help out other teams at Microsoft to improve their Python support, so you can use Python in Azure App Service, for Application Insights, Windows IoT, or to manage all of your Azure services with the cross-platform Azure SDK for Python.

And we work with groups in the community, whether that's sponsoring the Jupyter/IPython project, hosting PyLadies events, supporting PyCon US or hosting PyData Seattle in our conference center.

Why do you need a blog?

Because we have so much to tell you! Obviously we want to have our own home to announce product releases and updates, but there's so much more.

As part of, ahem, "testing our products", sometimes our engineers write cool side-projects. So if you want to play with speech recognition and natural language processing in Python, you can grab the Project Oxford package we wrote for a demo. Work with Excel a lot? You may find PyVot interesting. Or if you have a Kinect, you can use our PyKinect2 libraries with them. These are not official products and they are basically unsupported, but they're out there for sharing (by the way - they're all on GitHub if you'd like to help flesh them out).

We also get to speak at various conferences, mostly about Python, and sometimes we just make short training videos. How else are you going to find these if you're not following our blog?

Some members of our team are also CPython core developers, and may have reputations for being snarky Canadians. I'm sure they have interesting things to discuss, but we'll tag them with a "snark" warning so you can choose whether to read them or not.

Finally, we want to capture Python engineering stories. We'll be going around Microsoft to the teams that are using Python for awesome stuff, but we'd also love to share customer stories (with permission, obviously). So if you've done something awesome with Python, Azure, Visual Studio, or Azure ML and want to brag about it, email us at python@microsoft.com and suggest it. We can't promise to publish everything, but we'd love to hear about it regardless.

How can I keep up to date?

Over to the right of this page (or at the bottom if you're on a small screen) is our RSS feed. You can also follow @pt4vs on Twitter to get notifications whenever we post something new.

Most of our team also use Twitter for everything from Python to puppies, and you can find us on this list. Or comment on any post if you have follow-up questions or suggestions.

We already have a backlog of content to share here, so we hope to see you again soon.

Comments (18)
  1. Owais Lone says:

    For the love of the Dutch. Please fix the typography on this blog.

    1. The blog is specifying Segoe UI Light, without sans-serif as a fallback, which is why it looks horrible on Linux:


    2. Thanks for the info! We’re not directly responsible for the theme (the designers wisely don’t let the engineers design their own blog), but we’ll get that fixed as soon as we can.

      1. Uglycoyote says:

        Designers need to get their act in gear.the font seems fine to me but for some reason designers seemed to think it would be hot stuff if the blog showed up microscopically in the left 1 inch of my screen while the remainder of the space on the right was just this dead block of utterly useless dark grey. This is on chrome on Android by the way. You would think with all the cash at Microsoft they just *might* be able to afford someone with some web design talent but it seems not to be the case sadly for you guys. Great blog though, otherwise!

  2. fm says:

    where’s the rss feed for this blog? I only see one for post comments

    1. The big orange icon should be the one for all posts (I can’t even find the comments one, but maybe it’s not showing up on my phone?)

      1. fm says:

        I’m not seeing any orange icons here, or https://blogs.msdn.microsoft.com/pythonengineering, nor do I see any atom/rss references in the page source. Can you share the direct rss link you’re seeing?

        1. Sure, it’s https://blogs.msdn.microsoft.com/pythonengineering/feed/

          Maybe there’s another page layout that I’m not aware of that doesn’t have the link…

          1. fm says:

            Great, thanks!

  3. Glad to hear Microsoft has a python team. I’ll definitely check out the Project oxford package 🙂

  4. Robert says:

    Cool, looking forward to it!

  5. James says:


  6. Tim Fiola says:

    Glad to see this blog here. I’m new to Microsoft. I’ve got a good amount of Python experience but am a bit sad to see that it’s not more widely used at Microsoft just yet.

    I just checked out the posts and those modules look really cool. I’m looking forward to testing some of those out at some point!

  7. Aliyu Isah Agaie says:

    Nice to know MS is part of the Python family. I will be watching this space…

  8. ryan says:

    self.__recognizer.LoadGrammar(Grammar(GrammarBuilder(Choices(File.ReadAllLines(@”txt file location”)))))

    can anyone please assist me with the code above I converted it over from C# to ironpython and I would like to know
    what I’m doing wrong here with this line of code. basically I’m setting this up to read from a txt document
    with a list of commands. (if more info is needed please let me know) I’m pretty new to programming BTW. Thanksforanyhelp!

    1. Hi Ryan

      You’ll need to take this to the support forums for the library you’re using (I don’t recognise it from that snippet), or possibly the mailing lists for IronPython (see http://ironpython.net/).

      1. ryan says:

        Steve thank you so much for taking time to respond. I greatly appreciate you. I will follow your link but here is the code
        In C#
        private void Form1_Load(object sender, EventArgs e)
        _recognizer.LoadGrammar(new Grammar(new GrammarBuilder(new Choices(File.ReadAllLines(@”txt file location”)))));
        _recognizer.SpeechRecognized += new EventHandler(_recognizer_SpeechRecognized);

        def Form1_Load(self, sender, e):
        self.__recognizer.LoadGrammar(Grammar(GrammarBuilder(Choices(File.ReadAllLines(@”txt file location”)))))
        self.__recognizer.SpeechRecognized += self._recognizer_SpeechRecognized

        Thanks for the link.

  9. otuomasp says:

    I am reading almost everything I can get on http proxies in python for a project I am working on. Just wondering if u guys have anything on that?

Comments are closed.

Skip to main content