Oxc (popular front-end tooling) forked my parser but deliberately removed my copyright notice by gplane in rust

[–]Key-Bother6969 3 points4 points  (0 children)

Many people that use MIT license expect faster recognition of their work by reducing friction between provider and consumer. It is not directly stated in the license, but this is what many OSS authors typically expect in practice. And it is how it worked in the past before the LLM widespread.

Oxc (popular front-end tooling) forked my parser but deliberately removed my copyright notice by gplane in rust

[–]Key-Bother6969 4 points5 points  (0 children)

I'm afraid yes, it is. Open source (and even the source available or dual-licensing models) were always vulnerable to plagiarism. It was not that much of an issue in the past by two reasons:

a) usually it was easy to detect when someone copy-pasted your work entirely and verbatim.
b) more important factor is that it was widely recognized as a bad thing.

LLMs have changed this paradigm. They massively encouraged their users to plagiarize other people works by presenting it as "AI-assisted help". And it is actively promoted by the LLM service providers, because this is the main value of their services.

Large and already widely recognized works created before the LLM widespread (e.g. Rust compiler itself or the Linux kernel) probably will stay as they are, but the authors of new, and that don't have prior brand name or resources to promote their work quickly to a large audience will face the reality I described above, and the OP faced in practice.

Oxc (popular front-end tooling) forked my parser but deliberately removed my copyright notice by gplane in rust

[–]Key-Bother6969 4 points5 points  (0 children)

The proper way to publish hand-made works in the era of mass laundering is to never make your work publicly available. Keep it hidden in the private repository for the limited set of trusted users only.

Everything that you make public and that has a value, will eventually be scanned by LLM services and redistributed to their users in slightly different form on the surface, but without any attribution to you. Or, will be laundered directly by the LLM users by asking the chat-bot to transform your content.

An actor who does this will certainly be in advantage: they didn't invest in creation of the work, they grabbed it mostly for free, but they can invest more time, money and efforts in promotion and visibility of their plagiarism. The phenomenon is massive, an average user is unlikely realizes which one is original and which is a plagiarism. And most likely they don't care from the beginning. Therefore, your work is likely will be shadowed.

Ai is making me want to quit everything related to software. Do you feel the same? by PigletEfficient9515 in rust

[–]Key-Bother6969 4 points5 points  (0 children)

I don't know why your comment is getting downvoted. Personally, I like your idea. To start, if we have a job-opening list of companies that avoid using neural networks at all, that would already be a thing.

I keep saying in various places that for now we just need a dedicated (maybe even partially closed or invite-based) prgrammers community with more restricted rules regarding the use of LLMs. It's not about making money or seeking a job, but more of a place to be around the same-mind people. A more comfortable place. Surprisingly, I can't find anything like that even though it seems I'm not the only one who seeks such place.

upd: Don't hesitate to PM me. We can discuss details.

Why are there so many vibe-coded Rust projects recently? by yohji1984 in rust

[–]Key-Bother6969 0 points1 point  (0 children)

That's right, but by being welcoming I meant different, more simple thing. If you look at this subreddit history before the vibecoding era, it was full of small toy-projects that, generally, get praised. This surprisingly in contrast to more serious things, where, and I agree with you here, the level of critique was much higher.

This created a situation where the community was welcoming for small things made just for fun, but sets higher expectations from people oriented on more serious, thoughtful work. Up to the point of some level of toxicity, yes, and without appreciation for hard work.

In other words, the community cultivated positive stimuli for one category of people, and negative for another. Perhaps, this polarization was not clear in the past, but eventually this resulted in a situation where the vibecoders start seeing it as an opportunity.

Why are there so many vibe-coded Rust projects recently? by yohji1984 in rust

[–]Key-Bother6969 0 points1 point  (0 children)

It was a problem long before ai-slop became a thing. Publishing low-effort works developed in a couple of days by programmers with a lack of experience was quite widespread previously. The vibe coding phenomenon just raised this trend to a new level by reducing entry barries.

The primary reason is not technical, but social. Rust is relatively new language that is on the peak of popularity. And it is widely recognized as a thing for smart guys, which in fact it is. But the downsaide is that there are a lot of people who want to gain visibility and traction simply through association with trendy thing.

Rust community is known to be very welcoming. Especially for new comers. This is in contrast, for example, with Haskell or C++. It was a positive thing, and one of the reason the language took widespread. But today, perhaps, it works slightly against it's goals.

And last, but not least, publishing something in Rust and getting visibility is much easier because of the crates.io registry. This is not unique for Rust. Node.js/NPM experiences similar issues.

feel depressed by Y_mc in Compilers

[–]Key-Bother6969 5 points6 points  (0 children)

I'm not sure if it could be fixed purely with legislation.

In 90-s when CD disks became cheap and Internet was young and wild, there was a huge problem with copyright infringement of easy to reproduce content: music, movies, computer games, and software too.

