What are some mind blowing Rust tricks?
  • snaggen snaggen 4d ago 100%

    Ok, I then have some business proposals....

    1
  • What are some mind blowing Rust tricks?
  • snaggen snaggen 4d ago 100%

    Mindblowing features are basically, by definition, a result of bad language design. They blow your mind, since they are totally unexpected behaviours. They may still be cool, but they are unexpected and hence unintuitive.

    A language that are full of these is Perl. And one simple one is that you can take the string "AAAAA" and use addition on that, like "AAAAA"++ and you will get the result "AAAAB". Cool you may think, but is it really? Addition is normally used to increase the value of a number, that is a completely different operation than modifying a String. The string "AAAAA" cannot be said to be greater or less than "AAAAB", besides the very special case when we order it. But in general the name "John" is not considered to be higher/lower than "Mark", they are just different. So, even if it is cool to manipulate strings by using addition/subtraction, it is still bad language design and very unintuitive. Also, since perl is so loosely typed, it may also cause very unexpected bugs.

    10
  • My frustrations with Rust. Why is this the most loved language?
  • snaggen snaggen 1w ago 100%

    Which is kind of surprising, since it basically just is a bunch of "I'm cannot understand why .... is needed", "I cannot learn...." and "I think that is ugly". And since the OP is coming from TypeScript, and how the OPs understanding of programming, it is clear it is a junior web developer trying rust and failing. Nothing to see here... well, the OP clearly have some kind of grandios ego, thinking that the OPs inability to learn something, must be because it is bad (I mean, there is clearly no other possiblities)... but not even that is worth responding to. And don't read this wrong, there is plenty to complain about with Rust, however, nothing of that is in OP which is basically just as insightful as a baby crying.

    11
  • Rust is rolling off the Volvo assembly line - Blog - Tweede golf
  • snaggen snaggen 2w ago 100%

    Ok, so we use different search engine so you didn't find this particular hit. But, do you really claim that learning material is an issue here. And about my attitude, yes, I was a bit cranky. In general, you can ask any stupid question, heck I ask stupid questions all the time and they will be answered kindly. The rust community knows that lifetimes and stuff like that is complicated.

    However, I'm quite fed up with the attitude that it is someone elses obligation to spoon feed you with knowledge that exists right under the nose... and that is a very common attitude amongst the "For rust to succeed..." evangelists.

    4
  • Rust is rolling off the Volvo assembly line - Blog - Tweede golf
  • snaggen snaggen 2w ago 77%

    There are lots of guides, tutorials and documentation. The responsibility is no longer on someone else, it is up to the individuals to actually read any of them. And to be honest, if you are unable to use them to learn rust, maybe your c++ skills isn't that impressive either.

    https://bpbonline.com/products/rust-for-c-programmers?variant=42560853639368 is one if found using a tool called search engine...

    10
  • https://brevzin.github.io/c++/2024/09/30/annotations/

    This is a blog post that really is about C++, but with a look at how Rust does things. So, this is an interesting C++/Rust comparison for once.

    27
    3
    GitHub - RReverser/serdebug: Serde-based replacement for #[derive(Debug)]
  • snaggen snaggen 3w ago 100%

    I wanted to use the debug fmt functions, to allow for pretty debug also.

    2
  • github.com

    Last week I basically duplicated the serialization code to provide better debug output.... today, I see this pass in my Mastodon feed. 😀 Well... what are the odds... most likely close to 100% according to how the universe seems to operate.

    26
    4
    Scientists grow ‘lost tree’ mentioned in Bible using mysterious ancient seed
  • snaggen snaggen 3w ago 50%

    No, but the process to identify the ones that work is all part of the modern medicine. Before that, placebo and lack of scientific methods made it impossible to separate a working substance from snake oil.

    0
  • Scientists grow ‘lost tree’ mentioned in Bible using mysterious ancient seed
  • snaggen snaggen 4w ago 80%

    Yes, historical medicin was so good, lets work our ass off to recreate it...

    3
  • linux
    Linux 1mo ago
    Jump
    best linux terminal emulator
  • snaggen snaggen 1mo ago 100%

    Are you saying that it is common that people use utf8 characters that you cannot easily type on a standard keyboard? I'm very skeptical of this claim.

    1
  • linux
    Linux 1mo ago
    Jump
    best linux terminal emulator
  • snaggen snaggen 1mo ago 100%

    Good to know that every time I feel the need to use ALGOL 68, I must remember to disable ligatures. Still not sure this is going to be a huge problem 😂

    2
  • linux
    Linux 1mo ago
    Jump
    best linux terminal emulator
  • snaggen snaggen 1mo ago 100%

    Well, that was something.... I have used ligatures in my code editor for quite a few years now, and I have NEVER been confused about the ambiguity this person is so upset about. Why? I have never ever seen the Unicode character for not equals in a code block, simply since it is not a valid character in any known language. In fact, I have never even seen it in a String where it actually would be legal, probably since nobody knows how to type that using a standard keyboard. This whole article felt like someone with a severe diagnose have locked in on some hypothetical correctness issue, that simply isn't a problem in the real world.

    But, if you for some reason find ligatures confusing, then you shouldn't use them. But, just to be clear, there is not a right of wrong like this blog post tries to argue, it is a matter of personal taste.

    2
  • linux
    Linux 1mo ago
    Jump
    best linux terminal emulator
  • snaggen snaggen 1mo ago 100%

    Splits, ligatures tabs and more

    1
  • linux
    Linux 1mo ago
    Jump
    best linux terminal emulator
  • snaggen snaggen 1mo ago 100%

    Cosmic term is nice. Still just alpha, so there are rough edges though.

    3
  • Despite tech-savvy reputation, Gen Z falls behind in keyboard typing skills
  • snaggen snaggen 1mo ago 100%

    For Boomers, cars was the latest tech that everyone was fiddling with. This caused even the boomer that wasn't very interested , to know quite a lot. For later generations, car became more of a means of transportation, and the knowledge of cars was only for specialists. For gen X, computers were the high tech thing, everyone was fiddling with. Most gen x can setup a printer if they have to. For later generations, computers are just tools, and the knowledge is only for specialists.

    8
  • rust
    Rust 2mo ago
    Jump
    Announcing Rust 1.81.0
  • snaggen snaggen 2mo ago 100%

    fs::exists() was a nice little improvement that I didn't know about until I read this announcement.

    8
  • How can we return to techno-optimism?
  • snaggen snaggen 2mo ago 100%

    Producing products that the users wants, and that solves tje users real problems. And not trying to make products as addictive as possible, to harvest as much user data as possible to sell.

    18
  • linux
    Linux 2mo ago
    Jump
    One Of The Rust Linux Kernel Maintainers Steps Down - Cites "Nontechnical Nonsense"
  • snaggen snaggen 2mo ago 100%

    The problem is that C is a prehistoric language and don't have any of the complex types for example. So, in a modern language you create a String. That string will have a length, and some well defined properties (like encoding and such). With C you have a char * , which is just a pointer to the memory that contains bytes, and hopefully is null terminated. The null termination is defined, but not enforced. Any encoding is whatever the developer had in mind. So the compiler just don't have the information to make any decisions. In rust you know exactly how long something lives, if something try to use it after that, the compiler can tell you. With C, all lifetimes lives in the developers head, and the compiler have no way of knowing. So, all these typing and properties of modern languages, are basically the implementation of your suggestion.

    16
  • Firefox rolls out Total Cookie Protection by default to all desktop users worldwide | It is Firefox’s strongest privacy protection to date, confining cookies to the site where they were created
  • snaggen snaggen 2mo ago 100%

    It is making the tracking protection part of containers obsolete, this is basically that functionality but built in and default. The containers still let you have multiple cookie jars for the same site, so they are still useful if you have multiple accounts on a site.

    3
  • Firefox rolls out Total Cookie Protection by default to all desktop users worldwide | It is Firefox’s strongest privacy protection to date, confining cookies to the site where they were created
  • snaggen snaggen 2mo ago 100%

    Container tabs are still useful, as they let you use multiple Cookie jars for the same site. So, it is very easy to have multiple accounts on s site.

    7
  • How to learn Rust?
  • snaggen snaggen 2mo ago 100%

    https://doc.rust-lang.org/book/ this is a great starting point. Then when you got the basics, and fiddled around a bit, then you can start looking for more specialized books (like Rust Atomics and Locks https://marabos.nl/atomics/ )

    23