• 1 Post
  • 125 Comments
Joined 1 year ago
cake
Cake day: June 10th, 2023

help-circle



  • While the result from generating an image through AI is not meant to be “factually” accurate, its seeking to be as accurate as possible when it comes to matching the prompt that is provided. And the prompt “1943 German Soldier” or “US Senator from the 1800” or “Emperor of China” has some implications in what kind of images would be expected and which kinds wouldn’t. Just like how you wouldn’t expect a lightsaber when asking for “medieval swords”.

    I’m not convinced that attempting to “balance a biased training dataset” in the way that this is apparently being done is really attainable or worthwhile.

    An AI can only work based on biases, and it’s impossible to correct/balance the dataset without just introducing a different bias. Because the model is just a collection of biases that discriminate between how different descriptions relate to pictures. If there was no bias for the AI to rely on, they would not be able to pick anything to show.

    For example, the AI does not know whether the word “Soldier” really corresponds to someone dressed like in the picture, it’s just biased to expect that. It can’t tell whether an actual soldier might just be wearing pajamas or whether someone dressed in those uniforms might not be an actual soldier.

    Describing a picture is, on itself, an exercise of assumptions, biases, appearances that are just based on pre-conceived notions of what are our expectations when comparing the picture to our own reality. So the AI needs to show whatever corresponds to those biases in order to match as accuratelly as possible our biased expectations for what those descriptions mean.

    If the dataset is complete enough, and yet it’s biased to show predominantly a particular gender or ethnicity when asking for “1943 German Soldier” because that happens to be the most common image of what a “1943 German Soldier” is, but you want a different ethnicity or gender, then add that ethnicity/gender to the prompt (like you said in the first point), instead supporting the idea of having the developers force diversity into the results in a direction that contradicts the dataset just because the results aren’t politically correct. …it would be more honest to add a disclaimer and still show the result as it is, instead of manipulating it in a direction that activelly pushes the IA to hallucinate.

    Alternativelly: expand your dataset with more valuable data in a direction that does not contradict reality (eg. introduce more pictures of soldiers of different ethnics from situations that actually are found in our reality). You’ll be altering the data, but you would be doing it without distorting the bias unrealistically, since they would be examples grounded in reality.


  • someone painting him as a morally righteous

    The first thing @seSvxR3ull7LHaEZFIjM said was: “Assange is a bit of a scumbag” …

    The closest thing to “righteousness” said was: “his efforts for freedom of information should not land him in US torture prisons like many others.”

    Which, being true, it’s absolutely not challenged or contradicted by anything you said in response.

    Note that “freedom of information” is totally compatible with “picking and choosing” the manner in which you exercise that freedom. In fact, I’d argue that the freedom of “picking and choosing” what’s published without external pressure is fundamentally what the freedom of press is about.

    Assagne (like any other journalist) should have the freedom of “picking and choosing” what facts he wants to expose, as long as they are not fabrications. If they are shown to be intentionally fabricated then that’s when things would be different… but if he’s just informing, a mouthpiece, even if the information is filtered based on an editorial, then that’s just journalism. That’s a freedom that should be protected, instead of attacking him because he’s publishing (or not publishing) this or that.


  • The packager always should “explicitly require” what are the dependencies in a Nix package… it’s not like it’s a choice, if there are missing dependencies then that’d be a bug.

    If the package is not declaring its dependencies properly then it might not run properly in NixOS, since there are no “system libraries” in that OS other than the ones that were installed from Nix packages.

    And one of its advantages over AppImages is that instead of bundling everything together causing redundancies and inefficient use of resources, you actually have shared libraries with Nix (not the system ones, but Nix dependencies). If you have multiple AppImages that bundle the same libraries you can end up having the exact same version of the library installed multiple times (or loaded in memory, when running). Appimages do not scale, you would be wasting a lot of resources if you were to make heavy use of them, whereas with Nix you can run an entire OS built with Nix packages.




  • Flatpak still depends on runtimes though, I have a few different runtimes I had to install just because of one or two flatpaks that required them (like for example I have both the gnome and kde flatpak runtimes, despite not running either of those desktop environments)… and they can depend on specific versions of runtimes too! I remember one time flatpak recommended me to uninstall one flatpak program I had because it depended on a deprecated runtime that was no longer supported.

    Also, some flatpaks can depend on another flatpak, like how for Godot they are preparing a “parent” flatpak (I don’t remember the terminology) that godot games can depend on in order to reduce redundancies when having multiple godot games installed.

    Because of those things, you are still likely to require a flatpak remote configured and an internet connection when you install a flatpak. It’s not really a fully self contained thing.

    Appimages are more self contained… but even those might make assumptions on what libraries the system might have, which makes them not as universal as they might seem. That or the file needs to be really big, unnecessarily so. Usually, a combination or compromise between both problems, at the discretion of the dev doing the packaging.

    The advantage with Nix is that it’s more efficient with the users space (because it makes sure you don’t get the exact same version of a library installed twice), while making it impossible to have a dependency conflict regardless of how old or new is what you wanna install (which is something the package manager from your typical distro can’t do).


  • Ferk@kbin.socialtoProgramming@programming.devApple Wants To Kill PWAs
    link
    fedilink
    arrow-up
    2
    arrow-down
    6
    ·
    edit-2
    5 months ago

    It’s also not that uncommon of an acronym in web tech, all the first results when searching “PWA” are consistent and it’s a very common way to refer to that technology. The term PWA has made the news in tech channels a few times before (like when Firefox discontinued support for PWA on desktop).

    Even if they said “Progressive Web Apps” it would not have been immediatelly clear what that means for anyone who is not familiar with what PWA is. It’s also not the only acronym they use in the article without explaining it (eg. “API”, or “iOS” which is also an acronym on itself), it just so happens that it’s likely not a well known one in this particular lemmy community where the article was posted. The author advertises himself as a writer dedicated to web technologies (PWA and Web Component in particular), so it would be silly if he has to explain what those are on every of his posts.



  • Were the earlier series not focused on shared values to more or less a similar extent too?
    Kirk has usually been given the reputation of being a rule-breaker, often ignoring Starfleet rules when they are in conflict with his values. Even off-camera (in DS9 I think) they attribute him 17 temporal violations, and I think he has been accused of violating the prime directive multiple times.



  • Ferk@kbin.socialtoProgrammer Humor@programming.devWhitespace
    link
    fedilink
    arrow-up
    12
    arrow-down
    1
    ·
    edit-2
    5 months ago

    But C syntax clearly hints to int *p being the expected format.

    Otherwise you would only need to do int* p, q to declare two pointers… however doing that only declares p as pointer. You are actually required to type * in front of each variable name intended to hold a pointer in the declaration: int *p, *q;


  • That’s even harder. Specially if we aspire to have a community that protects privacy & anonymity.

    Keep in mind “rich” does not necessarily mean “famous”.
    For all anyone knows, you and me could be part of the wealthy, yet nobody here would know, no online service would deny us service. Being forced to live an anonymous and private life is not really much of a punishment, at least it wouldn’t be for me… if I were part of that wealthy I’d just lay low… I’d get a reasonably humble but comfortable house in a reasonably neighborhood where people mind their own business, dressing modestly and living life without having to “really” work a day of my life, while my companies / assets / investments keep making money so I can go on modest trips and have some nice hobbies that are not necessarily really that expensive anyway. Anyone who figures it out, I set them up. It’d still be worth it to live that life.


  • I feel it’s a balance. Each operation has a purpose.

    Rebasing makes sense when you are working in a feature branch together with other people so you rebase your own commits to keep the feature branch lean before you finally merge it into the main branch, instead of polluting the history with a hard to follow mess of sub branches for each person. Or when you yourself ended up needing to rewrite (or squash) some commits to clean up / reorganize related changes for the same feature. Or when you already committed something locally without realizing you were not on sync with the latest version of a remote branch you are working on and you don’t wanna have it as a 1-single-commit branch that has to be merged.

    Squashing with git merge --squash is also very situational… ideally you wouldn’t need it if your commits are not messy/tiny/redundant enough that combining them together makes it better.


  • Boycotting is an expected/intended tool in capitalism. It’s part of the “free market” philosophy, the regulatory “invisible hand”. The reason you can boycott a company is because the economy is based on a capitalist free market.

    If boycotts were actually a good and successful method for the society to regulate the wealthy, then there would be no issue with capitalism. So that’s not how you “end” capitalism, that’s just how you make it work.

    The issue is, precisely, that boycotts do not work (and thus, capitalism does not really work). Particularly when entire industries are controlled by private de-facto monopolies. If they worked you would not need social-democratic laws to force companies into compliance in many ethical aspects.

    What you are advocating is not an alternative to capitalism (like communism or socialism), but a more ethical/educated capitalism that works at controlling the wealthy, just like many proponents of capitalism expected it would.




  • it’s even ISO standardized

    Not only are there other ones that are also ISO standards when it comes to software layouts, but funny enough, when it comes to physical layouts, US keyboards normally follow an ANSI standard (not an ISO one), whereas many non-US keyboards typically follow a physical key layout known as “ISO Keyboard”, so one could argue those are more of an “ISO” standard.

    https://upload.wikimedia.org/wikipedia/commons/b/b2/Physical_keyboard_layouts_comparison_ANSI_ISO_KS_ABNT_JIS.png

    right ctrl + left shift + 9 will do?

    No keyboard layout uses ctrl like that… in fact, I don’t think you ever really need to press more than one modifier in any standard non-US keyboard. Unless you have a very advanced custom layout with fancy extra glyphs… but definitelly not for the typical programming symbols.

    ISO keyboards actually have one more key and one more modifier (“AltGr”, which is different from “Alt”) than the ANSI keyboards.

    In fact, depending on the symbol it might be easier in some cases. No need to press “shift” or anything for a # or a + in a German QWERTZ keyboard, unlike in the US one. Though of course for some other ones (like = or \) you might need to press 1 modifier… but never more than 1, so it isn’t any harder than doing a ) or a _ in the US layout.