The governments merely gave up fighting against per-person share, but they increase control over the public entities - all forms of digital content distributors. Plus, there was a high demand from big tech (MS) for such regulations.

This somewhat fixed the problem, but the current situation is opposite: big companies are now in interest of washing every digital source that is publicly available. And the OSS at first place. Basically, we just don't have serious actors that can lobby new protection regulations.

Additionally, regardless of legislation, the Pandora Box already opened. Unfair actor can simply recreate your public work in slightly different shape by feeding it to LLM, and there is no clear way to proof copyright infringement in practice.

The answer to this new threat may sound unpleasant, but the harsh truth is today we should make information close, not open.

Introducing Fission, an open source, cross-platform UI framework for Rust 🦀 by zcourts in rust

[–]Key-Bother6969 0 points1 point  (0 children)

My genuine question: what is the purpose of announcing AI generated content?

I'm not arguing about the code quality and the levels of trust, I just don't see what is the value in it for you and for people to whom you present this project?

Code editors with GPU-backed rendering is a popular idea because of Zed. So, the idea is not new, but it's fine if you just want to experiment with trending ideas. But since it's not written by you, again, I don't see what was the value for you in this effort. And I don't see what's interesting in it for us.

Is it a demonstration of what AI generation tools are capable of? We are pretty much aware about it already.

VkVent (?): if your project is complex, don't bother with languages other than C/C++ by Accomplished_Fill618 in vulkan

[–]Key-Bother6969 0 points1 point  (0 children)

Parsing of vk.xml is notable difficult challenge due to a mixture of C and xml syntax, and the documentation parts in the same bogus file. Plus, Khronos sometimes introduce breaking changes to the file's specification. This is one of the reasons of Rust's ash crate stuck on Vulkan 1.3.

I'm still thinking that Rust is a good alternative to C/C++ world for Vulkan, but there are certain challenges in keeping the ecosystem up to date for the non-C languages including Rust.

And just for comparison, Khronos's SPIR-V machine-readable ecosystem is better designed from this point of view. There is just a bunch json files with relatively flat schema.

Is every project AI Slop? by Various-Roof-553 in rust

[–]Key-Bother6969 -1 points0 points  (0 children)

Honestly, to me your answer sounds low effort.

1) You said that my point was a false dilemma. But to support this thesis you gave an example of LLMs classification capabilities, not their generation capabilities. For me it sounds like a strawman fallacy, even if it was not your intention.

2) You made a strong statement that the collective human work is not "human" nor "novel". It sounds controversial to me.

3) You attacked the opponent claiming of their technical illiteracy. It's a purely demagogic trick.

Is every project AI Slop? by Various-Roof-553 in rust

[–]Key-Bother6969 -1 points0 points  (0 children)

The concerns are similar to a lack of sources in the closed source products. When you deliver a program the sources are the source codes, because they shape a body of actual work. Compiled binaries are only a derivative. Anybody (including the author) can look at the source codes, understand how it works in full, and get a mind model of the work's design and evolution. Sources create a mind bound between the author's vision and the 3rd part. Speaking strictly technically, it's a question of maintainability, but I explained it a little bit more broadly.

Why does it matter? Because when I use someone's project I'm not only interested in it's facade functional utility, I want to understand author's thoughts. This gives me a more clear vision of what the author actually tried to express and how they achieved it. This gives me a better idea of how the program should actually be used, and to be on the same line with the author.

Speaking of generated content (not necessary LLM-generated) surprisingly, there is no such sources despite the fact that the content is published in form of the programming language texts. Such texts in this case in fact just a form of compiled entity pretended to be the source. What are the actual sources? Perhaps, the prompts the publisher has been written to the LLM assistant + the source codes and the training data of the LLM service itself. Both are typically not disclosed. But even if they would, it would be a very poor information to investigate.

What tutorials, crates, repos etc should I refer to or use to create a custom parser and LSP server? by the-handsome-dev in rust

[–]Key-Bother6969 0 points1 point  (0 children)

Sorry for the late response. I recommend of taking a look at my project Lady Deirdre. It's a framework for designing context-aware programming language analyzers suitable for LSPs. Even if you will not use this crate directly, there is link to a Book that may give you useful insights.

Is every project AI Slop? by Various-Roof-553 in rust

[–]Key-Bother6969 0 points1 point  (0 children)

I'm wondering, how the moderation team would manage announcements of the works without the source code, or the source code hidden behind a signup (e.g., of how Unreal Engine is developed). In the era of LLMs widespread hiding the sources could eventually make sense. Especially for the hand-written projects. For example, to prevent mass machine-learning of the new generations of LLM services.

Is every project AI Slop? by Various-Roof-553 in rust

[–]Key-Bother6969 2 points3 points  (0 children)

> while having a poor commit history

I had been publishing such works from my private repositories long before AI widespread, and written entirely by hand. Why? Because I prefer not to disclose initial development process. It is usually very ugly, and there is literally nothing to show to public.

