-
Notifications
You must be signed in to change notification settings - Fork 303
[READY FOR MERGE 2017-05-15] Second birthday post #168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 20 commits
43f6d4a
fa1f609
393aaa4
4c4b4a9
37bd833
b738e67
1be5439
9b2c4be
77f31d6
5d02e58
8ed9d30
44044fc
ebd653f
b8f8018
14876f2
d17ca6c
823c037
bd0959f
354c838
c825679
9bde894
972787d
e7a2950
9a30d8b
8d179ad
eb2fe94
cf06413
40aa9d2
14c901b
3a0a313
00df41b
17ae2f8
eeb0437
0188814
be8211f
7c34920
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,356 @@ | ||
--- | ||
layout: post | ||
title: "Two years of Rust" | ||
author: Carol (Nichols || Goulding) | ||
description: "Rust, two years after 1.0" | ||
--- | ||
|
||
It's been two years since Rust 1.0 was released. Happy second birthday, Rust! | ||
|
||
![Group picture from RustFest Berlin][group-pic]{:class="center"} | ||
|
||
*Rustaceans at RustFest Berlin, September 2016. Picture by Fiona Castiñeira* | ||
|
||
[group-pic]: /images/2017-05-Second-Birthday/rustfest-berlin.jpeg | ||
|
||
Rust, a systems programming language focused on safety, speed, and concurrency, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We should workshop the opening sentence, to get it up to date with the ways we've been trying to talk about Rust (which have evolved away from the old "trifecta"). There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah I was trying to find where you were talking about... productive fearless systems programming? What was it? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Rust, a language for confident, productive systems programming |
||
has now achieved stability without stagnation by maintaining backwards | ||
compatibility with version 1.0 for two years while also making many | ||
improvements. Conveniently, Rust's birthday is a bit under halfway through | ||
2017, which makes this a great time to reflect not only on the progress in the | ||
last year but also on the progress of our [2017 Roadmap] goals. | ||
|
||
[2017 Roadmap]: https://blog.rust-lang.org/2017/02/06/roadmap.html | ||
|
||
After reading this post, if you'd like to give us your feedback on how we're | ||
doing and where Rust should focus next, please fill out our [2017 State of Rust | ||
survey]. | ||
|
||
[2017 State of Rust survey]: https://blog.rust-lang.org/2017/05/03/survey.html | ||
|
||
But first, let's do the numbers! | ||
|
||
## Rust in numbers | ||
|
||
A lot has happened since [Rust's first birthday]: | ||
|
||
<!-- | ||
Will rerun these just before publishing: | ||
|
||
commits: | ||
`git log --since=2016-05-15 --until=2017-05-15 --oneline | wc` | ||
|
||
contributors: | ||
`git log --since=2016-05-15 --until=2017-05-15 --oneline --format="%aN" | sort | uniq | wc` | ||
|
||
rfcs: | ||
`git ls-tree a4a22d7c5dd71724bb2cd0fe2db5026338d0b270 text/ | wc` => there were 255 RFCs a year ago | ||
`git ls-tree HEAD text/ | wc` => there are 310 RFCs now | ||
310 - 255 = 55 | ||
|
||
crates: | ||
`select count(*) from crates where date(created_at) >= '2016-05-15';` | ||
|
||
friends: | ||
https://github.com/rust-lang/rust-www/compare/bb7f26b...master#diff-ee76f5da00d603d5e34d053a3dc63395 | ||
--> | ||
|
||
- 10,583 [commits] by 655 contributors added to the core repository; | ||
- 55 [RFCs] merged; | ||
- 9 major releases and 2 patch releases shipped; | ||
- 4,303 new [crates] published; | ||
- 284 library stabilizations; | ||
- 10 languages [rust-lang.org] has been translated into; | ||
- 48 new companies [running Rust in production][friends]; | ||
- 2 new teams (Docs and Style); | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also, Infra (which will be fully announced any moment now) and the Unsafe Guidelines strike team. |
||
- 24 occasions of adding people to teams, 5 retirings of people from teams; | ||
- 3 babies born to people on [the Rust teams]; | ||
- 2 years of [stability delivered]. | ||
|
||
On an average week this year, the Rust community merged 1 RFC and published 83 | ||
new crates. Rust topped the "[most loved] language" for the second year in a | ||
row in the StackOverflow survey. Also new this year is [thanks.rust-lang.org], | ||
a site where you can browse contributors by release. | ||
|
||
[Rust's first birthday]: https://blog.rust-lang.org/2016/05/16/rust-at-one-year.html | ||
[survey]: https://blog.rust-lang.org/2017/05/03/survey.html | ||
[most loved]: https://insights.stackoverflow.com/survey/2017#technology-most-loved-dreaded-and-wanted-languages | ||
[commits]: https://github.com/rust-lang/rust/commits/master | ||
[RFCs]: https://github.com/rust-lang/rfcs | ||
[rust-lang.org]: https://www.rust-lang.org/ | ||
[friends]: https://www.rust-lang.org/en-US/friends.html | ||
[stability delivered]: http://blog.rust-lang.org/2014/10/30/Stability.html | ||
[thanks.rust-lang.org]: https://thanks.rust-lang.org/ | ||
[the Rust teams]: https://www.rust-lang.org/en-US/team.html | ||
[crates]: https://crates.io/ | ||
|
||
## Rust in production | ||
|
||
In addition to the 48 new Rust friends, we now have a [Rust jobs website]! More | ||
and more companies are choosing Rust to solve problems involving performance, | ||
scaling, and safety. Let's check in on a few of them. | ||
|
||
[Rust jobs website]: http://rustjobs.rs/ | ||
|
||
[Dropbox] is using Rust in multiple high-impact projects to manage exabytes of | ||
data where correctness and efficiency is critical. Rust is currently shipping | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. s/Rust/Rust code/ |
||
in the desktop client on Windows running on hundreds of millions of machines. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. suggestion: bold "hundreds of millions" |
||
Jamie Turner recently [spoke at the SF Rust Meetup] about the details on how | ||
Rust helps Dropbox use less RAM and get more throughput with less CPU. | ||
|
||
[Dropbox]: https://www.dropbox.com/ | ||
[spoke at the SF Rust Meetup]: https://air.mozilla.org/rust-meetup-may-2017/ | ||
|
||
Mozilla, Rust's main sponsor, has accelerated their use of Rust in production. | ||
Not only did [Servo start shipping nightly builds], [Firefox 48] marked the | ||
first Firefox release that included Rust code as part of the [Oxidation] | ||
project. [Project Quantum], announced in October 2016, is an effort to | ||
incrementally adopt proven parts of Servo into Firefox's rendering engine, | ||
Gecko. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. cc @metajack @jonathandturner, should we say more about Quantum here? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We could link to Potch's writeup as one possibility: https://hacks.mozilla.org/2017/05/quantum-up-close-what-is-a-browser-engine/ IMHO, I like that we just say we're incrementally adopting parts of Servo, and we don't necessarily call out specific ones. |
||
|
||
[Servo start shipping nightly builds]: https://blog.servo.org/2016/06/30/servo-nightlies/ | ||
[Firefox 48]: https://hacks.mozilla.org/2016/07/shipping-rust-in-firefox/ | ||
[Oxidation]: https://wiki.mozilla.org/Oxidation | ||
[Project Quantum]: https://medium.com/mozilla-tech/a-quantum-leap-for-the-web-a3b7174b3c12 | ||
|
||
[GNOME], a free and open source desktop environment for Linux, went from | ||
experimenting with Rust in [librsvg] in October 2016 to a [hackfest] in March | ||
to work on the interoperability between GNOME and Rust to enable more GNOME | ||
components to be written in Rust. The hackfest participants made good progress, | ||
be sure to check out the reports at the bottom of the hackfest page for all the | ||
details. We're all excited about the possibilities of Rust and GNOME working | ||
together. | ||
|
||
[GNOME]: https://www.gnome.org/ | ||
[librsvg]: https://people.gnome.org/~federico/news-2016-10.html#25 | ||
[hackfest]: https://wiki.gnome.org/Hackfests/Rust2017 | ||
|
||
This year, [npm] started using Rust in production to serve JavaScript packages, | ||
using Rust to eliminate performance bottlenecks in their platform that serves | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. says "using Rust" twice, maybe tighten up phrasing a bit. |
||
around 350 million packages a day. [Ashley Williams recently gave a | ||
talk][ag_dubs] at RustFest in Ukraine about npm's experience with Rust in | ||
production; video is coming soon. | ||
|
||
[npm]: https://www.npmjs.com/ | ||
[ag_dubs]: http://2017.rustfest.eu/talks/#how-i-convinced-the-world-s-largest-package-manager-to-use-rust-and-so-can-you | ||
|
||
## Rust in community | ||
|
||
Speaking of conferences, We've had four Rust conferences in the last year: | ||
|
||
- September 9-10, 2016: [RustConf 2016] in Portland, OR, USA; | ||
- September 17, 2016: [RustFest 2016] in Berlin, Germany; | ||
- October 27-28, 2016: [Rust Belt Rust 2016] in Pittsburgh, PA, USA; | ||
- April 29-30, 2017: [RustFest 2017] in Kyiv, Ukraine. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. these links are not working in rendered version There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. (not sure why) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't know why either, they work when I run jekyll locally so they should work in the published version. |
||
|
||
[RustConf 2016]: TODO ATURON PROMISED | ||
[RustFest 2016]: http://2016.rustfest.eu/ | ||
[Rust Belt Rust 2016]: http://conf2016.rust-belt-rust.com/ | ||
[Rustfest 2017]: http://2017.rustfest.eu/ | ||
|
||
And we have at least three conferences coming up! | ||
|
||
- August 18-19, 2017: [RustConf 2017] in Portland, OR, USA; | ||
- September, 2017: [Another RustFest] in Zurich, Switzerland; | ||
- October 26-27, 2017: [Rust Belt Rust 2017] in Columbus, OH, USA. | ||
|
||
[Rust Belt Rust 2017]: http://conf2017.rust-belt-rust.com/ | ||
[RustConf 2017]: http://rustconf.com/ | ||
[Another RustFest]: https://rustfest.ch/ | ||
|
||
That's not even including the [103 meetups worldwide][meetup] about Rust. Will | ||
you be the one to run the fourth conference or start the 104th meetup? [Contact | ||
the community team] for help and support! | ||
|
||
[meetup]: http://rust.meetup.com/ | ||
[Contact the community team]: https://community.rs/ | ||
|
||
## Rust in 2017 | ||
|
||
The [2017 Roadmap] goals have been great for focusing community efforts towards | ||
the most pressing issues facing Rust today. Of course we'd love for every | ||
aspect of Rust to improve all the time, but we don't have an infinite number of | ||
contributors with an infinite amount of time available yet! | ||
|
||
Let's check in on some of the initiatives in each of the goals in the roadmap. | ||
Take a look at each goal's tracking issue for even more initiatives than we're | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. How about: "The linked tracking issues give even more detail than the summary here". |
||
mentioning here. | ||
|
||
### [Rust should have a lower learning curve](https://github.com/rust-lang/rust-roadmap/issues/3) | ||
|
||
The second edition of [The Rust Programming Language Book] is one chapter shy | ||
of having its initial content complete. There's lots more editing to be done to | ||
get the book ready for publication in October, though. The print version is | ||
currently available for [preorder from No Starch], and the online version of | ||
the second edition has boarded [the beta train] and will be an option in the | ||
documentation shipped with Rust 1.18.0. Steve and I have gotten feedback that | ||
[the ownership chapter] especially is much improved and has helped people | ||
understand ownership related concepts better! | ||
|
||
[The Rust Programming Language Book]: https://github.com/rust-lang/book | ||
[preorder from No Starch]: https://www.nostarch.com/rust | ||
[the beta train]: https://doc.rust-lang.org/beta/book/ | ||
[the ownership chapter]: https://doc.rust-lang.org/nightly/book/second-edition/ch04-00-understanding-ownership.html | ||
|
||
The [Language Ergonomics Initiative] is another part of the lower learning | ||
curve goal that has [a number of improvements][lei-tracker] in its pipeline. | ||
The language team is eager to mentor people (another goal!) who are interested | ||
in getting involved with moving these ergonomic improvement ideas forward by | ||
writing RFCs and working with the community to flesh out the details of how | ||
these improvements would work. Comment on the [tracking issue][lei-tracker] if | ||
you'd like to jump in. | ||
|
||
[Language Ergonomics Initiative]: https://blog.rust-lang.org/2017/03/02/lang-ergonomics.html | ||
[lei-tracker]: https://github.com/rust-lang/rust-roadmap/issues/17 | ||
|
||
Also check out: | ||
|
||
- [The Rust Cookbook](https://github.com/brson/rust-cookbook) | ||
- [The new error format rolled out in Rust 1.12.0](https://github.com/rust-lang/rust/issues/35233) | ||
- [The question mark operator stabilized in Rust 1.13.0](https://github.com/rust-lang/rust/pull/31954) | ||
|
||
### [Rust should have a pleasant edit-compile-debug cycle](https://github.com/rust-lang/rust-roadmap/issues/1) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have the sense that this section as written is a bit "insider baseball", in the sense that it expects you already know about MIR and incremental comp. Some initial framing would be helpful. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe we could talk about the user impact of each? "A more user-friendly error format..." |
||
|
||
Compiler improvements are ongoing. This year, [MIR became a default part of the | ||
compilation process](https://github.com/rust-lang/rust/pull/34096), which was a | ||
prerequisite to unlocking further improvements. | ||
|
||
Below is a table of [benchmarks] comparing the time it takes to compile a few | ||
crates and tests with Rust 1.8.0 (the stable release a year ago) to Rust 1.17.0 | ||
(the stable release today). On average, compile times have improved by 5-10%, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The 5-10% figure here is going to feel pretty underwhelming, given the focus we've put on compiler performance in the past. We should figure out a good way to frame that. |
||
but some worst-case behavior has been fixed that results in >95% improvements | ||
in certain programs. A couple of crates did show a slight regression of 1-15% | ||
in compile times, but in most cases it's a win. The helloworld crate saw a 110% | ||
increase in compile time, but it only equates to +0.1 second, which is probably | ||
a small fixed overhead that gets overwhelmed in any larger project. | ||
|
||
| Benchmark | 1.8.0 (time) | 1.8.0 ([rss]) | 1.17.0 (time) | 1.17.0 ([rss]) | % change (time) | % change ([rss]) | | ||
|----------------------|--------------|---------------|---------------|----------------|-----------------|------------------| | ||
| helloworld | 0.09s | 78MB | 0.19s | 83MB | 111.1% | 6.4% | | ||
| rust-encoding 0.3.0 | 2.21s | 239MB | 1.91s | 163MB | -13.6% | -31.8% | | ||
| regex 0.1.30 | 2.49s | 169MB | 2.86s | 178MB | 14.9% | 5.3% | | ||
| inflate 0.1.0 | 4.60s | 134MB | 4.06s | 141MB | -11.7% | 5.2% | | ||
| tuple-stress | 4.62s | 260MB | 4.67s | 363MB | 1.1% | 39.6% | | ||
| html5ever 2016-08-25 | 5.16s | 234MB | 3.98s | 228MB | -22.9% | -2.6% | | ||
| hyper 0.5.0 | 5.97s | 248MB | 5.44s | 234MB | -8.9% | -5.6 % | | ||
| jld-day15-parser | 42.38s | 204MB | 1.38s | 111MB | -96.7% | -45.6% | | ||
|
||
In graph form: | ||
|
||
![Bar graph showing compilation time data from the table][compilation-time]{:class="center"} | ||
|
||
[compilation-time]: /images/2017-05-Second-Birthday/compilation-time.png | ||
|
||
*Thanks to Mark Simulacrum for gathering this benchmark data and Simon Heath | ||
for analyzing it!* | ||
|
||
Check out [perf.rust-lang.org] for monitoring Rust's performance day-to-day. | ||
|
||
[benchmarks]: https://github.com/rust-lang-nursery/rustc-benchmarks | ||
[rss]: https://en.wikipedia.org/wiki/Resident_set_size | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No idea if we want to mention this here, but we could link to perf.rlo. It's somewhat not related, but does have data since January 24th this year. |
||
[perf.rust-lang.org]: http://perf.rust-lang.org/ | ||
|
||
[`cargo check`] stabilized in Rust 1.16.0 and does a type check of a project | ||
without building it completely. This gives consistently fast feedback from the | ||
compiler. Take a look at [the 1.16 announcement] to see how `cargo check` can | ||
be incorporated into your workflow. | ||
|
||
[`cargo check`]: https://github.com/rust-lang/cargo/pull/3296 | ||
[the 1.16 announcement]: https://blog.rust-lang.org/2017/03/16/Rust-1.16.html | ||
|
||
The work on incremental compilation is proceeding well. Nightly builds | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We definitely need to get some numbers (or better, graphs) up in here, to offset the downer of the table above. Worst cast, we can pull from the beta post. |
||
currently offer ["beta" support][incrcomp], permitting the compiler to | ||
skip over code generation. We are in the midst of refactoring the | ||
compiler to support finer-grained incremental computation, allowing us | ||
to skip type-checking and other parts of compilation as well. This | ||
refactoring should also offer better support for the IDE work (see | ||
next section), since it enables the compiler to do things like compile | ||
a single function in isolation. We expect to see the next stage of | ||
incremental compilation becoming available over the next few | ||
months. If you're interested in getting involved, please check out the | ||
[roadmap issue #4][roadmap-4], which is updated periodically to | ||
reflect the current status, as well as places where help is needed. | ||
|
||
*Thanks to Niko Matsakis for this incremental compilation summary!* | ||
|
||
[incrcomp]: https://internals.rust-lang.org/t/incremental-compilation-beta/4721 | ||
[roadmap-4]: https://github.com/rust-lang/rust-roadmap/issues/4 | ||
|
||
### [Rust should provide a basic, but solid IDE experience](https://github.com/rust-lang/rust-roadmap/issues/2) | ||
|
||
As part of our IDE initiative, we created the [Rust Language Server] project. | ||
Its goal is to create a single tool that makes it easy for any editor or IDE to | ||
have the full power of the Rust compiler for error checking, code navigation, | ||
and refactoring by using the standard [language server | ||
protocol](http://langserver.org/) created by Microsoft and Eclipse. | ||
|
||
While still early in its life, today the RLS is [available from rustup] for | ||
nightly users. It provides type information on hover, error messages as you | ||
type, and different kinds of code navigation. It even provides refactoring and | ||
formatting as unstable features! It works with projects as large as Cargo. | ||
We're excited to watch the RLS continue to grow and hope to see it make its way | ||
to stable Rust later this year. | ||
|
||
[Rust Language Server]: https://github.com/rust-lang-nursery/rls | ||
[available from rustup]: https://github.com/rust-lang-nursery/rls#setup | ||
|
||
*Thanks to Jonathan Turner for this RLS summary!* | ||
|
||
### [Rust should have 1.0-level crates for essential tasks](https://github.com/rust-lang/rust-roadmap/issues/11), and [Rust should provide easy access to high quality crates](https://github.com/rust-lang/rust-roadmap/issues/9) | ||
|
||
The [recent post on the Libz Blitz] details the Library Team's initiative to | ||
increase the quality of crates for common tasks; that post is excellent so I | ||
won't repeat it here. I will note that many of the issues that the Libs Team | ||
is going to create will be great starter issues. For the blitz to be the best | ||
it can be, the Libs Team is going to need help from the community-- that means | ||
YOU! :) They're willing to mentor people interested in contributing. | ||
|
||
In order to make awesome crates easier to find for particular purposes, | ||
crates.io now has [categories] for crate authors to better indicate the use | ||
case of their crate. Crates can also now have CI badges, and | ||
[more improvements to crates.io's interface] are coming that will help you | ||
choose the crates that fit your needs. | ||
|
||
[recent post on the Libz Blitz]: https://blog.rust-lang.org/2017/05/05/libz-blitz.html | ||
[categories]: https://crates.io/categories | ||
[more improvements to crates.io's interface]: https://github.com/rust-lang/rust/issues/41616 | ||
|
||
### [Rust should be well-equipped for writing robust, high-scale servers](https://github.com/rust-lang/rust-roadmap/issues/10) | ||
|
||
TODO: [Futures] and [tokio] enable zero-cost asynchronous programming | ||
|
||
[Futures]: https://crates.io/crates/futures | ||
[tokio]: https://tokio.rs/ | ||
|
||
### [Rust should integrate easily into large build systems](https://github.com/rust-lang/rust-roadmap/issues/12) | ||
|
||
This initiative is mostly in the ideas stage; there's lots of great discussion | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could expand this slightly to say: we've done a lot of work with stakeholders to understand the challenges in build system integration today, and think we have a good overall vision for how to solve them, but there are a lot of details to be worked out. |
||
on the tracking issue that has resulted in a few Cargo issues: | ||
|
||
* [Support creating a build plan](https://github.com/rust-lang/cargo/issues/3815) | ||
* [Support declaring external dependencies](https://github.com/rust-lang/cargo/issues/3816) | ||
|
||
Keep an eye out for more improvement in this area soon. | ||
|
||
### [Rust's community should provide mentoring at all levels](https://github.com/rust-lang/rust-roadmap/issues/13) | ||
|
||
There were [RustBridge] events before RustFest Berlin and Rust Belt Rust, and | ||
there's another planned for the day before RustConf coming up! | ||
|
||
[RustBridge]: https://github.com/rust-community/rustbridge | ||
|
||
There are many people who have started getting involved with various | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Worth talking about:
We should emphasize the "all levels" part of the roadmap item: it's about onboarding first-time contributors but also adding folks all the way up at the core team level. |
||
initiatives. I've worked with many people at many places in their Rust journey: | ||
helping out with the conferences, giving their first conference talks, | ||
providing feedback on the book, working on crates, contributing to Rust itself, | ||
and joining teams! While we haven't made as much formal, measurable progress on | ||
this front, everywhere I turn I see Rustaceans helping other Rustaceans. | ||
|
||
## Rust in the future | ||
|
||
While Rust is still just a toddler, it's still growing and still going strong. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. "While Rust is still just a toddler, it's still growing and still going strong." we should workshop this one, try to close out a bit stronger. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Do you have any suggestions? What would be stronger? More exclamation points maybe!!!! I'm feeling at a loss for words after all the rest of the words :) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. How about "At two years old, Rust is finding its way into all corners of programming, from web development, to embedded systems, and even your desktop." Play on the toddler analogy without saying it, possibly. |
||
The libraries and the infrastructure are maturing, we're paving the on-ramp, | ||
and we're supporting each other. I'm optimistic about the direction Rust is | ||
taking! | ||
|
||
Happy birthday, Rust! Here's to many more! 🎉 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I love the choice of pic!