{"id":83648,"date":"2020-10-30T10:26:31","date_gmt":"2020-10-30T17:26:31","guid":{"rendered":""},"modified":"2025-06-23T11:40:12","modified_gmt":"2025-06-23T18:40:12","slug":"announcing-net-apache-spark-1","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/","title":{"rendered":".NET for Apache Spark hits v1.0"},"content":{"rendered":"\n<p>About two years ago, we heard an increasing demand from the .NET community for an easier way to build big data applications with .NET, outside of needing to learn Scala or Python. Thus, in a collaboration between Azure Data and .NET teams, we started the .NET for Apache\u00ae Spark\u2122 open source project.<\/p>\n\n\n\n<p>Today, we are happy to announce the release of version 1.0 of <a href=\"https:\/\/dot.net\/spark\" target=\"_blank\" rel=\"noopener noreferrer\">.NET for Apache&nbsp;Spark<\/a>, an open source package that brings high performance APIs for using <a href=\"https:\/\/spark.apache.org\/\">Apache Spark<\/a> from C# and F#. Indeed, it is the same technology that powers the .NET experience for Apache Spark inside <a href=\"https:\/\/azure.microsoft.com\/en-us\/free\/synapse-analytics\/\">Azure Synapse Analytics<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/dot.net\/spark\"><img decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2020\/10\/DotnetForSparkv1.0.png\" alt=\"timeline\" \/><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>At a high-level, .NET for Apache Spark offers users the ability to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Write Spark applications in C# or F# targeting .NET Core 2.1+.<\/li>\n\n\n\n<li>Reuse existing C#\/F# libraries and use the power of Apache Spark to parallelize them.<\/li>\n\n\n\n<li>Leverage the high-quality Visual Studio or Visual Studio Code IDEs for building Spark apps.<\/li>\n<\/ul>\n\n\n\n<p>The new .NET for Apache Spark v1.0 brings in additional capabilities to an already rich library:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Support for DataFrame APIs from Spark <a href=\"https:\/\/github.com\/dotnet\/spark\/issues\/621\" target=\"_blank\" rel=\"noopener noreferrer\">2.4<\/a> and <a href=\"https:\/\/github.com\/dotnet\/spark\/issues\/633\" target=\"_blank\" rel=\"noopener noreferrer\">3.0<\/a>.<\/li>\n\n\n\n<li>47 new Spark SQL functions to support Spark 3.0 and 464 Spark SQL functions for Spark 2.4, bringing the total to 511 out-of-box <a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/api\/microsoft.spark.sql.functions?view=spark-dotnet\" target=\"_blank\" rel=\"noopener noreferrer\">Spark SQL functions<\/a> to make it even easier for you to author Spark apps.<\/li>\n\n\n\n<li>First-class support for the <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/synapse-analytics\/spark\/apache-spark-delta-lake-overview?pivots=programming-language-csharp\" target=\"_blank\" rel=\"noopener noreferrer\">Linux Foundation&#8217;s Delta Lake<\/a>,\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/synapse-analytics\/spark\/apache-spark-performance-hyperspace?pivots=programming-language-csharp\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft\u2019s Hyperspace<\/a>\u00a0Indexing Sub-system,\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/spark\/tutorials\/ml-sentiment-analysis\" target=\"_blank\" rel=\"noopener noreferrer\">ML.NET<\/a>, and support for\u00a0<a href=\"https:\/\/the.agilesql.club\/2020\/07\/tf-idf-in-.net-for-apache-spark-using-spark-ml\/\" target=\"_blank\" rel=\"noopener noreferrer\">Apache Spark\u2019s MLLib functionality<\/a>.<\/li>\n\n\n\n<li>Community-contributed <a href=\"https:\/\/hub.docker.com\/r\/3rdman\/dotnet-spark\" target=\"_blank\" rel=\"noopener noreferrer\">Docker images<\/a> that allow you to <a href=\"https:\/\/3rdman.de\/2019\/10\/debug-net-for-apache-spark-with-visual-studio-and-docker\/\" target=\"_blank\" rel=\"noopener noreferrer\">try and debug<\/a> .NET for Apache Spark in a single-click, <a href=\"https:\/\/3rdman.de\/2020\/10\/net-for-apache-spark-interactive-notebook-docker-image\/\" target=\"_blank\" rel=\"noopener noreferrer\">play with it using .NET Interactive notebooks<\/a>, as well have a full-blown <a href=\"https:\/\/3rdman.de\/2020\/10\/build-net-for-apache-spark-with-vs-code-in-a-browser\/\" target=\"_blank\" rel=\"noopener noreferrer\">local development environment in your browser using VS Code<\/a> so you can contribute to the open source project, if that\u2019s of interest to you.<\/li>\n<\/ul>\n\n\n\n<p>We are extremely grateful to everyone who contributed towards reaching this important milestone. For more about the history of the project, key contributors, and its use in production pipelines, read the <a href=\"https:\/\/techcommunity.microsoft.com\/t5\/azure-synapse-analytics\/microsoft-and-the-net-foundation-announce-the-release-of-version\/ba-p\/1820908\">full announcement<\/a>.<\/p>\n\n\n\n<p>To learn more about .NET for Apache Spark, check out our presentation at the <a href=\"https:\/\/databricks.com\/session_eu19\/net-for-apache-spark\">Databricks\u2019 Spark+AI Summit 2019<\/a>, <a href=\"https:\/\/www.youtube.com\/watch?v=ZSBUsavgnls&amp;feature=emb_logo\">Microsoft Build 2019<\/a>, <a href=\"https:\/\/slideshare.net\/MichaelRys\">SQLBits 2020<\/a>, and the demo at <a href=\"https:\/\/www.youtube.com\/watch?v=KhMKXQkIzKw&amp;ab_channel=MicrosoftIgnite\">Ignite 2020<\/a>.<\/p>\n\n\n\n<p>Learn more about .NET for Apache Spark:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Check out the .NET for Apache Spark code on <a href=\"http:\/\/github.com\/dotnet\/spark\">GitHub<\/a>.<\/li>\n\n\n\n<li>Ready to try this out? Check out <a href=\"https:\/\/github.com\/dotnet\/spark#get-started\">getting started<\/a>.<\/li>\n\n\n\n<li>Feel like contributing? Start with the outstanding <a href=\"https:\/\/github.com\/dotnet\/spark\/issues\">issues<\/a>.<\/li>\n<\/ul>\n\n\n\n<p>Don\u2019t miss our presentation describing this major release in the upcoming <a href=\"https:\/\/www.dotnetconf.net\/agenda\">.NET Conf 2020<\/a>: \u201cThe Missing Piece: Diving into the World of Big Data with .NET for Apache Spark\u201d!<\/p>\n\n\n\n<p>Questions or feedback? Let us know in the comments below.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>About two years ago, we heard an increasing demand from the .NET community for an easier way to build big data applications with .NET, outside of needing to learn Scala or Python. Thus, in a collaboration between Azure Data and .NET teams, we started the .NET for Apache\u00ae Spark\u2122 open source project.<\/p>\n","protected":false},"author":5562,"featured_media":95467,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[89,90,2272,166,212],"content-type":[346],"topic":[2240,2243],"programming-languages":[2253],"coauthors":[747],"class_list":["post-83648","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-apache","tag-apache-spark","tag-microsoft","tag-azure","tag-spark","content-type-news","topic-application-development","topic-databases","programming-languages-net","review-flag-1593580428-734","review-flag-1593580419-521","review-flag-1-1593580432-963","review-flag-2-1593580437-411","review-flag-3-1593580442-169","review-flag-4-1593580448-609","review-flag-lever-1593580265-989","review-flag-micro-1680215167-604","review-flag-ml-1680214110-748","review-flag-new-1593580248-669"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>.NET for Apache Spark hits v1.0 | Microsoft Open Source Blog<\/title>\n<meta name=\"description\" content=\"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\".NET for Apache Spark hits v1.0 | Microsoft Open Source Blog\" \/>\n<meta property=\"og:description\" content=\"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-10-30T17:26:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-23T18:40:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1170\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Rahul Potharaju\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rahul Potharaju\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/rahul-potharaju\/\",\"@type\":\"Person\",\"@name\":\"Rahul Potharaju\"}],\"headline\":\".NET for Apache Spark hits v1.0\",\"datePublished\":\"2020-10-30T17:26:31+00:00\",\"dateModified\":\"2025-06-23T18:40:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\"},\"wordCount\":425,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp\",\"keywords\":[\"Apache\",\"Apache Spark\",\"Microsoft\",\"Microsoft Azure\",\"Spark\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\",\"name\":\".NET for Apache Spark hits v1.0 | Microsoft Open Source Blog\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp\",\"datePublished\":\"2020-10-30T17:26:31+00:00\",\"dateModified\":\"2025-06-23T18:40:12+00:00\",\"description\":\"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp\",\"width\":1170,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\".NET for Apache Spark hits v1.0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":".NET for Apache Spark hits v1.0 | Microsoft Open Source Blog","description":"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/","og_locale":"en_US","og_type":"article","og_title":".NET for Apache Spark hits v1.0 | Microsoft Open Source Blog","og_description":"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2020-10-30T17:26:31+00:00","article_modified_time":"2025-06-23T18:40:12+00:00","og_image":[{"width":1170,"height":640,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.png","type":"image\/png"}],"author":"Rahul Potharaju","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Rahul Potharaju","Est. reading time":"2 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/rahul-potharaju\/","@type":"Person","@name":"Rahul Potharaju"}],"headline":".NET for Apache Spark hits v1.0","datePublished":"2020-10-30T17:26:31+00:00","dateModified":"2025-06-23T18:40:12+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/"},"wordCount":425,"commentCount":0,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp","keywords":["Apache","Apache Spark","Microsoft","Microsoft Azure","Spark"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/","url":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/","name":".NET for Apache Spark hits v1.0 | Microsoft Open Source Blog","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp","datePublished":"2020-10-30T17:26:31+00:00","dateModified":"2025-06-23T18:40:12+00:00","description":"Announcing the release of version 1.0 of .NET for Apache\u00a0Spark, an open source package that brings high performance APIs for using Apache Spark from C# and F#.","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO20b_Garrett_Preeti_Jayesh_Aline_001_v2.webp","width":1170,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2020\/10\/30\/announcing-net-apache-spark-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":".NET for Apache Spark hits v1.0"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/83648","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/5562"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=83648"}],"version-history":[{"count":1,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/83648\/revisions"}],"predecessor-version":[{"id":97627,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/83648\/revisions\/97627"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/95467"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=83648"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=83648"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=83648"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=83648"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=83648"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=83648"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}