The current slogan
The programming language that empowers everyone to become a systems programmer.
should be changed in a way that makes it clear what Rust's main characteristics actually are. Something like this:
The programming language that empowers everyone to become a systems programmer. Creating fast, safe and parallelized programs has never been easier.
The new simplified slogan does not convey what makes Rust special. Why would I choose Rust over any of the other seemingly dozens of new languages that promise to be the next best thing and make me more productive? If I were new to Rust and trying to evaluate Rust's usefulness, Rust wouldn't really stand out to me with this new slogan.
The impact of not changing the slogan to include Rust's key features is that new users interested in Rust might not be able to assess Rust's capabilities correctly. The slogan on the main website will most probably be the first thing anyone interested in Rust will see. If this slogan does not convey concisely what sets Rust apart from other languages, they might brush it off as just another new language not worth going into.
When we wrote the slogan one of the most important parts was that it needed to be short. I disagree that "The new simplified slogan does not convey what makes Rust special."- it does! I think Rust is special because of its focus on empowering all types of developers. On the landing page the immediate next section explains the features of Rust, I don't think including Rust's features in the slogan is necessary, as a result.
cc @aturon
Ah, beat me to opening a slogan issue. I was writing this:
Some reddit comments came out against the new slogan. I think there is room for improvement while appealing to the spirit of the "fireflower problem."
To help new users understand the _benefits_ of the Rust programming language rather than just the _features_. Hopefully with wide enough appeal to make sense for programmers with different levels of experience. This will help put the features of Rust into a context that makes sense for people hoping to use the language.
The old slogan is fairly straightforward and moving to a new slogan could have the effect of losing both the list of features as well as not appealing with benefits.
Would the team be open to slogan suggestions in this issue?
@ashleygwilliams I agree that we should be conveying that Rust empowers developers. However I also prefer the old slogan.
I would like to suggest that the issue with new slogan is that it merely asserts that Rust empowers developers, it doesn't explain how that is achieved.
This makes it the moral equivalent of a resume that says leads with "I'm a fantastic developer". You might be, but that's not what people evaluating you want to hear. They want to know specific attributes about you that demonstrate that this is the case. Something more like "I'm a JavaScript developer with 5 years experience developing AngularJS applications". IMO the old slogan was more like this than the new one.
I don't mind the new slogan, but I would also like it to contain some more concrete selling points.
The term "systems programmer" is problematic (as it means something different to different people). This is even mentioned in the official blog post. Furthermore, some people don't really know what "systems programming" is (as they haven't heard of it before) and thus might think Rust is irrelevant to their programming world/career. So I'd say we should drop that term.
Another idea:
The programming language that empowers everyone to write extremely fast and reliable software.
It changes from "you'll be fire-mario" to "you will be able to shoot fire balls" which I think is more descriptive. I didn't use the word "safe" as this is also a pretty vague term in the programming world (memory safe, hacker safe, ...) and the word "parallelized" because it might be too specific (many Rust software doesn't need to be parallized to benefit from Rust). "fast" and "reliable" are fairly clear IMO.
Sure, this slogan doesn't contain as much information about the language as the old one, but this kind of information is just below the slogan, so I don't think it's a huge problem.
Alternative: replace "The programming language that" with just "Rust".
(as an aside: really really great work on the new website. I am super excited right now! You really made my evening a lot better ^_^)
Here are a smattering of slogans from other language home pages:
While the majority of the examples here "sell the fireflower," so to speak, I think Swift is the closest to alluding to what its users can _do_ or _become_ with it: "turn [your] ideas into apps on any platform." I appreciate that they have an emphasis on community, togetherness, and empowerment, as well as speaking to specifically what makes the language unique.
For comparison, I've collected some slogans from other programming language websites:
JavaScript, Kotlin, C++
No slogan at all.
Python https://python.org
Python is a programming language that lets you work quickly
and integrate systems more effectively.
PHP https://php.net
PHP is a popular general-purpose scripting language that is especially suited to web development.
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
Swift https://developer.apple.com/swift/
The powerful programming language that is also easy to learn.
Scala https://www.scala-lang.org/
Scala combines object-oriented and functional programming in one concise, high-level language.
Scala's static types help avoid bugs in complex applications, and its JVM and JavaScript runtimes let you build high-performance systems with easy access to huge ecosystems of libraries
Efficient and expressive programming.
Nim is a systems and applications programming language. Statically typed and compiled, it provides unparalleled performance in an elegant package.
- High-performance garbage-collected language
- Compiles to C, C++ or JavaScript
- Produces dependency-free binaries
- Runs on Windows, macOS, Linux, and more
My overall conclusion from this survey is that we could actually make the "slogan" quite a bit longer than it currently is. My personal favourite is the Scala one. It accurately and reasonably concisely summarises what is different about Scala, and the benefits of using it.
@briankung
Would the team be open to slogan suggestions in this issue?
Definitely, though please understand that the current slogan is the result of a substantial amount of discussion and iteration already, so there's no guarantee that we'll end up changing it further :-)
@aturon where can one find those iterations and discussions?
@aturon got it!
Here's a thought: the focus on "empowerment" might be a red herring. Programmers, at the least, might take empowerment for granted - they want to know _what kinds of powers_ a language affords them, while taking empowerment itself for granted. It might serve to dig deeper into the Foreword of TRPL:
It wasn’t always so clear, but the Rust programming language is fundamentally about empowerment: no matter what kind of code you are writing now, Rust empowers you to reach farther, to program with confidence in a wider variety of domains than you did before.
Reading the foreword, I would focus on confidence and reach as aspirations and speed, efficiency, ergonomics, and addressable domains as the features.
The best formulation of a slogan I can think of right now is "Rust lets you write fast, confident code in any domain."
Fast meaning runtime and memory space, confident meaning safety and concurrency, any domain meaning anywhere from systems programming to web development. The emphasis in this slogan is on the programmer rather than the programming language, and it leaves room for elaboration on the first two points, and a bit of intrigue in the last - _any_ domain, really? Well, not really, but a whole lot of them, yes - and probably yours!
Anyway, I've spilled enough digital ink in this thread. I'm sure the team has agonized over this far more than we have! Cheers! 🥂
My first thought when I read the new slogan was something like "Oh, it empowers everyone to become a systems programmer, so it's not for me, because I already am a systems programmer ... why is it better than what I currently do?" (of course I know why it's better ...)
I think that other "already" systems programmers (coming from C/C++) might feel the same way.
I agree, though, that speaking to people who are not yet systems programmers, in the way that the new slogan does, probably reaches a larger audience.
@briankung no one will guess that "fast" includes "low memory usage", so perhaps just spell it out. I'd modify your slogan...
Rust lets you write fast and efficient code in any domain, with confidence
@aturon IMO maybe releasing the site to the public earlier in the process would have helped with some of these issues then. Obviously that can't be done now, but there's plenty of things like the slogan that probably would have benefited from more public opinion -- we're the ones consuming the site, after all. Also, just because something has had a lot of effort put into it doesn't mean its perfect and couldn't be improved.
@briankung curiously, which domains does Rust find itself not suitable?
@tshepang I think that slogan sounds pretty good, though if not a bit vague, however that's something easily solved with other parts of the site. (also good talk at Rust Belt Rust btw!)
I really like the one from @LukasKalbertodt
A slogan needs to be straight to the point and if everyone has a different definition of "systems programming", it's not going to help. My own definition and seemingly the one from Wikipedia seem to be the same:
systems programming aims to produce software and software platforms which provide services to other software, are performance constrained, or both (e.g. operating systems, computational science applications, game engines and AAA video games, industrial automation, and software as a service applications)
No idea what SaaS is doing there but in my mind and according to this page systems programming doesn't include anything application related and even less JS through Wasm.
I do mostly Python/JS for work and If I was finding Rust only now, I don't think this slogan would attract me: I'm not really interested in the kind of systems programming mentioned on Wikipedia. At the time I found Rust, I was mostly looking for a fast and typed language.
Having the main value propt as the header is very common in business sites but since they are usually vague due to being short, they typically have a small paragraph describing in a bit more details. See https://sentry.io/welcome/ , https://www.drip.com/ or https://www.dropbox.com/ for some examples.
When I read the slogan:
Rust: The programming language that empowers everyone to become a systems programmer.
I immediately thought that the systems is not that descriptive because Rust is so much more.
Then I though about this slight change:
Rust: The programming language that empowers everyone to become a fearless programmer.
It just sounds so much more powerful and that's what is Rust all about. Also the term fearless is used a lot across the whole Rust ecosystem (and rightfully so).
@tshepang I was allowing for platforms at, say, tier 3 and beyond, but admittedly those don't necessarily count as business domains. Still! I think the ambiguity and the overall truthiness of the statement works for Rust. And if you don't mind my rewording your own remix, I might put it like:
Rust lets you write fast, efficient, and confident code in any domain.
Alternately, if we follow many of the other programming language's examples (_x_ is a _y_):
Rust is a programming language that lets you write fast, efficient, and confident code in any domain.
At the risk of sounding like a gatekeeper, or jumping on the bandwagon:
I'm really disappointed to see that Rust's technical capabilities have been relegated to a tiny subsection that one has to actively scroll down to take a look at.
What Rust has is really special. There are some jaw-droppingly powerful ideas that underpin the language, and by replacing these ideas with a generic "this tool can empower you!" slogan (a trend that virtually every product site under the sun seems to be adopting), we fail to advertise the things that developers really care about.
In an attempt to convince you all further:
The people that come to Rust are rarely those with no programming experience. As the Rust 2018 survey showed, almost all newcomers to the language arrive with at least a moderate level of programming competence. Most of them know what segfaults are. Most of them know what data races are. Most of them know the frustration of performance (or lack thereof). They understand these problems well, and advertising that Rust mitigates them is an immediate head-turner.
In an age when marketing is becoming ever more generic, it feels like a real shame to blend with the crowd. As a systems language, Rust is unique in that its target audience is chock full of intelligent, switched on people that keenly understand the problems they face. If we fail to directly engage with that, I feel we're doing the community and language as a whole a disservice.
EDIT: On an unrelated note, the following is a screenshot of my browser when I load the new frontpage. It looks good, there's no denying that. But it's also failing to properly utilise the available screen space. The current rust-lang.org, however, uses a double column to give me both a description of features, an eye-catching slogan and an example of the syntax (however much I've complained at the example code in the past) all without looking overcrowded or confusing.

@briankung calling code confident is strange, something I've not seen before... it's as if code is conscious.
@tshepang I feel like the words 'reliable' or 'solid' are perhaps a better choice.
@tshepang I'm referencing Avdi Grimm's Confident Code talk and Confident Ruby book:
@zesterer "reliable" is a nice word, but it probably is a bit much... you can write trash in any language. I like "confidence" more, because the strict compiler gives you that.
@briankung if you have to give a reference, you gotta choose a more accessible/common phrase.
An iteration on the suggestions above:
Rust is a programming language that enables everyone to write performant, reliable code with confidence.
@tshepang I think "reliable" is accurate. Rust gives you a lot of tools to encode the logic in the type system (Result, Option, enums and pattern matching in general, traits, etc). In my experience this has lead my Rust code to be super-reliable. Amazingly so coming from a JavaScript background.
@nicoburns I completely agree. It's like saying that 'fast' is an inappropriate word to use when describing Rust code simply because it's technically possible to write terrible code that runs like a snail. It ignores the fact that in the normal case, Rust code is more reliable in virtually every metric you care to consider compared to the vast majority of other languages.
@briankung I never thought of domains as having anything to do with targets. My understanding is examples like these: embedded, web, cli, gui, networking, etc. And even if targets were considered domains, it would still be lack of maturity, no a fundamental limitation.
@briankung if you have to give a reference, you gotta choose a more accessible/common phrase.
Respectfully, I disagree. I think "confident code" is a great turn of phrase!
@nicoburns fair enough, though I still find it more easy to defend "confidence" than "reliable"
I also have doubts about the slogan. It presents "systems programming" as some kind of holy grail (which it is not to everyone, people just want to get things done!) and somehow Rust gets the credit instead of the developer ;)
I have no proposition, but Rust helps developers get things done, of any kind (starting at the systems level and upwards) without sacrificing design quality or safety. I really liked that one I saw on Discord: Fast, Reliable, Productive. Pick Three.
Fast, Reliable, Productive. Pick Three.
I like this. Really gets to the point!
@zesterer Agreed on use of screen space on the home page (relevant to this discussion, because if we can fit more on the page then it might change what information we include).
I've put together a quick mockup of what it could look like if everything was moved up a bit:


hey folks! i want to mention that this issue seems to be drifting into different ideas... if possible, please try to keep the issues scoped, and if you come up with a new idea (like the spacing, which i super agree with btw!) please open a new issue :)
Y'all might be interested in the lengthy debate about slogans that played out in https://github.com/rust-lang/rust-marketing/pull/20
For people interested in effective use of space on the page, see https://github.com/rust-lang/beta.rust-lang.org/issues/412
The programming language that empowers everyone to become a systems programmer.
This slogan is overselling it. Rust is known for having quite the learning curve so it is a bit insincere, I think.
Also, becoming a systems programmer isn’t obviously what everyone wants. What kind of goal is that?
I think what people want more is to get things done, solve problems, create awesome software...
When we wrote the slogan one of the most important parts was that it needed to be short. I disagree that "The new simplified slogan does not convey what makes Rust special."- it does! I think Rust is special because of its focus on empowering all types of developers.
I'm a bit concerned about the "systems" in the slogan. It's vague and oddly specific at the same time and does not really convey the "all types of developers" part of your statement.
A seasoned developer may think that the language is only interesting for kernel and driver development while it may scare off people new to programming. "Systems? I just want to write some small programs! Whole systems sound way too complex for me..."
That already bugged me in the previous slogan iteration.
Why not simplify the slogan even more and change it to "The programming language that empowers everyone to become a programmer.", perhaps with a nice adjective instead of "systems".
@huxi that's far too broad and kind of useless imo. anyone can become a programmer without ever learning about Rust.
I made a comment on the reddit thread already, but I'll post the relevant bit here as well:
I'm also not sure if I agree with the fire flower approach in this case. Cosmetics companies also take the fire flower approach: you'll be a _more beautiful_ you! Car manufacturers too: you'll be a _free, adventurous_ you! I think there's a deeper discussion to be had here, but for me the gist of it is that the fire flower approach carries a higher risk of being manipulative. In particular, for it to be honest you have to be pretty sure that you _actually do turn people into the Fire Mario you're claiming_.
Given the number of people who still seem to struggle with Rust, it's not at all clear to me that the new slogan is honest. A lot of people clearly aren't becoming the Fire Marios that the new slogan promises. Of course, we _want_ to be able to promise this. I absolutely agree with the _goal_ of making Rust as approachable as we reasonably can. But goals for the future are _not the same as current reality_. And I think any official Rust material should be very careful not to confuse the two. Unfortunately, I think the new slogan does.
I want to clarify that I absolutely don't mean that anyone involved in coming up with the new slogan was being dishonest in the intentional sense. I mean, essentially, _accidentally_ dishonest. It's easy to get excited about something and over-sell it because of that excitement.
Up-thread someone posted Swift's slogan, which I think works really well:
Welcome to the Swift community. Together we are working to build a programming language to empower everyone to turn their ideas into apps on any platform.
They speak _explicitly to their goals_ and what they are working to achieve. They're highlighting their direction, their mission, so to speak. I think that comes across much better than if they had written, "Swift is a language that empowers everyone to turn their ideas into apps on any platform." It seems so subtle, but I think the difference is enormous. The way they wrote it also places a lot more emphasis on the community, which I really like. It's not, "We're the Rust people, use our product," it's, "This is a community project, join us!"
I just thought I'd throw some slogan ideas into the mix. I agree the new slogan is a bit too generic. For what it's worth, as someone coming to Rust from much higher-level languages I was excited by the prospect of learning what a "systems language" is and expanding my skillset into high performance. So I think it's good to hint at what you can achieve with the language.
Rust is a thin layer on top of the metal. It lets everyone write the fastest, safest, and cleanest code.
Rust is the systems programming language for everyone. Fast, safe, clean, with zero-cost abstractions that change the way you think about code.
A programming language that lets everyone write clean, friendly code that outperforms everything else.
@rep-nop But Rust _is_ way broader than "just" systems programming. It's also very much about end-user application programming, especially with WASM on the horizon. Rust is so efficient that it can _even_ be used for systems programming, but not exclusively.
I personally love "Fast, Reliable, Productive. Pick Three." but one has to understand that being able to pick all three at the same time is very, very unusual. It's a bit like an inside joke and that's not ideal if you truly want to embrace everyone.
I also find the word system a bit too vague. If you tell someone that you are a "systems programmer" you will without a doubt get the question "what do you define as a system?" back. System is a generic and not especially meaningful word.
I am not a system programmer and this slogan makes me feel this language is not for me.
I really dislike it. I feel like this slogan is just really bad as it neither target developer nor manager and can only have a negative impact.
I don't usually mind slogans, i liked the old one but indeed it was targetting developers.
If you want something more oriented towards manager, i would much rather something like "Empower developers to write fast and maintainable software without efforts"
It's probably not great either but I really feel like it can't be worse than the new one
@huxi that's not what I was conveying with my comment. there's nothing Rust specific about "empowering anyone to be a programmer", if anything there are languages that are far better at doing that because Rust has a fairly steep learning curve.
It's remarkable how many of our suggestions have already been covered in https://github.com/rust-lang/rust-marketing/pull/20/files
Another minor thought regarding "everyone" - I agree that it's misleading. I think the reach aspect of Rust is not about being _for_ everyone, but about _reaching_ everywhere. In other words, it's not necessarily for everyone, but it can go anywhere/everywhere should you choose it.
I like "Fast, Reliable, Productive. Pick Three." because that's what Rust means to me.
It also makes zero assumptions about what kind of programming you're doing, implying that Rust is general purpose. A lot of languages are touting "systems programming" these days, and like everyone else has said, I think it's best to stay away from that.
I really hate to add to the noise, but here is my recommendation for the new slogan:
The programming language that empowers everyone to build stronger software systems.
I think that this strikes a good balance between all of the goals.
I don't think the problem is that Rust's unique features aren't in the slogan. I think the problem is that Rust's unique features are tiny and hard to spot, in 12pt text, in the middle of various paragraphs (The 3 long paragraphs on the green background).
Basically, a user needs to be either looking for that text or reading the entire page in detail to find what makes Rust special.
On the current site, a casual reader of the page will see something of what makes Rust special no matter what. That's what we need to ensure in the new page. The importance isn't that it's in the slogan, necessarily, but that it's immediately presented to any casual reader.
I also am not a fan of the new slogan in that I find it lacks a proper audience. The stated audience is "everyone", but fails to describe why "everyone" would care about being a "systems programmer".
The fire flower metaphor in mind, but that metaphor fails to describe what the fire flower can do for other characters! In the fire flower example there's not really much else so let's try to think of a more applicable video game metaphor. The Smash Ball that enables characters in Super Smash Bros to use their final smash:

