• 0 Posts
  • 498 Comments
Joined 2 years ago
cake
Cake day: June 10th, 2023

help-circle





  • How is it political to talk about yourself in vague terms when introducing yourself to a group!? Would it be political if he said his hair is brown? How about if he mentions the color of his skin, is that political?

    You make the statement political when you try to ban certain people from talking about who they are, if only white people talk about the color of their skin it’s not political to say you’re black, it’s political to try to block people from saying it. Saying you’re queer is on the same level of mentioning you have a wife/husband, in fact it’s even more vague, it’s in the same level of saying “since I was a boy/girl”, because queer does not necessarily mean non-heterosexual it can also mean non-cisgender so it’s an umbrella term to mean member of the LGBTQ+ community, if being queer is political then being heterosexual or cisgender also has to be, and I doubt people would be okay with having to step on eggshells not to mention anything that could make someone deduce their sexuality or gender. Hell, the same people who claim Queer is political are the ones who have the most problem with gender neutral language.


  • First of all, this is not a professional setting, he’s not an employee there, and that forum is open for everyone.

    Secondly, and way more important, people do that daily and no one cares especially when introducing oneself it’s common to mention stuff like your wife/husband and your preferred pronouns, hell, my corporate slack profile has my pronouns and those of everyone else. I’ve worked with trans people who introduced themselves as trans on the first day, and no one cared. So no, it’s perfectly okay for people to talk about themselves during an introduction even in professional settings.

    Last but not least, people being uncomfortable is not a good reason to ban something, members of the KKK might be uncomfortable about working next to a black person, so what? Should the black person hide that he’s black to not make the others uncomfortable? That’s bullshit. If a person is uncomfortable by another one saying they’re queer, then that first person needs to deal with it, being queer is part of who the other person is and he shouldn’t have to hide who he is because someone might be uncomfortable about it. You mentioned religion, which I don’t think falls into the same category because religion is a set of beliefs that many people change through their lives, but still, people wear crosses daily in professional settings and no one cares.


  • Regardless of how impartial the source might be, there are facts there:

    • Fact 1: Someone made an introductory post in which, among other things, they mentioned “I am queer”.
    • Fact 2: A moderator working for Canonical deleted that part, and only that part, of that post.
    • Fact 3: Another moderator re-added that and claimed the first one acted erroneously.

    While Fact 3 is a bit of a relief, they still haven’t communicated what they intend to do to prevent this from happening again.




  • Chicken and vegetarian was just an example, also the chicken was implicitly dead in my example so it was no longer sentient, also also there might be non moral reasons, which paint color do we give people for their walls? How often? Etc etc etc.

    In the request system you propose there needs to be some sort of pointing or valuation, requesting a car should not be equivalent to requesting an apple. Whatever form of valuation you use for that, there’s your currency. Not to mention that for the requesting system to be able to work the government would need to own all products so it can redistribute them according to requests, and what would it do if 100 people requested something that only 50 were made? It’s a nice idea but it becomes very complicated very fast, whereas using currency takes away all of that complication and gives you something tangible that could be implemented tomorrow instead of in 20 years being very generous.




  • Yes, things like original email and Nickname are some of those questions because after they change the public might have no way of figuring it out. Notice the support tech asked for those informations and when provided with it he said that he couldn’t verify ownership, this means OP reported wrong information for the identifying questions.

    I’m not saying the service is great, asking him to access an email he claims to have lost access is dumb, but everything after that the tech support person did his best, and I don’t think he should have disabled 2FA, since it could be a social engineering attack.


  • Ok, lots of answers focusing on the game, so I think you have plenty of suggestions on what to try there. That being said I have never heard of bottles, I’ve used raw wine and PlayOnLinux before Steam integrated Proton so now I just use that.

    For docker it can be daunting, and home assistant is not an easy thing to setup. The thing with docker is that it can be very complex, but you don’t have to worry about the majority of it. I assume you have docker installed, enabled and your user is in the correct groups. Unfortunately Mint/Ubuntu don’t have docker in their normal repos so you probably had to add the docker PPA and install from there. Let’s run a couple of commands to ensure all went well:

    sudo systemctl status docker

    This should show you the status of the docker daemon, and it should say that it is Active. If you get a no such service type error then docker is not installed, if it’s not shown as active then the daemon is not started and can be done so by running sudo systemctl start docker (and you can replace start with enable for it to happen at boot). If it’s Active then awesome, let’s check that your used can run docker commands, try running this: docker run hello-world if that fails but sudo docker run hello-world works then your user doesn’t have access, you want to add your user to the docker group sudo usermod -aG docker $USER and reboot.

    Ok, docker hello world is working, what now? Now, I assume you have some idea of what docker is, but in a (wrong but simple) way you can think of it as virtual machines. Let’s try to run some cool stuff in it, there are two main ways, running a long complicated command, or writing those parameters on a file and running a simple command. This file is called a compose file, and should be named compose.yaml or docker-compose.yaml. let’s try that, create a folder called silverbullet (just because that’s the service we will try, it is a note taking app that I really like) and in there create a file compose.yaml and write the following content there (everything starting with # is a comment I added explaining what that does, and can be removed if you don’t want it):

    # This defines all of the services we want to run
    services:
      # This is the name of the service, it can be whatever you want
      silverbullet:
        # The image is the actual thing you want to run
        image: ghcr.io/silverbulletmd/silverbullet
        # This tells docker to restart the service if it closed for whatever reason, unless you specifically tell it to stop
        restart: unless-stopped
        # This will set environment variables inside the docker.
        # different services might require different environment variables set
        environment:
          # silver bullet uses SB_USER environment variable to set user/password for the main account. We're setting user to admin and password to 123 here
          - SB_USER=admin:123
        # This maps outside folders to inside folders so that your docker container can access them
        volumes:
          # Here we're telling it that the ./data folder should be accessible in the /space folder inside the docker
          # silver bullet stores stuff in the /space folder, so by mapping it to the ./data folder we can keep that data between runs
          - ./data:/space
        # This tells docker to map ports from the inside to your host machine, this allows you to access the docker container as if it were running on your machine
        ports:
          # This tells it to map the internal port 3000 to the external port 5000, so accessing http://localhost:5000/ from your machine will in fact access the same as http://localhost:3000/ inside docker
          # Silver bullet runs on port 3000, so we need to expose that port
          - 5000:3000
    

    Uff, that was a lot, but we’re done, now just run docker compose up -d (up to start -d to run as a daemon, i.e. in the background) and you should be able to access http://localhost:5000/ and get to Silver bullet logging in with admin 123, then if you write about something you will see files appearing in the silverbullet/data folder.

    I know that this was a lot in one go, but I chose Silver bullet because it touches all of the most common stuff you’ll need and it’s easy to get going.

    Good luck with your self hosting journey, and don’t hesitate to ask if you have any questions.


  • Nibodhika@lemmy.worldtoGames@lemmy.world(Rant) Don't buy Rockstar games.
    link
    fedilink
    English
    arrow-up
    17
    arrow-down
    1
    ·
    18 days ago

    The thing is, and I think you’re missing this, he got those wrong. After being asked for email and Nickname he provides them and the support person says “I’m unable to verify that you own the account”, that means he answered wrong, yes those might be bad questions because some random person might know them, but he didn’t.


  • I don’t remember if there was an indication, but I think not, I remember lots of candidates not writing tests, and usually that was fine, they would mention that they didn’t think it was needed for such small code or that they didn’t expect to do it for a take-home. The problem with that guy is that when asked about it he said he didn’t believe in tests (at all) and thought the whole TDD was a hoax.

    I will agree that TDD is a bit idealistic and no one follows it strictly, but to say the whole idea of testing your code is useless is a big red flag that you have never worked on large projects or for long enough. When you’re working with huge codebases a change to one file might affect stuff you didn’t even know existed, and even if you specifically know and thought about it doesn’t mean the new hire will know that the function he’s touching is being called indirectly in a completely different part of the code passing a different argument you never suspected because of historical reasons.


  • I have never gotten an answer to that question. However when I was on the hiring side I did gave that answer multiple times. It was not uncommon for candidates we rejected to ask that question, and I would usually reply with specifics of their interview, we had them do a take home and had an interview going over that and some other topics, here are some examples that I remember (obviously I worded these a lot more politely, and sometimes mentioning that it wasn’t bad on its own, but other candidates were better):

    • Your code didn’t have any tests, when asked about it your answer was dismissive towards the concept of TDD.

    • There were several security issues with your code, none of which you were able to spot or discuss.

    • Your code was illegible, variables and functions had no identifying name and functions had high cyclomatic complexity.

    • Your code didn’t do what was asked for the take home, it was missing important parts, so it was impossible to properly evaluate you.

    • Your code was excellent, but you couldn’t explain any of it, when asked to guide us through the flows you only read the functions line by line, never describing the flow in a big picture manner, even after several prompts from us.

    Some of those might seem stupid, but this was a senior position and we had better candidates, so I tried to point to specific stuff that differentiated the candidate we hired from them.

    There are also two special cases I want to point out, once a candidate didn’t had anything bad in it’s code but he was VERY annoying, as in refusing to answer anything, down talking to us for asking obvious questions, etc, luckily he didn’t asked why he wasn’t hired, because the answer would have got to be a generic “not a good fit culturally”. The other was a guy who had a very obvious SQL injection bug in an endpoint, that on its own would not disqualify him, since even senior engineers make mistakes, but we started our talk discussing security and specifically SQL injections, when we got to that endpoint I tried to prompt him to spot it, he didn’t, eventually I outright told him “there’s an SQL injection bug here, can you spot it” and his answer was “no there isn’t”, so I asked him to open his browser and access something like http://localhost:3000/endpoint/wrong and explain to me why he had gotten the answer he did (expecting him to realize that he was putting he table name directly into the SQL without parsing), he came up with an excuse that it was because wrong wasn’t a table and his code was correct and secure, so I built an url that would inject DROP ALL TABLES and asked him to open that and explain the response, he gave the same speech of that’s not a real table so my endpoint is correct, and then I asked him to look at his database now and explain why it was empty. That guy also didn’t ask why he wasn’t hired, but I’ll always remember the interaction, it felt so surreal to tell someone there’s a security flaw here and his answer being “no there isn’t” without even questioning if he was right, that’s not the sort of people you want in your team.


  • Sure, but you’re making the assumption that no bank is a bad actor, which is the thing blockchains solve, you don’t need a Blockchain to circle money around between your friends, but it is needed when you introduce random persons who can screw the system.

    For example, let’s assume that you’re using public/private keys to ensure that only one bank can sign their own transaction and it’s easily verifiable, let’s also assume your id is the transaction hash which consists of sender, recipient, value and datetime (otherwise it’s super easy to send the same transaction with different values). Now I’m a rogue bank, how can I screw that system? Simple, I need to pay bank B for something, so I send him a transaction for it and at the same time I send every other bank that I’m draining my account to my friends bank C. B thinks I paid him, but every other bank thinks I gave my money to C, if B tries to spend it he will figure out that other banks don’t recognize that transaction, and even if he shows the transaction they also see the other one made to bank C with an earlier time which bank B never saw, which means I never actually paid bank B, even though B thought I did.