• 6 Posts
  • 230 Comments
Joined 1 year ago
cake
Cake day: June 23rd, 2023

help-circle
  • Fair-ish, but it’s still just a public channel - even if you were invited into it.

    Like you can right click a channel -> “Change Notifications” -> Nothing. Then @Channel or @Here or even @'th3raid0r' just stops working. And then mute the channel. Not more notifications from the channel. So that’s not totally unignorable yet

    You can leave a channel, but yea, that triggers a channel notification saying that you’ve left.

    But yea, I don’t know to which degree they were ‘hunting you down’. At some point it’s seems fine to put your foot down.

    I put my foot down on that one - called the initiative ableist right in their “party” channel. And stated that if my participation was an issue, then I’d like to request non-participation as a reasonable accomodation for my autism.

    I probably would have approached that a bit differently though - on one hand, less hostile, like of name calling them an “ableist” -
    And on the other hand, even less compliant and requesting to not participate. I wouldn’t really phrase it as a request. If you’ve been ignoring them so far, and they DM you, wait half an hour to respond and just somewhat politely decline and say “yea, I’m not gonna do that.” - and then continue to ignore them some more. By requesting it and asking for accommodations you’re already way too far into accepting it as your problem

    As long as it’s becoming loads of work for them to even get close to anything compliant, the more likely they’ll just give up on it



  • We have seen time and again, especially on Android, that whenever a moderately-popular app goes open-source, it is immediately picked up by unscrupulous developers. They download the source, add obnoxious ads […]. tracking code […]. Finally, they publish it to the Play Store

    This is a pretty bad argument, especially when you’re specifically talking about Android. Android APKs are extremely easy to just download from closed-source, decompile them, and add new things or overwrite existing things.

    The argument makes more sense for things that are harder to decompile and recompile


  • Yea, I wasn’t saying it’s always bad in every scenario - but we used to have this kinda deployment in a professional company. It’s pretty bad if this is still how you’re doing it like this in an enterprise scenarios.

    But for a personal project, it’s alrightish. But yea, there are easier setups. For example configuring an automated deployed from Github/Gitlab. You can check out other peoples’ deployment config, since all that stuff is part of the repos, in the .github folder. So probably all you have to do is find a project that’s similar to yours, like “static file upload for an sftp” - and copypaste the script to your own repo.

    (for example: a script that publishes a website to github pages)


  • I used to behave like this, and it’s not very helpful, and usually turns it into an argument. Just silently ignoring it works much better.

    I put my foot down on that one - called the initiative ableist right in their “party” channel. And stated that if my participation was an issue, then I’d like to request non-participation as a reasonable accomodation for my autism.

    In your example - marketing sends a message on slack to post something on LinkedIn. You can:

    • Just do it
    • Just not do it
    • Not do it and be (very) vocal about not be willing to do it

    Picking the last option and complain is probably the worst thing you can do. You just open a can of worms, and - especially if you do it in a public channel - you put them in a position where have to be defensive or explain themselves.

    Basically instead of taking what they say at face value “this is what you must do” - as a real concept - so “therefor you must defend yourself and try to get out of “doing what you must do”” by complaining against it - take a step back before even considering that is really something you must really do. It’s not. So just don’t do it… but don’t throw it in their faces that you’re not gonna do it. Haha

    Like 99% of these things - if you just silently ignore them, they’ll just go away without a fuss.

    It’s not your problem if you don’t do it, so not even worth trying to argue over. It’s their problem. And if they think it’s a big problem enough they’ll probably send some more reminders in public first - like “We see not a lot of people have posted on LinkedIn! Please do, it’s very important.” - still just ignore it. If at some point they start DMing you about it, that’s about the right time to put your foot down and directly tell them you’re not going to do it



  • I suppose in the days of ‘Cloud Hosting’ a lot of people (hopefully) don’t just randomly upload new files (manually) on a server anymore.

    Even if you still just use normal servers that behave like this, a better practice would be to have a build server that creates builds, like whenever you check code into the Main branch, it’ll create a deploy for the server, and you deploy it from there - instead of compiling locally, opening filezilla and doing an upload.

    If you’re using ‘Cloud Hosting’ - for example AWS - If you use VMs or bare metal - you’d maybe create Elastic Beanstalk images and upload a new Application or Machine Image as a new version, and deploy that in a more managed way. Or if you’re using Docker, you just upload a new Docker image into a Docker registry and deploy those.



  • Hmm, well the first round(s) are doable for beginners. If you want to get into programming, these kinda games are a good way to start, since you’re getting visual feedback of what your bot is actually doing.

    And you can participate in loads of languages, so you can pick anything that you’re somewhat familiar with.

    However, once you’re getting into higher rounds, ranks, and leagues, you’ll be playing against other peoples’ bots. So obviously if you have 0 experience it’ll be way harder to beat people with loads of experience, that understand which algorithms are suitable etc.

    But I’d say go ahead and try it out. Its free. Maybe it turns out to be too difficult, maybe you’ll manage.





  • Defragging an SSD on a modern OS just runs a TRIM command. So probably when you wanted to shrink the windows partition, there was still a bunch of garbage data on the SSD that was “marked for deletion” but didn’t fully go through the entire delete cycle of the SSD.

    So “windows being funky” was just it making you do a “defragmentation” for the purpose of trimming to prepare to partition it. But I don’t really see why they don’t just do a TRIM inside the partition process, instead of making you do it manually through defrag




  • I guess cloud big boys would be using key management systems to move the key off the local instance

    Yes, AWS uses KMS - by default everything like RDS is encrypted at rest through the AWS default KMS key (default for your account, not globally default). I’m still not entirely sure what the point is, since once you login to the AWS console, or connect to the database, everything is decrypted by default anyways. So I suppose the main thing it protects from is physical access.

    You can make it more complicated by having more complicated KMS schemes, for example, see Demystifying KMS keys operations - That has a pretty good explanation of what KMS is, and the point of encrypted at rest (at AWS).

    A reason customers could ask for encryption at rest could be that they want to be in control of the decryption key. Then at any point that would give them the ability to revoke the decryption key, and practically revoke your access to their data

    But as @recursive_recursion mentioned, you should probably ask the stakeholder what the point is. 90% of the time the point is just some checkbox on a ISO27001 or SOC2 form. And “really providing any extra security” is not


  • https://www.consilium.europa.eu/en/meetings/jha/2024/06/13/

    In public session, the presidency will inform ministers about the state of play of a legislative proposal to combat child sexual abuse. The proposed EU law would make it mandatory for internet companies to alert the authorities about online child sexual abuse on their platforms.

    […]

    eff.org

    The Belgian proposal was debated behind closed doors, and civil society groups have only recently been able to even evaluate and discuss the proposal after it was leaked to the press.

    A bit of a discrepancy here between how it’s framed, “we’re having public discussions” vs getting information from a leaked document marked as “Classification: Top Secret – For official use only” - I wonder who’s telling the truth here, the EFF, or a Council of EU governments that secretly want to implement mass surveillance.

    Also funny how it’s always the same playbook. “Lets do this under the under the guise of combating child sexual abuse.”


  • The amount of times I’ve been alerted in the middle of the night because CPU was running high for 5 minutes is too damn high.

    I’d suggest to just set up automatons to fix those things automatically. Lets say 80% CPU for 5 minutes it too high. Ok, add an auto-scale rule at 65% CPU for 3 minutes to add an extra node to the cluster to load balance the CPU load

    It’s like we’re trying to prevent outages by monitoring for potential issues rather than actually making our system more robust and automate-able.

    Like it sounds like you’re saying the issues are caused by systems not being robust and lack of automation… If they’re this scared of outages and breaking SLA, they should work on having less outages, or having fall-backs when they occur.

    But it could get pretty difficult to get management to do this kinda things from random suggestions from some SRE. I’d probably talk with the team-lead about this, and other people in your team, cause you’re probably not the only one with these issues. And then have a meeting with the entire dev/SRE team and management to point out it’s not sustainable the way it’s going, and with suggestions to improve it



  • I’m not completely sure which classes you’re talking about - but it sounds like the Business Process Layer

    I would call them “services” but I’m looking for a less overloaded term. Maybe capabilities? Controllers?

    “Controllers” (in dotnet at least) is usually reserved for the class that initially intakes the http request after middleware (auth, modelbinding etc)

    It’s probably easier with a concrete example, so lets say the action is “Create User”

    It depends on the rest of your architecture, but I usually start with a UserController - that takes all user related requests.

    To make sure the Controller doesn’t get super big with logic, it sends it though mediatr to a CreateUserCommandHandler

    But it’s a big vague which parts you’re asking about…

    “there is a class of … classes/modules that does the needful.”.

    Everything else you’ve described

    “API resources, queue workers, repositories, clients” and serializers

    Is “cross-cutting”, “Data Access Layer”, and “Service Agent Layer” maybe a bit “Anti-corruption Layer” - but there’s a lot of other things in between that “do the needful”


  • Well to be clear, this was not supposed to be a jab at gitflow, or me complaining specifically about gitflow. I merely used “gitflow” as an example of a set of conventions and standardizations that comes nicely packaged as one big set of conventions.

    But there’s nothing wrong with gitflow. I was just saying - it are not set in stone rules you must follow religiously. If you’re using it and it seems more practical to adapt the flow for your own use-case, don’t worry it’d be considered wrong to not stick strictly to it