{"id":47810,"date":"2025-05-19T15:26:05","date_gmt":"2025-05-19T19:26:05","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=47810"},"modified":"2025-05-19T15:31:45","modified_gmt":"2025-05-19T19:31:45","slug":"rust-at-10","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2025\/05\/19\/rust-at-10\/","title":{"rendered":"Rust at 10"},"content":{"rendered":"<p><a href=\"https:\/\/rustfoundation.org\/media\/10-years-of-stable-rust-an-infrastructure-story\/\">Graydon Hoare<\/a> (<a href=\"https:\/\/developers.slashdot.org\/story\/25\/05\/16\/2119222\/rust-creator-graydon-hoare-thanks-its-many-stakeholders---and-mozilla---on-rusts-10th-anniversary\">Slashdot<\/a>):<\/p>\n<blockquote cite=\"https:\/\/rustfoundation.org\/media\/10-years-of-stable-rust-an-infrastructure-story\/\"><p>Rust turns 10 today, or at least it&rsquo;s been 10 years since the 1.0 release. In this decade (and the near-decade of development before!) it has undergone growth and change I can barely comprehend the scale of. To say I&rsquo;m surprised by its trajectory would be a vast understatement: I can only thank, congratulate, and celebrate everyone involved. It is deeply inspiring to have watched all that&rsquo;s happened over that time and reflect on it from today&rsquo;s vantage point.<\/p><p>While it&rsquo;s tempting to talk about Rust&rsquo;s journey in terms of the growth of &ldquo;an idea&rdquo; &#x2013; perhaps starting from my amusing frustration with a broken elevator in 2006, as chronicled in <a href=\"https:\/\/www.technologyreview.com\/2023\/02\/14\/1067869\/rust-worlds-fastest-growing-programming-language\/\">this MIT technology review article<\/a> &#x2013; I think doing so misses the bigger picture.<\/p><p>In my view, Rust is a story about a large community of stakeholders coming together to design, build, maintain, and expand <strong>shared technical infrastructure<\/strong>.<\/p><p>[&#8230;]<\/p><p>Importantly: since all of this was done in the post-1.0 environment, every single change passed an exhaustive testsuite, and every release was regression-tested against a significant fraction of the public crate ecosystem, and <a href=\"https:\/\/rust-lang.github.io\/rfcs\/1122-language-semver.html\">with very few exceptions<\/a> any change that broke existing code was rejected. As the 1.0 release announcement promised, <strong>Rust remained stable without stagnating<\/strong>. Existing code, in almost all cases, just kept humming along, like good infrastructure should.<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/blog.rust-lang.org\/2025\/05\/15\/Rust-1.87.0\/\">The Rust Release Team<\/a>:<\/p>\n<blockquote cite=\"https:\/\/blog.rust-lang.org\/2025\/05\/15\/Rust-1.87.0\/\">\n<p>Thank you to the myriad contributors who have worked on Rust, past and present. Here's to many more decades of Rust! &#x1F389;<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/smallcultfollowing.com\/babysteps\/blog\/2025\/05\/15\/10-years-of-rust\/\">Niko Matsakis<\/a>:<\/p>\n<blockquote cite=\"https:\/\/smallcultfollowing.com\/babysteps\/blog\/2025\/05\/15\/10-years-of-rust\/\">\n<p>As part of RustWeek there was a fantastic celebration and I had the honor of giving some remarks, both as a long-time project member but also as representing Amazon as a sponsor. I decided to post those remarks here on the blog.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/steveklabnik.com\/writing\/rust-ten-years-later\/\">Steve Klabnik<\/a>:<\/p>\n<blockquote cite=\"https:\/\/steveklabnik.com\/writing\/rust-ten-years-later\/\">\n<p>I&rsquo;d instead like to reflect a bit on a comment I saw on the internet the other day:<\/p>\n<blockquote>\n<p>[Rust is] not a great hobby language but it is a fantastic professional\nlanguage, precisely because of the ease of refactors and speed of development\nthat comes with the type system and borrow checker.<\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/pcwalton.github.io\/\">Patrick Walton<\/a>, one of the earliest contributors to Rust, had this\nto say:<\/p>\n<blockquote>\n<p>I never thought I&rsquo;d live to see the day when someone would say this. The first\n5 years of Rust were all &ldquo;this is interesting for hobby projects but nobody will\never adopt this in industry&rdquo;.<\/p>\n<\/blockquote>\n<\/blockquote>\n\n<p><a href=\"https:\/\/kobzol.github.io\/rust\/rustc\/2025\/05\/16\/evolution-of-rustc-errors.html\">Kobzol<\/a> (via <a href=\"https:\/\/mastodon.social\/@monkeydom\/114518580202007063\">Dominik Wagner<\/a>):<\/p>\n<blockquote cite=\"https:\/\/kobzol.github.io\/rust\/rustc\/2025\/05\/16\/evolution-of-rustc-errors.html\">\n<p>The widget below visualizes how the error messages evolved over time.<\/p>\n<p>[&#8230;]<\/p>\n<p>But I think that ultimately, the most interesting thing about this is the evolution process of these messages itself, which demonstrates that a lot of effort has to be put into the messages to make them <em>really good<\/em>. To someone, it might seem like these messages are somehow automatically derived from the compilation process, and we get them &ldquo;for free&rdquo;, but that couldn&rsquo;t be further from the truth. It is the result of a continuous design, implementation, review and testing effort that has been performed by hundreds of individual contributors over the span of more than ten years.<\/p>\n<\/blockquote>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2024\/06\/04\/swift-at-10\/\">Swift at 10<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2023\/06\/08\/the-rust-i-wanted-had-no-future\/\">The Rust I Wanted Had No Future<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2020\/12\/30\/multiple-active-rust-teams\/\">Multiple Active Rust Teams<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2020\/06\/04\/five-years-of-rust\/\">Five Years of Rust<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Graydon Hoare (Slashdot): Rust turns 10 today, or at least it&rsquo;s been 10 years since the 1.0 release. In this decade (and the near-decade of development before!) it has undergone growth and change I can barely comprehend the scale of. To say I&rsquo;m surprised by its trajectory would be a vast understatement: I can only [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2025-05-19T19:26:08Z","apple_news_api_id":"cee836cb-59ba-4b5d-a434-16425ccc7855","apple_news_api_modified_at":"2025-05-19T19:26:08Z","apple_news_api_revision":"AAAAAAAAAAD\/\/\/\/\/\/\/\/\/\/w==","apple_news_api_share_url":"https:\/\/apple.news\/Azug2y1m6S12kNBZCXMx4VQ","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[4],"tags":[2070,255,295,46,229,410,71,408],"class_list":["post-47810","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-anniversary","tag-compiler","tag-history","tag-languagedesign","tag-llvm","tag-mozilla","tag-programming","tag-rust-lang"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/47810","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=47810"}],"version-history":[{"count":1,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/47810\/revisions"}],"predecessor-version":[{"id":47811,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/47810\/revisions\/47811"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=47810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=47810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=47810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}