• 0 Posts
  • 87 Comments
Joined 2 years ago
cake
Cake day: March 25th, 2022

help-circle




  • Faresh@lemmy.mltoProgrammer Humor@lemmy.mlOf course
    link
    fedilink
    English
    arrow-up
    13
    ·
    edit-2
    1 month ago

    Is there any situation where you’d want to remember the opcodes? Disassemblers should give you user-friendly assembly code, without any need to look at the raw numbers. Maybe it’s useful to remember which instructions are pseudo instructions (so you know stuff like jz (jump if zero) being the same as je (jump if equal) making it easier to understand the disassembly), but I don’t think you need to remember the opcode numbers for that.

    Edit: Maybe with malware analysis where the malware in question may be obfuscated in interesting ways to make the job of binary analysis harder?





  • Something I’ve been for a while now is why this gender disparity is so strong in this specific area of engineering compared to all other engineering areas. People seem to claim it’s because of the “geek” stereotype, but that seems more like a symptom than a cause and I fail to see how it enforces this disparity, considering there’s nothing preventing a woman from being a geek too.










  • I wonder what sort of mitigations we can take to prevent such kind of attacks, wherein someone contributes to an open-source project to gain trust and to ultimately work towards making users of that software vulnerable. Besides analyzing with bigger scrutiny other people’s contributions (as the article mentioned), I don’t see what else one could do. There are many ways vulnerabilities can be introduced and a lot of them are hard to spot (especially in C with stuff like undefined behavior and lack of modern safety features) , so I don’t think “being more careful” is going to be enough.

    I imagine such attacks will become more common now, and that these kind of attacks could become very appealing for governments.


  • I wouldn’t trust ChatGPT with teaching me about some tool. It in my experience very convincingly spews out stuff it invented, and if one is still learning I can see it being hard to spot those errors. I use it to fix syntax errors in SQL queries, though, since I can’t be bothered to try understanding the not-so-helpful error messages I get with my queries, and because if chaptgpt tells a lie it will be caught by my syntax checker.

    So, I guess you can use it, if you always assume it to be trying to mislead you until proven to the contrary.


  • When using git and are working on a feature, and suddenly want to work on something else, you can use git stash so git remembers your changes and is able to restore them when you are done. There is also git add -p this allows you to stage only certain lines of a file, this allows you to keep commits to a single feature if you already did another change that you didn’t commit (this is kind of error prone, since you have to make sure that the commit includes exactly the things that you want it to include, so this solution should be avoided). But the easiest way is when you get the feeling that you have completed a certain task towards your goal and that you can move on to another task, to commit. But if you fail you can also change the history in git, so if you haven’t pushed yet, you can move the commits around or, if you really need to, edit past commits and break them into multiple.