The new slogan would describe this by stating "It empowers Mario, allowing him to shoot a giant fireball to devastate his opponents". But that doesn't describe a lot of what the item can do! It leaves out what the item does for every other character in the game!
A better slogan might be "It unlocks the FINAL SMASH of any character, giving them the power they need to defeat any opponent." This applies to everyone. It's still a bit vague for my liking, but it applies to EVERYONE that would use the item and tells me enough to make me want to use it.
If I see "The programming language that empowers everyone to become a systems programmer." and I don't know what a systems programmer is, or don't want to be one, then I'm out right there. If that's truly Rust's goal then maybe that's fine, but I think the ecosystem shows that other "non-systems" programmers have seen a lot of potential in the language.
I won't give a suggestion because I'm not that creative, but I think there have been some much better options brought up here already. And to be clear, I think the slogan shouldn't be afraid to be specific about what it can provide (unlike my example above), it just needs to make sure those specific things have the correct audience!
/2cents
I was about to open a new isssue but then I found this one. My main focus is removing 'systems programming' from the slogan and replacing it with something everyone can agree on as desirable. Here's my take:
Rust is a programming language that allows safe, fast, and efficient use of all of a computer's hardware.
See more at my reddit post: https://www.reddit.com/r/rust/comments/a1jjuf/a_new_look_for_rustlangorg/earzwwy
Essentially I believe 'systems programming' encompasses getting a computer to complete a task quickly (wall clock) and efficiently (CPU/Memory usage). It also covers extending a computer with the ability to perform tasks that it couldn't perform previously through the use of new hardware (embedded, drivers, kernel).
I think focusing on 'do your thing in the shortest amount of time possible' will attract more developers to Rust.
Some people might believe the statement (without the 'safe') applies to all programming languages and thus is too generic a statement. I don't believe so. I rarely think about hardware when I'm programming Python for example. Maybe to the extent of 'how many cores can I use'. Python is more about finishing programming faster and not creating something that runs faster.
I can't say it's the best but I believe it's a step in the right direction and it's not a point I've seen other people make.
I think 'use of all of a computer's hardware.' might be better as 'use of all computer hardware.' The point of the 'all' in there is to imply embedded and driver programming: hardware that isn't just a PC or server. That's a pretty strong statement though: it's like, 'you have a computer? you want to use it to perform as task as quickly as possible without blowing yourself up? you want Rust.' Possibly hyperbole.
Sorry for even more comment noise!
Combining my first suggestion with this suggestion by @briankung (I really like the "any domain" part), how about this?
Rust lets you write extremely fast and reliable code in any domain.
Alternatively, the "empowers everyone" can be used (although I think I prefer not to use "empowers"):
Rust empowers everyone to write extremely fast and reliable code in any domain.
Is the emphasis on the "system programming" really that necessary ? Sure Rust is one of the best options for system programming, and also there are other use cases indicated below of the page. Although I am not sure, maybe telling it is a fast and safe, general purpose lang. could be better to embrace more and more people.
EDIT: For example i use Rust, as alternative to go, not because go has garbage collector etc. , but because i think rust is better designed and a more complete lang (imho).
The emphasis on "System programming" sounds like if you are doing some system programming stuff Rust is one of the best but if you are doing other things, there may be better alternatives, which sound like a restrictive slogan. And of course there may be better alternatives always, but that should be up to the user to decide that. No salesman says; "ok you can go with other options anyway" :)
What about something more abstract for a slogan? Like
Rust - Taming the power of CPUs everywhere, with less effort
Or
Rust - Where power and control meets peace of mind
EDIT: I personally like these because they convey the feeling of Rust, without getting bogged down in details. Then, ideally, they would be followed up immediatly by how Rust actually achieves this
When we wrote the slogan one of the most important parts was that it needed to be short. I disagree that "The new simplified slogan does not convey what makes Rust special."- it does! I think Rust is special because of its focus on empowering all types of developers. On the landing page the immediate next section explains the features of Rust, I don't think including Rust's features in the slogan is necessary, as a result.
But that immediate next section doesn't necessarily show up in posts like twitter and hyperlinks from other website, which is actually a common way people spread about(the language)
the things that make it powerful should be stated atleast in Twitter Cards, Facebook OpenGraphs etc., if not in Landing Page
A slight variant on @KasMA1990 's idea with more alliteration:
Rust - power. precision. peace of mind.
Some variant's for slogan:
Now the hardware needs to rust to be better.
Just rust to go deeper.
Simple and reliable - it is about rust
Concrete language for loose problems
Thanks everybody for the feedback and additional ideas! It's been very helpful to grasp that being a "systems programmer" is not necessarily a widely shared aspiration.
In keeping with the basic structure and sentiment of the slogan, a couple of the most promising alternatives that have been raised are:
We might also consider dropping "programming" to say just "The language that..."
For the sake of trying to hone this discussion toward a consensus, can we narrow any additional brainstorming to fitting within the "template" above ("The language that empowers everyone to...")?
The programming language that empowers everyone to build stronger software systems.
The programming language that empowers everyone to confidently build reliable, efficient software.
I heavily favour the second version, as it carries so much more meaning. What does "strong" mean in the context of a software system? Why should other languages be less capable of that? Can Python not be used to build a strong system? Or JavaScript?
"Reliable" and "efficient" are far more useful as descriptors; I can instantly tell you why Python is not the right tool to build efficient software: it's slow. No offense, Python is the main language I use and I love it but to anyone looking for time-critical performance I'd have to recommend looking somewhere else. Where? Rust, of course! It's fast and efficient, even focuses on that characteristic on their main web page (if we're going with the second version). I can also tell you immediately why JavaScript isn't the right tool to build (large) reliable software systems: mainly because of its dynamic and weak typing system (and other quirks). Again, no offense, I use it every week but I don't feel as confident writing reliable code in JavaScript as in other languages. What other language you might ask? Rust, of course! Reliability is one of its core features, as evidenced by the slogan on their main web page, again.
I couldn't make such clear statements about Python and JavaScript (regardless of whether they are true or not, I'm not trying to start an argument about that) if the slogan's main statement was about "strength". If you asked me if I think it's beneficial to use Python or JavaScript to write strong systems, I'd probably say "sure, why not" but I couldn't tell you why. It's just that the opposite ("they can't be used to write strong systems") sounds indubitably wrong. If you asked me to compare Rust, Python and JavaScript in regards to their capabilities to create strong systems with, I wouldn't really have an answer. And that's a problem: The slogan should give me an impression of the main features of the language to such an extent that I can compare it with other languages.
So I advocate going for a slogan similar to the second version, it serves its purpose as a slogan far better.
"Reliable" and "efficient" are far more useful as descriptors;
Totally agree with this. Interpolating the above two a little, I quite like:
The language that empowers everyone to build efficient, reliable systems.
(Or if the wording can be tweaked ever so slightly, I think replacing "that empowers" with "empowering" makes it a little less awkward: The language empowering everyone to build efficient, reliable systems)
Another suggestion above was to add "without effort". Similarly you could have "with ease". Or something along this line of thought.
A small side note: What about replacing the "everyone" with "you"? Some have argued that the wording with "everyone", especially combined with the keywords "systems programming", which is generally regarded to be harder than general purpose or application programming, might come across as kind of condescending or deprecatory, à la "even idiots can use it".
Changing it to "you" would counter this (assuming the reader doesn't consider themselves an idiot) and even fits nicely with the "fire Mario" analogy: it focuses more on how I personally benefit from this and can grow as a developer. So in total I suggest something like this:
"The language that empowers you to confidently build reliable and efficient software."
Can it be written even more succinctly? Assuming that anyone who stumbles onto rlo already knows something which lead them there. Even Typescript's slogan is "Javascript that scales".
Empowering everyone to build reliable and efficient software.
@repax That certainly sounds more slogan-y.
Question: Do we want to replace build with ship?
Empowering _everyone_ to ship reliable and efficient software.
To respond to some of the discussion so far:
What does "strong" mean in the context of a software system?
A slogan doesn't need precision. Apple's is "Think Different".
"Stronger software systems" is a term that is a) intentionally broad and b) unique. That means that its meaning can be claimed by anyone who encounters it and is also memorable.
We want to avoid cliches and avoid descriptions that every other language community would use. We should strive to avoid terms that are overused and generic.
There's a hidden meaning there too. Strength is a virtue, in the Aristotelian sense of the word. It is normative, rather than descriptive. The Rust community has not been afraid of enforcing community norms, rather than pretending that technology is perfectly neutral.
People encountering Rust who are _not programmers_ don't understand that "reliability" and "efficiency" are actually technical terms with very specific meanings within software.
Why should other languages be less capable of that? Can Python not be used to build a strong system? Or JavaScript?
The same question can actually be asked of "reliable" and "efficient". There are many languages that seek those aims. Why can't JavaScript be used to make efficient and reliable software?
Hopefully these points flesh out what is behind my thinking :thought_balloon: :smile:
I know inclusivity is important and I my self am part of an underrepresented group, but the emphasis on "everyone" with nothing about the language sounds like that's all you care about which I think really doesn't fit in a slogan
Just wanted to chime in again reliable and efficient are a coupling that Rust encodes for me. Not unique separately. Having them both is what makes Rust unique. There are definitely languages that allow efficiency at the cost or reliability, and languages focused reliability at cost of efficiency but rust as always been the why-not-both language for me. That's what brings to point empowerment. It makes it _relatively_ straight forward for those too properties to just fall from it's design.
I'm super sypethetic to the "everyone" comment above and various ways than can be interpretted. Reading that a second time in myself an unclear what everyone means. One of rusts killer language features is the community. I'm not great at word smithing but it may be a nice excersize to emphasize community is part of the language ( in few words as possible ) the community thing is my take but may distract from the actual language bits. Who knows maybe the community is actual what makes rust so unique ;)
Regarding the use of "everyone" in the slogan: if this is going to be more than just marketing, and instead represent Rust in a more meaningful way, then following the slogan with the question, "But... does it really?" must lead to an honest answer "yes". And not for a hopeful future Rust, but for Rust as it is now.
I _really_ love Rust, so I hope no one is taking my comments the wrong way. But so far, for me at least, very few of the proposed slogans have rung true in that way. Partly this is because of the "everyone" bit. _Especially_ when it's italicized, which for me shifts it from being a figurative "everyone" to a literal "everyone".
But the more I think about it, the more I feel the broader issue with the new slogan and its iterations is that they present the _aspirations_ of Rust (which are laudable and I agree with) as if they are current reality. And that rubs me the wrong way. I would again like to turn attention to Swift's slogan, which I think does a good job of presenting aspirations _as aspirations_. I'm pretty terrible at this, but maybe for Rust something like this (but better) could work:
"We're working to bring the development of efficient, reliable software within everyone's reach."
That is a slogan that, if I were asked the question, "But... are they?" I could definitely answer "yes". Because that is something the Rust team and Rust community has consistently strived for and worked at: making Rust approachable to more and more people. It speaks to the aspiration, but without confusing it with current reality.
Another way to meet the "can we answer 'yes it does'?" criteria is simply to focus on the features/qualities of Rust itself, rather than using the fire flower approach--more like the old site. Which I'm not advocating, but pointing out for the sake of completeness, I suppose.
Anyway, I realize at this point that a change away from the template @aturon highlighted is unlikely to happen. But I figured I'd toss in my last two cents before heading off, just in case it reaches anyone. In the end, how Rust develops and the quality of the community are what actually matter, regardless of slogan. And Rust is pretty top-notch on both counts, so I'm not terribly worried. :-)
We want to avoid cliches and avoid descriptions that every other language community would use.
I think this note from @timClicks sums up my feelings here. I look at golang.org and see
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
That's pretty much the same as either of
The programming language that empowers everyone to become a systems programmer.
The programming language that empowers everyone to confidently build reliable, efficient software.
The "Why Rust?" section certainly elaborates, but I'd love to find the perfect word to put in the slogan to actually distinguish Rust from everyone else. (Now if only I knew what it is...)
For me, I associate Rust with "Fast, Reliable, Productive. Pick Three.", that's what I've found most effective when describing it's appeal to people unfamiliar with Rust.
There are many slogans, and the old one is most likely not the best possible one. Yet I'll go out on a limb and say the new one is straight up wrong. That's because there is a caveat to "Fast, Reliable, Productive. Pick Three.", Rust is complex and requires an understanding of a multitude concepts. Learning about general programming requires at least an understanding of control flow, and likely input output to do anything observable. To use Rust proficiently one also has to understand on top of that a static type system, lifetimes and mutability. All this combined can easily be overwhelming for someone starting to program. I'd never recommend Rust as starting programming language. Nor would I recommend C++ for similar reasons.
I think Rust is an amazing project and I want more people to use it. At the same time, saying "The programming language that empowers everyone to become a systems programmer." is a bit like saying "The formula one car that empowers everyone to become a race car driver.". Not everyone wants to become a Rust programmer and if history has shown anything about programming languages with a sense of backwards compatibility, they never get simpler. So hoping for a day where Rust is as easy to pick up as Go, will likely never come, and choosing a slogan that expresses these aspirations as a fact, seems rather short sighted.
If we have to fit american social political aspects into a international programming language slogan, my vote is for:
It's both more informative and less wishful thinking.
Otherwise:
Even more succinct, and hard to misunderstand.
I don't really want to add more clutter to this already extensive discussion, but I had an idea:
Clearly there's been an awful lot of debate over what slogan to use. What if, instead of a slogan, we used a word cloud (think Wordle), which would be generated based on a survey: "Pick one word that describes Rust means to you" or similar. Words could be larger relative to other words if more people selected that word. This puts the emphasis on the community, and allows everyone to throw into the "slogan" what they want to see there, basically allowing the "slogan" to convey all of the different ideas expressed here.
my proposal
Rust is a programming language that allows safe, fast, and efficient use of all of a computer's hardware.
didn't get any traction but I still feel like there's something valuable in mentioning 'hardware' in the slogan. I feel like 'systems programming' is more of a perspective and that you want to appeal to people that have that perspective regardless of whether they would call what they do 'systems programming'. If you're thinking about how the machine is going to execute your program then you might want Rust.
None of the following are very good but maybe I can inspire someone else to pick up my idea and run with it. It's hard for me to think of something good in terms of the required template. As someone else mentioned though I do think it sounds better as 'empowers you' than 'empowers everyone'. It's more personal.
The language that empowers you to get the most out of your hardware.
The language that empowers you to implement optimal solutions for your problems.
The language that empowers you to become one with the machine.
or at least, something like that 😃 "efficient software" is good but the proposed
Empowering everyone to build reliable and efficient software
is too close to Go's slogan (simple, reliable, efficient) in my opinion. In fact the similarity leads to the negative thought "oh, so it's like Go, only not simple''.
Rust: a complex beast that uses every cycle of your computer efficiently to annihilate your problems as quickly as possible.
that last one is a joke 😄
I'm not exactly sure of what the slogan should be, but it might be a good idea to parallel the intro to the Book but more concise:
"It wasn’t always so clear, but the Rust programming language is fundamentally about empowerment: no matter what kind of code you are writing now, Rust empowers you to reach farther, to program with confidence in a wider variety of domains than you did before."
EDIT: I revise my statement. The current slogan is kind of catching on to me and I find that it does mirror the intro to the Book and still highlights what makes Rust special. The slogan doesn't need to say everything Rust can do. Scroll down and that info is already there.
It maybe helpful to answer this question. Are we working towards a "why rust?" Or "what is rust?" in this gh issue?
Classic fail example home page of java says nothing about what it is
Google Java and the first result is https://www.java.com/en/download/ which still doesn't really mention the programming language
Java technology allows you to work and play in a secure computing environment. Upgrading to the latest Java version improves the security of your system, as older versions do not include the latest security updates.
Java allows you to play online games, chat with people around the world, calculate your mortgage interest, and view images in 3D, just to name a few.
Java software for your computer, or the Java Runtime Environment, is also referred to as the Java Runtime, Runtime Environment, Runtime, JRE, Java Virtual Machine, Virtual Machine, Java VM, JVM, VM, Java plug-in, Java plugin, Java add-on or Java download.
Since the beta page goes right into the why rust after the bits were debating maybe it would be helpful to keep focused on the "what is rust?" question.
I still think the best tagline is that from 'This Week in Rust'.
Rust is a systems language pursuing the trifecta: safety, concurrency, and speed.
Within the guidelines that'd be something like:
I might like #3 best. But I think the newsletter version is better.
I love the Mario fireflower analogy. But it's also easy to take it too far. Lord knows we've _all_ visited websites that focus entirely on what the product will help you achieve and give you zero indication of what their damn product actually is.
Knowing that a language is pursuing safety, speed, and concurrency tells me a lot. Those keywords provide clear differentiation from other programming languages. The phrase 'to build stronger software systems.' could apply to literally any programming language. C++, Python, JavaScript, Haskell, etc. It doesn't add any information to "this is a programming language".
/my 2 cents
Perhaps:
The programming language that empowers everyone to be a systems programmer, and craft any program with safety, concurrency, and speed.
The term "systems programmer" is very important. There are 10s of applications languages out there and many more coming, surely. There is only one C/C++ alternative, and it is called Rust. If the core systems programming focus of Rust is compromised, it would be a very sad day indeed.
Secondly, individuals who have not programmed basic microcontrollers sometimes think Python or Go and Rust are similar technology-wise. Leaving the term "systems programming" out would open up many incorrect comparisons of Rust to the many garbage collected (GC) languages out there. It's paramount to emphasise this bare-metal programming capability of Rust front-and-centre by stating "system" in the slogan.
I love @zxey's suggestion earlier in the thread:
Rust: The programming language that empowers everyone to become a fearless programmer.
It's such a subtle change from the source quote but for me, someone who wants to get into Rust more and hasn't yet, it's the most effective at making me want to jump in. :)
The word "fearless" indeed seems to be a great summation of the affordances that Rust gives you, while still focusing on the empowerment of the user rather than a bunch of technical jargon.
The word "fearless" indeed seems to be a great summation of the affordances that Rust gives you, while still focusing on the empowerment of the user rather than a bunch of technical jargon.
I just don't find generic statements that compelling. All languages want to make people fearless programmers, all languages want to be super fast, essentially, they want to be everything to everyone. That is just not a physically achievable goal.
Stating "everyone to become a fearless programmer" is just a statement that I distrust. It makes me think the language is over-promising.
I have suggested this elsewhere, so for posterity, my vote goes to: "Relentless Performance & Productivity Without Cutting Corners"
Rationale: I'm wary of fear-based advertisement, also many programmers will not experience fear, and gleefully run into UB-land instead. Also the "empowering" verbiage is uncompelling to programmers who already feel powerful, either by the abstractive acumen of their high-level language or the down-to-the-bits raw power of their low-level language.
Instead my slogan touches three of the main selling points of Rust: Performance, Productivity and Reliability (the latter because avoiding cutting corners leads to reliable software).
@llogiq why "relentless"? Your proposal looks good enough without that word.
Without Cutting Corners
I can live with that wording. It hints at the fact that Rust can function without a runtime (GC), while providing sufficient user-friendliness to be ubiquitous. Newcomers need to know that the learning curve is steeper than most other languages for a very good reason. Else they'll become disillusioned.
Just found this in a post on the official Rust blog:
The Rust team is happy to announce the latest version of Rust, 1.12. Rust is a systems programming language with the slogan “fast, reliable, productive: pick three.”
I wonder why this slogan had been abandoned.
@tshepang because we will not compromise performance for, say, learnability.
I'm sorry I haven't been able to participate more directly in this thread due to travel and the short timeframe. But I've tried to take some of the rough consensus here and shop it around the core team for buy-in.
Everyone is feeling comfortable or good with:
Empowering everyone to build reliable and efficient software (no italics)
(Very close variants of that slogan have appeared many times on this thread).
Since we ship the site live tomorrow with Rust 2018, this will be the final slogan! Thanks y'all for the input, and in particular helping us see how the "systems programmer" aspiration wasn't hitting quite the right notes.
Most helpful comment
I don't mind the new slogan, but I would also like it to contain some more concrete selling points.
The term "systems programmer" is problematic (as it means something different to different people). This is even mentioned in the official blog post. Furthermore, some people don't really know what "systems programming" is (as they haven't heard of it before) and thus might think Rust is irrelevant to their programming world/career. So I'd say we should drop that term.
Another idea:
It changes from "you'll be fire-mario" to "you will be able to shoot fire balls" which I think is more descriptive. I didn't use the word "safe" as this is also a pretty vague term in the programming world (memory safe, hacker safe, ...) and the word "parallelized" because it might be too specific (many Rust software doesn't need to be parallized to benefit from Rust). "fast" and "reliable" are fairly clear IMO.
Sure, this slogan doesn't contain as much information about the language as the old one, but this kind of information is just below the slogan, so I don't think it's a huge problem.
Alternative: replace "The programming language that" with just "Rust".
(as an aside: really really great work on the new website. I am super excited right now! You really made my evening a lot better ^_^)