[–] 3 points 1 year ago (1 child)

The xz attack required years of patient work to build Jia Tan’s credibility through hundreds of legitimate patches. These [LLM] tools can now generate those patches automatically, creating convincing contribution histories across multiple projects at once.

I don't know, but maybe the current hype could have the opposite effect: if you try to flood many projects with AI-generated patches, you'll be marked as AI-slopper and blocked from the projects, rather than become a trusted contributor? (OK, assuming a nation-state-like powerful adversary, it can probably do the real job of checking the AI output diligently in order not to be detected as AI spamming, while still getting some advantage of it, unlike those hordes of need-famous-open-source-contribution-in-my-CV who just copypaste the first nonsense which came out of AI into a PR.)

  • source
  • [–] 7 points 1 year ago

    Add automatic normalization to the box (you know, you type "05" and it drops the leading zero, you type "0.70" and it drops the trailing zero, etc.) and it often gets completely impossible to write anything valid. Some banking apps do something similar. :-)

  • source
  • parent
  • context
  • [–] 7 points 1 year ago (1 child)

    I understand the idea. But many people have hugely mistaken beliefs about what the C[++] languages are and how they work. When you write ADC EAX, R13 in assembly, that's it. But C is not a "portable assembler"! It has its own complicated logic. You might think that by writing ++i, you are writing just some INC [i] ot whatnot. You are not. To make a silly example, writing int i=INT_MAX; ++i; you are not telling the compiler to produce INT_MIN. You are just telling it complete nonsense. And it would be better if the compiler "prevented" you from doing it, forcing you to explain yourself better.

  • source
  • parent
  • context
  • [–] 6 points 1 year ago

    If you are asking whether you can use Garmin Connect without Garmin, I don't think so. But you can use a different non-Garmin app with your watch, see https://gadgetbridge.org/ Obviously, it does not have the full functionality of Garmin, and even more obviously, you would lose the Garmin social functions without Garmin Connect (but there are open-source projects for that as well). (Also, with Garmin, maybe you will lose some of the functions anyway to the Garmin Connect+ subscription, right? :-) )

  • source
  • parent
  • context
  • [–] 12 points 1 year ago (2 children)

    While googling around to gather clues for reverse-engineering the protocol for a Garmin smart watch, I stumbled upon an e-mail on a listserv, discussing pieces of Garmin BT communication. Only after a while I noticed it had been written by Linus, who apparently worked on diving software.

  • source
  • [–] 5 points 1 year ago (2 children)

    This might work when the test really describes&tests the business rule, not when the test simply contains a mirror of the implementation with everything replaced by mocks and just checks that the implementation is what it is, conditioning all people changing the code in the future to always have to change the test as well.

  • source
  • parent
  • context
  • [–] 1 point 1 year ago

    I wanted to publish a tiny utility I created to GitHub (you know, it might be useful to someone else...). Before that, I wanted to some cleanup, rebasing/squashing a bit, etc. In the middle of that:

    $ git checkout featurebranch
    The following untracked working tree files would be overwritten by checkout:
    .gitignore
    .idea/…
    etc...
    

    Oh, sure, no problem…

    $ rm -rf * .*
    $ git checkout featurebranch
    fatal: not a git repository (or any of the parent directories): .git
    

    D’oh! (Never mind, it probably wouldn't have been useful to anyone else, anyway.)

  • source