Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Thursday January 23 2020, @05:23PM   Printer-friendly
from the take-my-repo-and-go-home dept.

The maintainer of the Actix web framework, written in Rust, has quit the project after complaining of a toxic web community - although over 100 Actix users have since signed a letter of support for him.

Actix Web was developed by Nikolay Kim, who is also a senior software engineer at Microsoft, though the Actix project is not an official Microsoft project. Actix Web is based on Actix, a framework for Rust based on the Actor model, also developed by Kim.

The project is open source and while it is popular, there has been some unhappiness among users about its use of "unsafe" code. In Rust, there is the concept of safe and unsafe. Safe code is protected from common bugs (and more importantly, security vulnerabilities) arising from issues like variables which point to uninitialized memory, or variables which are used after the memory allocated to them has been freed, or attempting to write data to a variable which exceeds the memory allocated. Code in Rust is safe by default, but the language also supports unsafe code, which can be useful for interoperability or to improve performance.

Actix is top of the Techempower benchmarks on some tests


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 5, Insightful) by tangomargarine on Thursday January 23 2020, @07:30PM (12 children)

    by tangomargarine (667) on Thursday January 23 2020, @07:30PM (#947576)

    "Let's use Rust but disable the feature that is the single biggest reason to use Rust in the first place"

    I don't even

    --
    "Is that really true?" "I just spent the last hour telling you to think for yourself! Didn't you hear anything I said?"
    Starting Score:    1  point
    Moderation   +3  
       Insightful=3, Total=3
    Extra 'Insightful' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   5  
  • (Score: 0) by Anonymous Coward on Thursday January 23 2020, @09:58PM (8 children)

    by Anonymous Coward on Thursday January 23 2020, @09:58PM (#947633)

    Isn't that the main selling point? Put in unsafe C++ code and then slowly transition to the safe stuff. But then when people of large projects (beyond just this one) do that, people come out of the woodwork to bitch about the unsafe code. While some people don't offer solutions that properly refactor all the dependent code, most offer no solution beyond repeating "unsafe code bad, safe code good; unsafe code should be safe code."

    • (Score: 2, Disagree) by Bot on Thursday January 23 2020, @11:21PM (6 children)

      by Bot (3902) on Thursday January 23 2020, @11:21PM (#947663) Journal

      >Put in unsafe C++ code and then slowly transition to the safe stuff
      This does not make sense for web frameworks. You first need to be safe at all costs! If you are slow, well you can throw more servers at it till you take the safe and well defined bottlenecks and you optimize them and you test against the old safe routines for misbehavior.

      --
      Account abandoned.
      • (Score: 2) by barbara hudson on Thursday January 23 2020, @11:40PM (4 children)

        by barbara hudson (6443) <barbara.Jane.hudson@icloud.com> on Thursday January 23 2020, @11:40PM (#947677) Journal
        It's the web - like the old Corvair, unsafe at any speed. You want safer, you need to go lower level. When I wrote common gateway interface code in c, I would count the incoming bytes in real time. Exceed the byte count by even 1 byte, you got redirected to one of a select list of disgusting sites. Could have monitored it down to the number of bytes per variable, but back in those days the favourite trick was to go for a buffer overrun. This made it impossible, but you don't see people implementing it because they're too lazy. They'll let a scripting language load a crap ton of data because they figure security is something the web server and scripting language should handle.

        Fun fact - pho also allowed you to open the socket and read the bytes directly, parsing them in real time, to make sure nobody tried to do a buffer overflow, but again nobody does it, then bitches over buffer over/underruns.

        There's nothing inherently wrong or unsafe with c if you are willing to put the work in. Too bad most devs don't even know what's possible, never mind how.

        --
        SoylentNews is social media. Says so right in the slogan. Soylentnews is people, not tech.
        • (Score: 2) by coolgopher on Friday January 24 2020, @12:49AM (3 children)

          by coolgopher (1157) on Friday January 24 2020, @12:49AM (#947711)

          CGI sounds classier when spelled out.

          • (Score: 3, Insightful) by barbara hudson on Friday January 24 2020, @01:49AM (2 children)

            by barbara hudson (6443) <barbara.Jane.hudson@icloud.com> on Friday January 24 2020, @01:49AM (#947749) Journal

            CGI sounds classier when spelled out.

            But then people will confuse it with computer-generated images. Now maybe some of them will go "WTF is Common Gateway Interface [wikipedia.org]" and consider the possibilities thereof? And how you don't need any special web framework or scripting language - just code that can read from stdin and write to stdout.

            --
            SoylentNews is social media. Says so right in the slogan. Soylentnews is people, not tech.
            • (Score: 2) by coolgopher on Friday January 24 2020, @02:13AM (1 child)

              by coolgopher (1157) on Friday January 24 2020, @02:13AM (#947761)

              Yeah but as soon as the kids see the spec is from 93 they'll tune out...

              How's support for cgi these days anyway? I'm still keeping an apache2 around that handles my cgi needs, though most other bits are handled by nginx.

              • (Score: 2) by barbara hudson on Friday January 24 2020, @02:31AM

                by barbara hudson (6443) <barbara.Jane.hudson@icloud.com> on Friday January 24 2020, @02:31AM (#947772) Journal
                Still works. So does any software that can open a port and listen in on it. You can write your own multithreaded server. I did it in c of my former employer, but you can do it in pretty much any languages that supports threads (though your performance will be shitty by comparison).
                --
                SoylentNews is social media. Says so right in the slogan. Soylentnews is people, not tech.
      • (Score: 0) by Anonymous Coward on Saturday January 25 2020, @01:24AM

        by Anonymous Coward on Saturday January 25 2020, @01:24AM (#948287)

        Then don't use it until enough unsafe code is removed for your taste. That problem is solved, and I'm glad it is because it was such a difficult solution to find. But, as I mentioned, the designers purposefully allowed for such a transition strategy and the big names in Rust keep trying to tell people to transition to it that way.

    • (Score: 2) by tangomargarine on Monday January 27 2020, @03:43PM

      by tangomargarine (667) on Monday January 27 2020, @03:43PM (#949363)

      Was this project originally in C++? From the summary it sounds like they may have started in Rust.

      --
      "Is that really true?" "I just spent the last hour telling you to think for yourself! Didn't you hear anything I said?"
  • (Score: 2, Insightful) by Anonymous Coward on Thursday January 23 2020, @10:34PM

    by Anonymous Coward on Thursday January 23 2020, @10:34PM (#947650)

    >> the single biggest reason to use Rust in the first place

    Transgenderism?

  • (Score: 2) by barbara hudson on Thursday January 23 2020, @11:48PM (1 child)

    by barbara hudson (6443) <barbara.Jane.hudson@icloud.com> on Thursday January 23 2020, @11:48PM (#947680) Journal
    I thought that the main reason to use rust was to be the post-millennial equivalent of a hipster. Because the world really needs even more web frameworks.
    --
    SoylentNews is social media. Says so right in the slogan. Soylentnews is people, not tech.
    • (Score: 3, Touché) by coolgopher on Friday January 24 2020, @02:14AM

      by coolgopher (1157) on Friday January 24 2020, @02:14AM (#947762)

      A safe web framework would be useful though...