8 ms·
I know we developers love our languages. But I'm always skeptical when underlying language choice is featured prominently as a selling point for any new projec
by ijidak 5y ago
I know we developers love our languages.
But I'm always skeptical when underlying language choice is featured prominently as a selling point for any new project.
It tells me, this is a technology-first, users-second enthusiast project.
And thus, I'll be surprised if it tackles the deepest issues users need solved.
That doesn't mean it isn't cool as a proof of concept for a new or popular language.
It just makes me question to what extent it's going to solve the deepest problems with similar or older projects it is competing against.
- lallysingh 5y agoSystem76 isnt making it about the implementation panguage: https://blog.system76.com/post/648371526931038208/cosmic-to-arrive-in-june-release-of-popos-2104 https://blog.system76.com/post/648371526931038208/cosmic-to-... A Ctrl-F rust showed no results. This post's author just likes Rust.
- magicjosh 5y agoAh just to clarify, the blog post you referenced is from this past June. COSMIC based on Rust is a new development that System76 has not blogged about yet besides mentioning it in a Reddit post. As a System76 fan, I too am curious to see what the point is. I have no idea what Rust is nor do I care.
- ijidak 5y agoAh. Apologies. That was my misunderstanding.
- megumax 5y agoFrom what I know, system76 didn't shill cosmos as a rust DE, the only reference to Rust being done in some reddit comment. Most PopOS users don't know what Rust is, so it wouldn't make sense to talk about Cosmos as a Rust project. Now, 90-95% of users use GNOME or KDE, having some competition from a `new` GTK4 DE can't be bad, so I would like to see Cosmos gain attention, and maybe be ported to other distros.
- berkes 5y agoThe people that System76 sells to most likely buy their hardware. In which case the word 'Rust' is worrying at least. Would you buy a laptop that ships with rust? Jokes aside: during early development it makes perfect sense to advertise tech being used, because the audience is so different at that time. So even if system76 would "shill" it as a Rust DE, at this phase, that would be fine, because of the highly technical audience.
- nine_k 5y agoFor a relatively new language that still is not everywhere it's a good example of its viability for such a project. Also, it either testifies the richness of the ecosystem, or promises that it will get enriched in the process, because the development appears to be open-source.
- pxc 5y agoSystem76 is just using Rust for COSMIC because the existing engineering talent here already use and like it for other things they work on at the company, like their device firmwares. It's a good common/familiar language for the teams they have. I don't think they're expecting Rust to do any magic for them.
- pxc 5y ago> the existing engineering talent here Oops! That should read > the existing engineering talent there apologies. Missed the edit window on the comment, and only saw the error now. I'm not at System76 and never have been
- SkyMarshal 5y ago> But I'm always skeptical when underlying language choice is featured prominently as a selling point for any new project. > It tells me, this is a technology-first, users-second enthusiast project. > And thus, I'll be surprised if it tackles the deepest issues users need solved. Some of the deepest issues that users need solved are ones that Rust was designed to solve at the language and compiler level. 1. System stability and memory efficiency, zero or fewer crashes due to memory-safety or thread-safety problems. 2. Security and assurance via the elimination of entire classes of attack vectors like buffer overflows. 3. Highly performant, responsive applications that are a joy to use. Solving problems at the compiler level eliminates the reliance on fallible programmers to do so. People also tend to discount maintaining those solutions over years of dev team turnover, startup failures, etc. Building those solutions, capabilities, and constraints into the language itself makes maintenance over the entire product lifecycle more consistent. It's like buying a Toyota, you know from the brand alone that you're getting a certain baseline level of reliability, maintainability, durability, and longevity. Rust is like the Toyota of programming languages - it can produce many different types of cars/programs, but they're all guaranteed to come with a baseline level of assurance, and to eliminate common classes of problems that degrade the end-user experience. It may not make sense for other languages to be prominently featured as a selling point, but Rust is an exception.
- twblalock 5y ago> It's like buying a Toyota, you know from the brand alone that you're getting a certain baseline level of reliability, maintainability, durability, and longevity. Rust is like the Toyota of programming languages - it can produce many different types of cars/programs, but they're all guaranteed to come with a baseline level of assurance, and to eliminate common classes of problems that degrade the end-user experience. It's possible to make buggy, slow, crappy software in any language. Rust is no exception. Nobody should derive any confidence from the language a product is written in.
- uoaei 5y agoThis is true and also mostly unhelpful. It's possible to build a car without a muffler. Does that mean it happens often enough that we need to dedicate a whole pooh-pooh session to the possibility? Is a manufacturing process not more likely to be useful if it prevents this error from ever occurring?
- deleted 5y ago[deleted]
- k_kalupe22 5y agoThey do this for getting higher ranks here at hackernews. What turns me off most is that they succeed, which in turn indicates that large parts of hackernews readers are biased towards Rust. Personally, I'm pretty sick of this evangelism and hype because I fell for it some years ago and started a project with Rust. Countless problems and dark corners. I moved in time to a mature garbage collected language. There's a reason Rust has kind of succeeded only in small niches where Rust is a good fit. And not everywhere (backend services, CLIs), like it was advertised by prominent evangelists. However, for System 76 Rust is a very good choice. But calling it "Rust based" when it's GTK is clearly a bit bold ...
- 1_player 5y agoEspecially when you have top voted sibling comments saying "Some of the deepest issues that users need solved are ones that Rust was designed to solve at the language and compiler level." What?! The year of the Linux desktop hasn't been eluding us because of buffer overflows and memory safety. The Rust hype train is incredible. The Linux desktop problems have nothing to do with the goal Rust sets out to solve. It's definitely a good choice of language for the problem, don't get me wrong, but choosing that language doesn't improve the chances of COSMIC revolutionising the Linux desktop situation one iota.
- southerntofu 5y agoI don't know about revolutionizing the Linux desktop, but i can assure you rust made me a better programmer (even when i write C or python) despite being a very bad programmer to start with. I also know that Linux desktops are often victims of memory bugs, and that a higher-level language for extensions is something people appreciate, that's why there's JS in GNOME.
- mmstick76 5y agoActually, a lot of the early Linux desktop was hampered by this exact problem. I remember in the late 2000s experiencing segfaults constantly in a lot of applications, Mesa/X11, the kernel, and even the desktop environment itself. You had to spend a lot of time tracking down a setup that works and sticking to it when you find it. It's gotten remarkably better since then, but GNOME Shell is still really fragile with segfaults when developing extensions for it. That said, this is not the sole benefit of Rust. It is more of a side effect of aliasing XOR mutability than the primary benefit of Rust as a whole. Let's take a look at the C and Vala landscape as a comparison. Neither support message passing with channels, and async support is virtually an unmaintainable hack. Vala has generics thankfully, but C doesn't have generics and it's really bad. It also doesn't help that your only options for building software is pretty much almost entirely GLib and whatever sparse set libraries might be available for the package manager. Whereas with Rust there's a vast immutable repository of libraries you can leverage, and publishing open source libraries on the platform is easy.
- Rd6n6 5y ago> I'm always skeptical when underlying language choice is featured prominently as a selling point for any new project. > It tells me, this is a technology-first, users-second enthusiast project. I disagree. There are thousands of pieces of software out there using convenient technologies at the expense of performance. I think a real, legitimate advantage of unreal over unity is that it uses c++ instead of c# for gameplay code. I’ve never been cpu bound in unreal. Js algorithms often run 100x slower than Java ones, and if gnome were written in rust we wouldn’t have had quite so many memory leaks. Also, pg credits much of his startups success to his language choice, letting him iterate faster Language can make a pivotal difference!
- renox 5y agoIf memory serves Rust provides memory safety but memory leaks aren't considered 'unsafe' so I'm not so sure for the memory leaks..