• 0 Posts
  • 45 Comments
Joined 11 months ago
cake
Cake day: August 4th, 2023

help-circle




  • Out past the planets is the heliopause, the final boundary between the solar system and interstellar space. Voyager discovered it, but other probes have confirmed it. The radiation and particles emitted by the sun create a pressurized bubble around it, where plasma (energized particles, mostly hydrogen) is much denser than past the heliopause. Cosmic rays are more prevalent outside it.

    I’ve heard it compared to the empty zone around where a sink faucet first hits, creating a little “wall” of water around it as the splashing water pushes back the standing water.

    “Empty” space is anything but. There’s tons of particles and energy flying though it, just not as dense.




  • But then I decided, I wrote my own solution, a thing of 1,600 lines of code, which is, yeah, it’s like thousands of times less than the competition.

    And it works. It’s very popular. … I got 100 emails from people saying that it’s so nice that someone wrote a small piece of software that is robust, does not have dependencies, you know how it works.

    But the depressing thing is, some of the security people in the field, they thought it was a lovely challenge to audit my 1,600 lines of code. And they were very welcome to do that, of course. And they found three major vulnerabilities in there.

    He makes a ton of excellent points, but the succinct impact of this little example really hit for me. As someone who often rewrites things so that I can both understand and fully trust in what I’m depending on, it’s always good to be reminded that you literally can’t write 500 lines of code without a good chance of introducing a major vulnerability.

    The tech stack is so dizzyingly high today, and with so many interlocking parts, it continually amazes me that anything at all functions even in the absence of hostile actors.



  • Codex@lemmy.worldtolinuxmemes@lemmy.worldBackdoors
    link
    fedilink
    arrow-up
    170
    arrow-down
    1
    ·
    3 months ago

    I’ve gotten back into tinkering on a little Rust game project, it has about a dozen dependencies on various math and gamedev libraries. When I go to build (just like with npm in my JavaScript projects) cargo needs to download and build just over 200 projects. 3 of them build and run “install scripts” which are just also rust programs. I know this because my anti-virus flagged each of them and I had to allow them through so my little roguelike would build.

    Like, what are we even suppose to tell “normal people” about security? “Yeah, don’t download files from people you don’t trust and never run executables from the web. How do I install this programming utility? Blindly run code from over 300 people and hope none of them wanted to sneak something malicious in there.”

    I don’t want to go back to the days of hand chisling every routine into bare silicon by hand, but i feel l like there must be a better system we just haven’t devised yet.










  • Software devs for a long time would discuss “green field” development, which is a metaphor from constructing a building in an empty field: you start from nothing, and build all new. Most software devs prefer to write new code rather than try to learn the quirks and nuances of a large, already-existing pile of code, so “green field” is considered both desirable and often practically unattainable.

    “Blue sky” is a similar concept but loftier. It isn’t just that you have an empty field waiting for you, you’ve got the infitie expanse of the clear blue sky: endless possibilities, unlimited creativity, etc. “Blue sky development” as a metaphor I think comes from designers, product managers, and other software-dev adjacent fields. It means thinking of ideas that are out of the box and unconstrained by historical limits.

    That’s why everything is named that: execs and marketers love that kind of hollow promise. That anything is possible even though actually they’re almost always just clones of existing things whose greatest innovation is to loudly proclaim how new and innovative you are.


  • I have a deck, a few old laptops that have all gone Linux now, and a windows desktop for gaming. The deck being so good, and Windows 11 being so bad, has nearly convinced me to try Linux on the actual desktop.

    I think there are still a few games and applications (I’m primarily a C# dev for work) that I “need” Windows for but the case for dropping as much MS from my life as possible has never been stronger.