I also thought his work in evangelizing Rust on HN, Reddit and a million other places was hugely important, and a big part of why there's a lot of positive buzz around the language. Steve, I do hope you'll find the time to continue at least a part of this work, because I think it's vital for the success of Rust.
 - https://doc.rust-lang.org/book/
I plan on continuing both, as much as time allows.
Once again, thank you for promoting Rust, which has so many benefits in so many areas, and being friendly and helpful wherever I encountered your presence.
Yeah. As someone working in Scala I honestly think I'm in the right language technically, but I wish we had even half the community spirit that Rust does, and Klabnik is a huge part of that.
BTW, have you looked Scala/Rust interop? Both languages are ML-style languages, so they are close in spirit.
It doesn't look easy (there's no Rust ABI that preserves safety properties) and I'm not convinced there would be any benefit. The main reasons you'd want to write Rust rather than Scala would be faster app startup (and even then, scala-native or scalajs are options) or some realtime requirement that you couldn't meet with even carefully tuned Scala due to GC pauses (not a case that I'm convinced actually exists in the real world). In either of those cases a mixed Scala/Rust project would have the same issues as a pure-Scala one. Most things that scripting languages use native libraries for already have native-to-JVM implementations (e.g. media formats) and I'd sooner use a Java library than worry about an interop-to-Rust boundary. If Rust becomes the de facto standard for video codecs then I can eventually see maybe making occasional use of some ffmpeg-equivalent via JNI, but any such library would probably expose a C-ABI interface and be used through that rather than supporting any higher-level interop. (I suspect Rust is constrained by what LLVM offers in terms of stable interfaces).
I've been watching him from the sidelines since the shoes/hacketyhack days (a Ruby-based, cross-platform GUI toolkit and a programming environment for beginners built on the latter. He was leading those community-maintained projects after _why vanished from the Web in 2009).
He's been consistently excellent.
Before Rust, he also had a REST-based stint, writing about things like HATEOS.
A great loss for Rust, since he probably won't be able to dedicate as much time to it, and for Mozilla.
Of all companies, I would have expected the Mozilla Corporation to dearly value the work he was doing...
I've seen a guy who worked full time on open source have a Patreon, which had a few big sponsors that would pay / donate $5K or $10k / month - that's another good option IMO. Although I'd donate it directly to him, instead of having Patreon scoop off their share.
For most companies, the proposition for open source is that you get something of value for (almost) free. If you start paying someone to work on that thing the equation becomes more complicated. Now you are competing with 1) A different flavor of free (another project) and 2) Non-free but with an SLA that you can count on.
For a while I was considering going all-in to try to get a role at Mozilla. I really believe in their mission, and I drink the kool-aid when it comes to the browser market getting gobbled up.
What held me back at the time were the company reviews. The culture sounds toxic, and the management sounds incompetent, and there's no force of change that has done anything to change that in the past ~5 years.
So this is a relief, because random online statements are often a limited glimpse into a company, and I've been worried that I made a bad choice by not going for a role there, but seeing something like this come from steve is very damning for Mozilla.
Best of luck Steve, I’m sure you’ll end up somewhere great.
If Mozilla's mission and manifesto resonate with you, give it a shot. With Microsoft throwing their weight behind Chromium, we're the last bastion standing against a WebKit-derived monoculture. It's an impossible challenge, but it matters, and we've beaten the odds before. Current openings are at https://careers.mozilla.org/listings/, and I'd encourage you to apply.
You could say this is true at any company, but it feels like more of a problem when comparing a company with lots of really good reviews/testimonials to one with very few good ones.
I think I'd have to have a close friend, or someone who I trust internally, to convince me of the quality of a particular team at this point, and I haven't got that. Also, I've moved off the career path, I think, that would be of value at Mozilla.
I think this is a serious problem in all sorts of fields, and I've never heard of a good answer. Sometimes Glassdoor is enough to get impressions like "healthy devops team, unhealthy frontend and sales teams", but with companies where the same job title appears on many teams it's even harder to sort out. I suspect you're right that it's a significant reason for word-of-mouth job searches; they're a candidate's best form of diligence.
It definitely cuts both ways, too - no matter what the prevailing culture a large company is likely to have teams out of sync with it. Places like Uber and Riot Games that make the news for bad culture have teams who aren't exposed to that stuff, and on the other side we've all heard stories of localized tyranny and incompetence within otherwise-great companies.
You're just giving yourself reasons to fail. Give yourself a reason to succeed.
You are losing against chromium because gecko was never made a platform for others to use. There is not even a platform engineering group with its own VP since it got folded into Firefox when the engineering VP decided to cut the support for the only other gecko product, FirefoxOS. But hey, he's still on the payroll with an executive assistant making his haircut appointments, so all is fine!
The management is so risk adverse it's ridiculous given how much they have in the bank. The good news is that innovation on the web happens in other places now - just look at all dweb projects, another area that MoCo refused to staff at a decent level.
Thunderbird still has more users than FirefoxOS ever did.
At a technological failure, the more-or-less passive decision to abandon any embedding story for Gecko is probably Mozilla's single biggest fault. (I say more-or-less passive because the transition to Gecko 2.0 necessitated adjusting embedding hooks, and the original intent was that it would be temporary until a new embedding story could be worked out. The direct embedding was then abandoned in favor XULRunner, itself abandoned in favor of webapprt, itself abandoned in favor of... nothing, so far as I know).
That sounds like part of the problem. Mozilla shouldn't "vary greatly between teams and management chains" like it's some fossilized megacorp -- that's for the Oracle's of this world.
It should be a nimble and efficient non-profit style organization.
1) "Can't afford" the development time to allow me to customize keyboard shortcuts. They deprecated the old functionality and replaced with a limited "oh, extensions can do that, but they only take effect after the page has loaded." Super Metroid had that in 1992 for the SNES.
2) No unsigned extensions because of a phantom "security risk". Not even if you enable it in an obscure part of the config. Geez, if I can't modify my own open-source software, what's the point? You might as well shrink-wrap Firefox and make me get it from Microsoft at Best Buy! https://www.youtube.com/watch?v=taGARf8K5J8
3) Mr. Robot marketing integration, where the marketing was so important that they got to override reasonable concerns about "gee, do you really think we should force an add-on for a security update that has a cryptic message in its description?"
I imagine that some other teams may have a different experience.
Oh, yes, I do remember of a branch that used to deserve complaints. As you know, that branch doesn't exist anymore :)
Is this an indirect reference to Brendan Eich's sacking or is it even worse?
I find it quite disappointing that drive-by downvotes are what happen, rather than more discussion, but that's life I guess.
Glossing over details, Mozilla Corp seems to have two cultures: one for engineering and team management, and another for mid-to-upper-level management. When these two groups interact, it tends to produce unhappiness. Over the years, that has been the source of most griping I've heard from coworkers, particularly when they need upper management's approval.
Different parts of the company are pretty isolated from each other, and there's no real standardization, so experiences across the company likely differ from mine. The personal experience would depend a lot on who your manager is and how strongly they're able to advocate on your behalf, particularly when it comes to things like expanding your role and getting paid for that.
This is in line with what I've heard from my friends who stayed longer than I did. But from my perspective now, wow does this sound toxic.
It's sad to see things be like this, I loved Mozilla for most of the time that I was there.
The case regarding Daniel Micay and the Mozilla/Rust community is also worth looking into. But not sure how much is easy to come by as things have been deleted.
Perhaps 2019 is the time to start the Rust Foundation, as mentioned by boats and others. If so, you'd clearly be one of the founders. I would put my name into the ring for that as well, as we're now in somewhat similar circumstances. All it needs is some money, a lot for a pizza cook perhaps but a pittance by Silicon Valley standards.
Wherever our paths lead, I hope they continue to intersect!
I am really of two minds about a foundation. I've seen a few different variations of this idea, and they all have a lot of downsides, as well as upsides. It's not clear to me that it would be a win.
The cons are, well, that work is hard, and you can also end up in a position where you spend as much time fundraising as you do actually improving the project. This is why people talk about "efficiency" in non-profits, ideally these tasks take as little money as possible to do the administration, and spend as much as possible on the project. Also, when you're in the business of distributing money, you have to manage people's reactions to how you spend it, some people are going to be upset that you picked project A over project B, or person A over person B. That's also a form of overhead.
(and I'm not talking about MoFo here, I know very little about it or how it works. This is based on experiences with other non-profits and foundations that I've experienced and/or heard about elsewhere, and from lots of other people.)
Thanks a lot for the explanation, I've never really understood how foundations work.
Steve, it's not my business to tell you what your career should be, and TBH I have no idea what your relationship is with the rest of the Rust dev team. But maybe you would be good at creating a Rust Foundation?
 -- it would have to be a real US 501c3 or global equivalent, not a kickstarter/gofundme.
