5 ms·
An an ex-Apple engineer I can assure almost every programming language you can think of is probably used by one team or another. The idea that a team rewrote a
by thrwn_frthr_awy 6y ago
An an ex-Apple engineer I can assure almost every programming language you can think of is probably used by one team or another. The idea that a team rewrote a service in Rust means Apple is "all-in" in Rust is ridiculous.
Every large company I've worked at has had many, many internal services using all sorts of different languages/frameworks.
- geodel 6y agoAgree. I think this is typical 'small guy landing big punch attitude'. I see this is common for languages which have not yet achieved (real or perceived) popularity.
- lmilcin 6y agoNot every company, but some companies, Apple included, like to experiment for the simple reasons that some of the experiments pan out and it pays for ones that don't. This makes more sense for tech companies. I work mostly for large banks and there definitely is less experimentation but there still is more experimentation than one would think (I have couple large Clojure projects very close in my org).
- thrwn_frthr_awy 6y agoIt's not because of experimentation–it's because Apple for the most part lets their team's choose what they feel is best for what they are trying to accomplish. It is trust. If there was a concern about a technology choice, it was discussed and pros/cons weighed, but there wasn't some standardization of language under the guise of "developer productivity".
- lmilcin 6y agoThat is experimentation. This is organization say it lets people to make mistakes because of potential payoff. If the organization did not believe in potential of value from these ventures there would just be a small limited amount of languages to choose from because it is more economical when you consider support system. This is starkly visible in banks where there is huge need for development support system but no belief in value from ventures into obscure languages. The end result being that everything is written in Java and maybe couple other JVM languages (just because it is easy when you are already invested in JVM).
- thrwn_frthr_awy 6y agoI guess I don't see a choice as an experiment. It's about using the right tool for the job. There could be multiple languages used by a team and a choice be made to use one over another. There are pros and cons depending on what is most important (speed, safety, hiring, etc.), but that doesn't cause those choices to be experiments.
- je42 6y agothe "right" tool does not only depend on the business problem to be solved, it also depends on the team itself. if the team doesnt like rust, they probably wouldnt use it less they are forced.
- jbverschoor 6y agoNo it's not. It's business trusting the expertise of their employees. Has nothing to do with experimenting.
- danudey 6y agoI wonder what the barrier would be to using Swift for something like this. Obviously there is one, but I wonder what it is.
- jamil7 6y agoChris Lattner has stated his goal with Swift was for it to be able to “scale up” and “scale down” for high level and low level tasks as needed but not that it is necessary always the best tool for these use cases, just that it can do it when you need it. It’s sweet spot is somewhere in the middle. Swift is also reference counted which might not work well for low level networking, linux support is also lacking.
- Matthias247 6y agoAgreed. It's the same for the other bigger companies (Microsoft, Amazon, etc). However people with less experience often assume those big companies have strategic directions for tech stacks, and that one teaming using something must be really important and implies bigger usage. I might even have assumed the same when being fresh out of university. Therefore any news about "X is using Rust" seem to get a lot of traction.
- cbHXBY1D 6y agoFor example, my team at one of the big software companies has code in Rust, Python, C++, Go, Elixir, C#, Scala (Spark), and probably another that I don't remember right now.
- ncmncm 6y agoThe bigger the company is, the less it means that somebody there is trying out Rust. Corollary is that the greater the fraction of reports of Rust usage that we see are about somebody in a big company, the lower the actual usage is. Similarly, the greater the fraction of articles about Rust usage that carry on about how great it is, vs articles complaining about it, the less actual usage there is. Engineers are always limited by our tools, and we deeply resent those limitations. People complain a great deal about C++; the more useful it has turned out to be, the more complaints they have about it, and they are generally not shy about telling you them.