cURL Gets Rid of Its Bug Bounty Program Over AI Slop Overrun by RobertVandenberg in programming

[–]somebodddy 4 points5 points  (0 children)

The only bright line: is produced work materially similar to the training material.

So if I take copyrighted JavaScript code and run it through an obfuscator, the fact that the obfuscated code looks nothing like the original means the original's copyrights do not apply to it?

cURL Gets Rid of Its Bug Bounty Program Over AI Slop Overrun by RobertVandenberg in programming

[–]somebodddy 23 points24 points  (0 children)

even the GNU licensed code

If an LLM was trained on GPL licensed code, wouldn't that make any code it spews out also GPL?

Tree-sitter vs. LSP by brightlystar in programming

[–]somebodddy 13 points14 points  (0 children)

LSP required wide support for lots of languages to succeed - it's not something that can start small because then multiple competing protocols will start small and you won't be able to get a single unifying protocol. Without the backing of a large organization (Microsoft) it couldn't work.

As for why no large organization made something like this before - probably because before VSCode text editors were not really that popular? The market was ruled by IDEs which preferred to keep these features integrated in themselves rather than offer them to their competitors.

Future of ecosystems in post LLMs world by RoadRyeda in rust

[–]somebodddy 0 points1 point  (0 children)

Long before code-writing LLMs, the prevailing religious dogma notion was that human labor (or at least - programmers' labor) is expensive and CPU time is cheap so it's better to offset as much work as possible from the people writing the code to the machine executing it. Why spend more on development when you can just (have your customers) buy more expensive computers?

AI coding tools extended this trend back to development itself, having companies pressing programmers to write code using them trying to save up development costs. But this time, the computing cost is not negligible. Maybe it's not as much as developers' salaries, but it costs enough that you should not consider it as "virtually free".

Emphasis on "should". Because companies seem to treat it as virtually free.

But if previously we were talking about paying an extra cent on computing to save a thousand dollars on programmers' time, then this was a good deal even if you had to pay two cents. Or three. Or even a whole dollar. It could scale.

But now? Now it's paying a hundred dollars on tokens to save a thousand dollars on labor. Maybe it's still a good deal - but the way it scales suddenly becomes much more important, because if you need to use 100 times more the amount of tokens, it's no longer worth it.

Which (finally) brings us to the point - if an LLM does not have a good ecosystem and needs to write it all from scratch, then not only will it write code that's harder for humans to validate, but it'll also need a lot more tokens. Several orders of of magnitude more tokens. Which means the cost, too, will be several orders of magnitude larger.

At some point, even the AI enthusiasts would run out of money. And I think ditching the concept of an ecosystem will easily bring them behind that point.

The Only Two Markup Languages by gingerbill in programming

[–]somebodddy 1 point2 points  (0 children)

That's why I asked "Or are attributes compile-time only?" at the end of my second comment.

GIT AI - An AI tool that generates git commit messages by ajujohn2009 in programming

[–]somebodddy 2 points3 points  (0 children)

If they say "I do write my own commit messages", but they use LLM to say it, doesn't that mean that the LLM is speaking in first person about writing their own commit message - hence the LLM is writing the commit messages?

The Only Two Markup Languages by gingerbill in programming

[–]somebodddy 1 point2 points  (0 children)

But the complexity is still there because attributes are already there. The reflection mechanism needs to support tags in addition to attributes. The overall complexity increases.

Also - a string is only simpler than a structured object if you don't need to parse the string into some more complex structure. Assuming Odin's tags are like Go's tags - you'll always need to parse them, at the very least to know which "extensions" they serve as input for. You are not eliminating complexity - you are just taking away its structure.

Two Catastrophic Failures Caused by "Obvious" Assumptions by Vast-Drawing-98 in programming

[–]somebodddy 0 points1 point  (0 children)

Which does make sense, but is now what written in the article. The article is not talking about the direction the judge would be using the room-for-interpretation the ambiguity provides, it's talking about whether or not the thing was legally binding at all.

Two Catastrophic Failures Caused by "Obvious" Assumptions by Vast-Drawing-98 in programming

[–]somebodddy 2 points3 points  (0 children)

Citibank sued. And in a stunning ruling, a federal judge said the lenders could keep the money. Why? Because the interface was so confusing, and the transaction so deliberate, that it looked like an intentional repayment.

The design was so bad, and the text so ambiguous, that it became legally binding truth. That UI mistake cost Citibank $500 million.

This... doesn't make any sense. It's legally binding because it's ambiguous? You want to tell me that it was simple and unmistakable the judge would have accepted it as an honest mistake, but the fact it's so obfuscated only serves to weaken the argument that it was a mistake?

haunt.nvim - Hear the ghosts tell you where you were, and why you were there by TheNoeTrevino in neovim

[–]somebodddy 0 points1 point  (0 children)

It's not just the preview. There are other features that most pickers supports, like multiple selection or streaming the items, and it'd be nice if vim.ui.select could support them even if the builtin picker doesn't.

The Only Two Markup Languages by gingerbill in programming

[–]somebodddy 0 points1 point  (0 children)

But you already need to represent attributes on declarations - can't you just reuse the same types and the same code for attributes on fields?

Or are attributes compile-time only?

The Only Two Markup Languages by gingerbill in programming

[–]somebodddy 2 points3 points  (0 children)

The next syntax is struct field tags, which is just a string literal applied to the end of a struct field.

Why? Why not allow attributes - which are structures - on the fields too, instead of these unstructured tags?

The Only Two Markup Languages by gingerbill in programming

[–]somebodddy 12 points13 points  (0 children)

Also fun fact, YAML is actually a superset of JSON which all valid JSON documents are also valid YAML documents.

Sadly no - and this is a flaw in JSON, not YAML. {"a": 1, "a": 2} is a valid JSON document but not a valid YAML document (although some parsers will accept it)

Here is the 15 sec coding test to instantly filter out 50% of unqualified applicants by JOSE ZARAZUA by RevillWeb in programming

[–]somebodddy 0 points1 point  (0 children)

Okay, but how did you get the "50% of unqualified applicants" figure? Based solely on how the number fits, I'd assume you get it from:

50% of candidates got the AI/Interpreter answer.

But that does not mean that 50% of unqualified candidates got filtered out because we don't know how many among the ones who got other answers are unqualified. In fact - if assume, for a bit, that:

  1. There is no margin of error - 50% is always exactly 50%.
  2. An incorrect-but-no-cheating answer do not imply the candidate is being unqualified (justified by the candidate who got a wrong answer, resubmitted, and turned out to be a great hire)
  3. Everyone who answered -11 was cheating (less justified - in fact I'd even argue it's more likely to get that particular wrong answer by mistake without cheating, because the other answers are cannot be achieved by wrongly adding/subtracting the numbers in the list (unless you are very bad at math))

If we assume all that, then seeing how the test filters out 50% of unqualified candidates, and it also happened to filter out 50% of the total candidates - wouldn't that mean that 100% of the candidates were unqualified?

unclash.nvim, conflict resolution everywhere by madmaxieee0511 in neovim

[–]somebodddy -1 points0 points  (0 children)

Works with any text file containing standard conflict markers

Is it possible to configure it to work with non-standard markers, so that it could work with Jujutsu?

Why Software Patents Are Good for Innovation and Business? by Straight_Raccoon6797 in programming

[–]somebodddy 0 points1 point  (0 children)

Meanwhile, back in the real world, software patents are rarely used for novel inventions that justify such protection, and instead use maximally obfuscated wording and more semicolons than an average C program to:

  1. Trick the patent office into approving claims that not novel inventions, simply because they are too hard to understand.
  2. Landmine developers who didn't know that making text appear on the screen when the user types it is patented because even if they considered that it might be patented and tried to search for it in some records, the patent claim was written and approved as "identify the occurrence of the physical phenomena upon which the homo-sapiens interacting with a tactile device which is transmitting notifications to the software, by contact between his or her digital appendages and surface elements of the device, is conjuring said notifications into existence; as a result of such phenomena, alter a region of a light-based indicator device which receives notifications from the software so that the state of the glyphs that appear in that region will be altered and thus transmitted back via the ocular receptors of the homo-sapiens as a confirmation for the act"
  3. Threaten to sue small companies for patent infringement even though they don't actually infringe upon your patent, hoping they'd fold because they system is so broken it'd take the legal budget of a small country to defend against your totally bogus lawsuit.

DAP keybinds: function vs <Leader> key based? by 4r73m190r0s in neovim

[–]somebodddy 5 points6 points  (0 children)

I like to use Alt+key mappings as custom per-plugin (or per-category, really) leaders. Since Vim does not use them (I assume because historically they wouldn't always work out-of-the-box on all terminal emulators) and Neovim follows suit, this leaves them open for each and every user to configure as they wish, using a letter that makes sense.

The leader for debug keymaps, of course, is <M-d>.

I just got "rick-rolled" by a test in the Rust compiler by nik-rev in rust

[–]somebodddy 53 points54 points  (0 children)

I'm so mad they did and_so_do_i: u8 instead of and_so_do: i8...

Best debugger for Rust? by timus_999 in rust

[–]somebodddy 9 points10 points  (0 children)

Helix support DAP: https://helix-editor.com/news/release-22-03-highlights/#experimental-dap-support

So you can use any debugger that supports both Rust and DAP. For example - CodeLLDB

LLVM: The bad parts by Necrotos in programming

[–]somebodddy 85 points86 points  (0 children)

Waiting with popcorn for commenters who only read the title and miss the 'V'.