A big part of what drew me into Rust is that the people behind it have reasonable ideas which are very well documented. I know this doesn't sound terribly exciting but the older I grow the more I appreciate that as something very valuable - and amiss in many projects.
Besides other things Steve contributed a lot to these values by writing documentation and first and foremost by being there and answering questions - online and at the conferences.
> Well, the first thing is that I don’t plan to stop working on Rust. How much I’ll be able to depends on what’s next, but that’s the great part about open source; I can continue to help the thing I love, even if it might not be full-time anymore.
Glad to hear that he continues working on Rust. I really hope he will find a job that allows him to work on Rust full-time though. Having to split ones attention isn't often going well. Maybe this is kind of litmus test for Rust even: As much as it hurts me to write this but if there isn't a well paying full-time opportunity in the Rust space for someone like Steve then maybe Rust isn't going anywhere.
Knowing him (whatever little) things must be really frustrating for him to call Mozilla out in public.
Rust is what it is- not because its an amazingly well designed language - lots of languages are very well designed Haskell, f#, Scala. But Rust has a very public development and Steve has been great at managing the public aspect.
I sincerely hope Steve takes a public facing role again.
I don't know how far Rust will go in adoption breadth and lifespan, but it's already clear that it's had a major impact on the community. Both personally and on HN, I've seen it drive a new cohort of people to take an interest in PL design, low-level languages and safety guarantees, and even kernel design theory. Talented people who have never previously gone in for C or C++ saw a chance to start in on those fields with Rust, to all of our benefit.
It's obvious to me that Steve (and the Rust team more generally) deserve a lot of credit for that. Their communication and community outreach have been unparalleled, and it's sparked great deal of interest and engagement that might otherwise have been missed.
Exactly. They've done what Ada and other safe, systems languages couldn't do. They made it go mainstream with stronger protections than before on top of thriving community. Quite amazing.
Between this and Jess Frazelle (another household name) never getting a promotion shows how wrong this industry is.
Which to me is the crux of the matter. If I was your manager at Mozilla and looking to maintain team cohesion and minimize talent loss, engineers would always come first. In my experience it is very common for managers with an engineering background to think that anyone can be a technical writer. Same for evangelizers. People do it for free if they like the technology that they are using. These are not strong bargaining foundations.
Yet what I see most of the time is that organizations exploit employees' passion. The more you like your job, the less likely you will leave, so why bother paying you more?
I had a moment of epiphany when my manager said to me in a 1-to-1: "You've been very passionate and doing great. Now $competitors are in town, so we will raise your pay by $a-double-digit-number %".
I went out of the meeting and said to myself "Screw it, I have been exploited for $X years. I will start looking for my next job tomorrow".
I've always wondered how much value employers lose via this sort of error. 'Reactive' compensation absolutely does drive people away, for good reason. Retaining employees by matching outside offers is even worse; outside the very highest levels it fosters instability and encourages people to interview elsewhere.
So sure, your employer saved ($X annually * years without raise). But then they lost an experienced employee, likely to a competitor, had to go through a new search-and-training period, and quite possibly had their prior crappy salaries on Glassdoor driving away candidates.
I assume it's a net win sometimes, but I strongly suspect it's often a short-term tactic that ends up not only mistreating employees but losing money.
I suspect nobody can come up with a number that would convince everyone in the chain in a large organization. If that could be done, I wouldn't end up in this situation in the first place.
1. They have low-balled me before, they will do it again.
2. They don't pay based on how much value I generate but as little as they can to prevent me from moving.
Royality is a two way street. While the company doesn't have my best interest in mind, why should I have theirs in mind? It would be foolish for me to not look around. Once I put in the effort to look around and got a better offer, I might as well leave the company for good.
He's certainly very low-latency.
I thought it was designed by Graydon Hoare?
That widespread perception could have been part of the problem.
This is an aspect that gets overlooked in many businesses & careers. I've heard it phrased that companies go through 3 stages: Startup, Scale Up, Optimize. The above quote is a sub-stage of Scale Up. Some people are built for just a single stage and knowing how and where your skillset fits in is crucial to career happiness. As well as knowing when to encourage employees to move on.
Great post and I wish @steveklabnik continued success in his career!
Also, startups, since they are often run by people new at running companies, are often slow to respond to these kinds of folks. It's also rare that folks recognize this in themselves. I very nearly quit my job when going through a bunch of rough patches, because I thought, maybe the company finally scaled past me. I'm glad I didn't because it's smooth sailing again, but it's always important to reflect on yourself and ask if you are really doing the best you can. It's really hard to quit a role that is going poorly, let alone going passably well.
Early on, people wear a lot of hats, which means they get to be involved in a lot of different parts of the company and its growth. At a certain stage, teams compartmentalize, and people who don't like being isolated to one or two teams tend to get frustrated with companies as they become more structured.
There's also often a phase where that structure is just starting to be formed, and it can be very awkward and unappealing to people as it plays out.
What's most fascinating about the Hogwarts metaphor is that members of each house each bring some useful value, but the core values of each are often in conflict with the core values of the others.
At some point Mozilla went from being a heroic struggle that appealed to people who had a specific vision for the future of the internet, and turned into a status symbol like having Harvard on your résumé. This happens to any successful startup. A company that would never have appealed to a lot of workers suddenly becomes desirable (all else being equal) because of the status associated with it. Not to bash MBAs, but this is why I advise a "absolutely no MBAs" policy for startups.
MBA diplomas are simply status symbols and most people who have the degree joke about how easy it was to obtain and how much partying/networking they did while in school. They also graduate expecting to be placed in a leadership role due to the degree, even though young MBAs typically have little to no actual work experience or hard skills. I've seen overly confident MBAs nearly sink funding rounds for startups because they thought they were being clever with accounting and the investors saw right through it.
(I chose Mozilla over large company offers a decade ago because the work seemed more interesting, knowing full well it was more of a gamble in terms of my career. I've never regretted the decision.)
Thanks for all your hard work on Rust, Steve, and good luck with the future!
This is also one of the reasons I'm skeptical about Rust, since Mozilla is the backbone of Rust development. They don't strike me as an organisation that can shepherd a programming language long term and with their market share taking a nose dive they're bound to get even more desperate and cut non-essential projects or make new data-sharing partnerships.
Anyways, good luck on your next adventure. Based on your work, you don't deserve to be the lowest paid in the team...
All the best, and I hope an even better opportunity comes your way!
All the best luck going forward, because you absolutely deserve it.
That said, to repeat, I don't believe this is something Mozilla would ever try to do.
(It's unclear to me what that would even mean anyway. Rust is getting pretty mature, and the direction of the language is largely fixed at this point.)
The most important thing is that Mozilla's management has never tried to control the direction of Rust. That's more than can be said for most other languages with corporate backing.
Think of it as roughly synonymous with "empty suit" or "airhead".
Surely the perception of having a trendy location can't be worth more than market salaries in the pursuit of talent? Are there other benefits to the location besides perception?
Definitely. Access to talent pool, networking opportunities, easy customer research, marketing, and so much more.
Would the fight for digital liberties really be _that_ encumbered by a location in Kansas City, Austin, Atlanta, or even a generic Valley office park?
For the same $1.3k in SF, I could get a deluxe cardboard box by the side of the road. No thank you. And KC is google fiber as well, so I'm getting great internet for $50/mo.
I really think more tech companies should try KC or Austin. The cost of living is much lower, so more of people's salaries becomes spending money.
Probably not, but it's hard to convince your entire company to up and move. SF is not perfect, and there are big problems with it, but there are also lots of nice things about it and it's a known quantity. Personally I do want to leave soon, but to where is a big question with no obvious answer.
I don't know you but I wish I did.
You seem like one of those really lighthearted folks that make everything better in life. From reading your answers on IRC and Hacker News, You are always humble and eager to provide answers. When confronted with arrogance and ignorance on several replies here, You reacted with facts and without ever taking the conversation in an impolite manner.
You see, one thing I believe is the cancer of our current line of work (tech) is the notion that we must obey blindly to some kind of savior or master, and that we have to put up with the masters' erratic and disrespectful behavior, for he is the 'bringer of the vision' to us not-as-enlightened folk. We don't need to put names but several come to mind when it comes to FOSS and stuff, right? In your case, I consider you a true master, for that you encourage collaboration without ever being uncouth to others just because of a position of power.
Your honesty and kindness shines specially in your post regarding Mozilla. You are one of those people that are able to talk "uncomfortable stuff" without making people reading it uncomfortable.
Thank you for being an awesome leader and I hope to read more and more of your answers and informational posts here, take it from the unknown no-names of the Internet like me: you are doing it right and being like this is gonna keep making people gravitate towards your works throughout your life.
May you multiply your ability of connect people with your heart, a skill which is much lacking in the current world of ever greater egos.
Interacting with him on HN has been nothing short of a pleasure.
Best of luck wherever you go, Steve!
Never did I ever expect to see that on HN. <3
2019 culture clash is already wild.
I'm sad (and a bit angry at Mozilla) that you didn't get the career recognition you deserved at Mozilla. I look forward to seeing what you work on next.
A tech company couldn't find a better evangelist IMO. Steve, you should be commanding a top tier salary.
When I look at Fuchsia source I don't see much Rust. There is Fargo, a Cargo wrapper that integrates Rust into the Fuchsia build system, but I don't see a lot of actual Rust code in the system.
What am I missing? I've cloned Topaz, Zircon and some other large Fuchsia repos, but I see only a smattering of Rust source.
Basically: it’s not for the general reader, but a specific subset of them, if I were to take a guess.
I read the post as an explanation of his decision, with as much information as he was comfortable sharing. And since it's his post, his job and his _choice_ then that's all we get.
If Mozilla doesn't play well with their core business, and actually innovate, and piss people off even in their side projects like Rust, they'll continue the race to irrelevancy in browsing market share and loose their search engine placement deals. It's not that difficult to go from hundreds of millions per year to nothing fast.
I hope you go somewhere that truly values you.
I've read through a large portion of the Rust book and really appreciate how good it is. It's very clear and made me feel like I grasped quite a bit in a short time. Maybe someday I'll be writing or contributing to Rust projects.
Thank you Steve!
If I could work on an operating system it would be something like http://www.barrelfish.org/ but with a few big changes.
Your post makes me a bit worried with what's going on with Mozilla, and also for the future of the Rust language. I have mixed feelings about Mozilla myself. Some people mentioned in the comments something about a Rust Foundation. I will definitely be happy to chip in if it's in the plan.
Thank you for everything, and good luck wherever you go next (:
Epic? Unreal Engine was one of the first 3D engines with WASM output, and if you thought you'd never work at a payments company and loved it, you might enjoy gamedev (or gamedevdev in this case). Also Raleigh NC is a nice place to live.
It's ideally located to live in a nice house, have a great job in software, and not die of boredom. Plus there's a lot happening in tech in nearby Durham.
Only complaint (and why I left) is that the region lacks good public transit. Having a car is pretty much a requirement.
It’s not nice enough to move cross country.
All joking aside, colloquially speaking, I assume that "Raleigh" is shorthand for the entire greater Triangle region when speaking to, or in regards to, outsiders. Personally, I live in Chapel Hill, but I consider myself a "citizen of the Triangle". :-)
2. How on earth did you came from Pizza to Tech?
3. I read it as if you were working on Firefox Pre 1.0 and Rust in Mozilla. And I don't think that is the case?
4. Finally someone pointing out the problem with Mozilla. ( Far to often they want to play themselves as the Saint or as David vs Goliath )
5. Have you thought about doing something with Rust and BlockChain?
Anyway Best of Luck.
2. The pizza job was through high school and college, I transitioned to tech after I had the degree.
3. I have never contributed to Firefox, but I have been a passionate user for years (I'm writing this comment in Firefox, for example)
5. I'm not particularly interested in blockhain stuff. There is a lot of Rust in that area though!
I plan to do Rust in 2019 more. I'm amaze by performance of Rust software(Parity of Ethereum). My friends who read HN that I talked to knew Rust because of Steve. It sounds ridiculous but it's what I observed.
Mozilla do a lots of experiment and weird projects. yet they aren't willing to put him on same level of pay scale.
Driver is up the ranks from cook? I don't know why, but I always assumed that it was the other way around.
In all seriousness, had really good interactions with him in the Rust channel. Neat to see an author engage with the community and help out. Contributions, should they decrease, will be missed.
Looking at Steve's 177 'source' repositories @ Github and disregarding documentation and presentations, there is absolutely nothing that can be described as substantial engineering. Throwaway code, small sample projects and tiny tutorials and more often than not, skeletons and incomplete beginnings. Yes the Rust book is excellent but at the end of the day, nobody who is in the position to give out SV $$ really cares. Had Steve spent his years using Rust to solve hard problems, he'd have recruiters banging on his door 24/7 but the fact is that documentation and hype on HN and reddit is not a good recipe for a solid career.
I don't know Steve personally and I have no dog in the Rust race, merely expressing what I have personally experienced working in SV for over a decade.