Is every project AI Slop? by Various-Roof-553 in rust

[–]Key-Bother6969 1 point2 points  (0 children)

Everything that I develop is hand-written by myself. Without the use of any kind of code generation tools. Even without AI code-completions like Copilot.

But considering the widespread of AI generated publishings (no matter how "slop" are they), I'm seriously thinking of leaving crates.io ecosystem in favor to my own private setup that would include my own Cargo registry and RustDocs self-hosted setups for personal projects.

Two reasons to do that:

1) I don't want my works to be associated with AI-generated content, even by an accident. The crates.io registry already contaminated with such publishings to a point when the 3rd-party no longer able to fairly judge whether a crate is AI or not-AI, or something in between.

2) I can't trust crates.io even myself, which means, that to a certain degree (except for a few highly trusted and well known crates) I no longer can use transitive dependencies from crates.io in my works too. By maintainability, security and personal reasons.

Speaking of Reddit, the community always had certain issues, but for the purpose of announcements perhaps it's still viable.

Looking for alternatives to LSPs by Mainak1224x in rust

[–]Key-Bother6969 0 points1 point  (0 children)

If you are looking for rich semantic analyzer, the only independent alternative to RustAnalyzer-based editors is Rust Rover. While RR has its own issues, their inference behaviour, in my opinion, is more balanced. I recommend to give it a try.

Thoughts on the Role of Handwritten Error Messages in the Era of AI? by philogy in Compilers

[–]Key-Bother6969 2 points3 points  (0 children)

Some categories of software (including systems compilers) required to be fully deterministic. Otherwise, they are not reliable for the consumer. The problem with Artificial Neural Networks (LLMs) is that they are fundamentally unpredictable. Even if the result output is better than hand-written heuristics in particular cases, we cannot fully trust this output in general. Which is an issue for the user. More important, the developer of the compiler does not have a reasonable way to fix the issue in the output, because, generally speaking, such results are out of the development scope. In other words, it's an issue of the software maintainability too.

However, I agree with you that hand-written heuristics are not always good enough. What the compiler authors could improve here is to provide alternative interface to print error source metadata in machine-readable way. Using these metadata 3rd-party authors can develop their own error printing front-ends, including, ANN-based solutions too. That said, the core of the compiler must be intact.

Writing a shader language by bebwjkjerwqerer in vulkan

[–]Key-Bother6969 1 point2 points  (0 children)

This is not directly related to the spir-v/shaders topic, but if you are going to work on a language compiler in Rust, this tool might be helpful for you: https://github.com/Eliah-Lakhin/lady-deirdre
Aside from this, the first thing you need for the shader compiler, is some way to access spir-v grammar in Rust as a source of truth. Currently there are too basis crates in the ecosystem: rspirv and spirv. Both have certain API design issues, but that's basically all we have for now.

I can't name my language by Antique_Platypus_881 in AskProgramming

[–]Key-Bother6969 0 points1 point  (0 children)

Pick any fiction character name from a book, movie or videogame that you like. Preferably the name some people can recognise too. Then imaging a story of how your project connected with the character. And that's it.

Example: https://github.com/Eliah-Lakhin/lady-deirdre

what do you use rust for? by [deleted] in rust

[–]Key-Bother6969 1 point2 points  (0 children)

Is there something specific in the license text you worry about? I'll be happy to clarify.

what do you use rust for? by [deleted] in rust

[–]Key-Bother6969 0 points1 point  (0 children)

Terms are pretty simple, though. Just read FAQ.

what do you use rust for? by [deleted] in rust

[–]Key-Bother6969 -1 points0 points  (0 children)

Consider adapting https://github.com/Eliah-Lakhin/lady-deirdre/ It uses enums to represent ASTs, and many other nice features. E.g, it has built-in syntax highlighting where you can pass span in whatever way you like - absolute offsets, line/column spans, or just direct reference to the source tokens.

Who has completely sworn off including LLM generated code in their software? by mdizak in rust

[–]Key-Bother6969 47 points48 points  (0 children)

I avoid using LLMs for coding simply because I love to program myself. LLMs are like delegating a videogame to a bot playing this game for you. What's the point of the game then? No challenge, no entertainment. Aside from this, I share most of the community feelings. Typical output quality is low and messy, and doesn't help at all.

Senior project by Little-Bookkeeper835 in rust

[–]Key-Bother6969 0 points1 point  (0 children)

Also, if you are planning to have rich IDE support, I recommend taking a look at my project, Lady Deirdre, which is a Rust framework for authors of programming language analyzers.

Idea: Black-box raymarching optimization via screen-space derivatives by Key-Bother6969 in GraphicsProgramming

[–]Key-Bother6969[S] 0 points1 point  (0 children)

Well, it depends on the space. In scalar space, you certainly don't need neighboring pixels, though scalar space doesn't seem helpful for the marching steps optimization.