• 0 Posts
  • 338 Comments
Joined 5 months ago
cake
Cake day: August 31st, 2025

help-circle

  • You can’t, obviously. I know how to read code, but I still rarely do it since it’s very time consuming. Usually, if I’m nervous about something, I’ll first look at the author and see if they’re well-known, or at least tied to a real identity. In the rare cases that I have reviewed a code base (I’m not a security expert or anything) to check for malware, the things I looked for were:

    • obvious red flags, like urls to fishy sites, or calls to filesystem APIs where it doesn’t make sense, paths that it shouldn’t be trying access, etc

    • anything that looks obfuscated, poorly written, or delibrately designed to be difficult to read

    But if it’s anything related to Node/NPM, I always use a throwaway rootless podman container without filesystem access. Even if the author is trustworthy, their dependency graph is likely a bag of used needles that they picked up on the side of the road.



  • A “distro” is basically just:

    • a precompiled kernel
    • some preinstalled software

    Idk anything about Poseidon but,

    is it easy enough to replicate just by downloading the relevant packages?

    The answer to that is yes. Just pick a base you like (eg debian, fedora, ubuntu, …) and install the software you need. You could automate it with some simple scripts, or be fancy and write a Butane config to preconfigure a base Fedora CoreOS image. IIRC, the Omarchy distro is just the former, not even a proper “distro”.

    If you want to create your own “proper” distro that other people will want to use, there’s a lot more that goes into it: updates, builds, tests, deployment, patch sets (because you’ll inevitably need to patch various components for compatibility), bug reports, some kind of governance structure…

    It’s a whole software development thing. If you just need a customized platform for your buddies/workplace, customizing an existing distro is the only reasonable choice. I’d suggest looking into bootc and ublue if you need more than a simple post-install shell script.




  • Eclipse Theia is meant to be a 1:1 replacement for VSCode, and it’s a completely independent rewrite. Afaik the only part they share is the “Monaco” text editor component, but there’s not really much lock-in risk there.

    Eclipse are also the people who run the open-vsx extension registry.

    Personally, I am very happy with Sublime Text and don’t see myself using anything else any time soon. But if I did need an alternative, Theia might be my first choice.

    Edit: another one that hasn’t been mentioned yet is Lite-XL


  • https://scratchapixel.com/ for valuable background

    After that, I recommend you learn webGL and write your first project in javascript. It’s not as cool as a native executable in C++, but you will gain a lot of crucial 3D graphics knowledge without getting sidetracked by typical native development woes (which should not be underestimated)

    Once you feel you have a good grasp on the 3D math, working with a graphics API, writing shaders, and the general architecture of a 3D application, THEN you should start looking into native development. Maybe start learning Vulkan as a next step, although that’s a tough one if you don’t already have C or C++ experience (mostly because of memory management concepts). Instead of Vulkan, you could instead go with OpenGL or a high level library like Sokol.

    It should go without saying that this isn’t an easy topic. It’s a deep, deep (but rewarding) rabbit hole. There’s a lot of stuff to learn, and it will take a while. A sense of overwhelming dread, hopelessness, and inadequacy is part of the process.


  • entwinetoLinuxAre there ANY debuggers for Linux, that has a GUI
    link
    fedilink
    arrow-up
    6
    arrow-down
    2
    ·
    16 days ago

    There’s nothing wrong with wanting a GUI front end, but the ignorance on display here is embarassing.

    No, I don’t want to spend weeks to learn GDB inside-out, so I don’t have to search online for 15-30 minutes on an AI infested internet every time I want to use it, for each feature I’m using it for that day.

    Weeks? Just type ‘help’ and you’ll get the instructions in under a millisecond. No AI slop. There aren’t even that many commands to learn lmao.

    Pro tip: type ‘apropos <query>’ to search for appropriate help pages when you don’t remember the command.

    Do better.




  • entwinetoLinuxThe billion dollar race to replace Windows
    link
    fedilink
    arrow-up
    3
    arrow-down
    4
    ·
    23 days ago

    Linux isn’t a replacement for Windows. It’s its own thing, with its own issues but also advantages.

    Linux isn’t a replacement because Linux isn’t an operating system. The “battle” isn’t between Linux and Windows, it’s between Windows and specific distros, like Ubuntu or Fedora. Mainstream Linux will require one of those to up their game when it comes to hardware partnerships and customer/end user support. Doing so will require competing against Microsoft along those same business areas, not just from an engineering perspective.

    Unfortunately, I don’t think that will be easy. Microsoft is incompetent at a lot of things (incl business most of the time), but they have unlimited money and leverage, and their relationship with the US govt means they’re unlikely to see any antitrust scrutiny when they do illegal shit to suppress competitors.





  • entwinetoC Programming LanguageHelp needed!
    link
    fedilink
    arrow-up
    1
    ·
    24 days ago

    This is unnecessarily complicated, and I don’t see how your second version is supposed to be more optimal? You’re just adding pointless indirection by encoding the branching logic as an int, and then branching again in a switch statement.


  • entwinetoC Programming LanguageHelp needed!
    link
    fedilink
    arrow-up
    2
    ·
    24 days ago

    This would be easier to understand if you defined a function like:

    char IsMonth(int value){
        return value > 0 && value <= 12;
    }
    

    Then try to rewrite your program using that inside of the if statements. For example

    if(IsMonth(p1)){
        ...
    }
    

    If you do that, I’m pretty sure you’ll find the problem. As a hint, notice that IsMonth is a boolean value, since a number can only either be a month (true) or not a month (false). I haven’t debugged it, but I can tell there’s a problem just by the number of printf statements you currently have.


  • func get_album_by_id(album_id: int16): Album -> (
      get_albums()
      | find(func (this) -> this.id == album_id)
    )
    

    I’ll admit I’m not a database guy, but isn’t this inefficient? It looks like it’s first querying the DB for all albums, then filtering the results in the interpreter. I assume the db engine has a more optimal implementation for when you do SELECT WHERE query, designed for whatever data structures it’s using internally.

    Also, minor nitpick but why does it have so many different ways to define a function body?

    func something() -> { ... }
    func something() -> ( ... )
    func something() -> ...
    

  • entwinetoTechnologyYouTube is Awful. Please use YouTube, though.
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    25 days ago

    I don’t have a lot of sympathy for youtube creators who complain about this. Why aren’t there competitors to youtube? Because you’re using youtube, and putting your videos on youtube. Instead of asking people to “like and subscribe” or waste money on a VPN or whatever, ask them to follow your peertube/odyssey/etc.

    No, it isn’t easy to do this. Youtube is a monopolist and a harmful presence on the internet (and, IMO, society at large). But if you just want to give up and keep using it, I’m going to keep blocking ads, and keep teaching people how to do that. If your dream of being a full time video creator fails, that’s on you for hitching your wagon to the wrong horse. I’m not going to lose sleep over it.


    With that said, I wonder if the solution to the youtube monopoly isn’t simply RSS? Afaik that’s basically how podcasts work, and there is no youtube-style monopoly for podcasts. Podcasts have ads and make a lot of money, so it’s clearly viable.