back to main page

rust 2: a conversation had on github, undistilled.
mostly here because it contains more rust musings, akin to the previous rust self. more of a lament than a real conversation for the most part, even though it started as a mildly trolling-esque thing.



PR Title: remove problematic codeharassment (#50)
PR URL: https://github.com/TheRedDeveloper/ply-engine/pull/50

TudbuT wants to merge 2 commits into TheRedDeveloper:main from TudbuT:main.

Improves the fix for #43 [Add LLM instructions in a file called SKILL.md] by removing the code that might be hallucinated about. I hope this helps you write more apps with the smart AI.

TudbuT added 2 commits:
remove slop (deletes SKILL.md)
remove problematic code (deletes everything else)

TheRedDeveloper commented:

Girl, what is wrong with you? I spent over 100h writing this. Yes there was AI involved, but I do read the code I write and I do plan everything. Do you usually just go around other people's repos deleting their code?

TheRedDeveloper changed the title from "remove problematic code" to "harassment"

TheRedDeveloper commented:

If you have any actually valuable feedback I would love to hear it.

TudbuT commented:

> Girl, what is wrong with you?

Many things

> I spent over 100h writing this. Yes there was AI involved, but I do read the code I write and I do plan everything.

Im glad to hear this; but at the same time you seem not to take enough pride in coding to not let something else do it for you, so i dont know what to think really. I dont care about the ethics of LLMs (though they dont look too good), but I would never want a fake tool (a tool that fundamentally tries to do the thinking for you instead of letting you do it, while also not being something you truly own and thus being unreliable) do my art (coding, writing, anything) for me.

> Do you usually just go around other people's repos deleting their code?

No, usually not. This was specifically after i looked for a gui library (im by now extremely disillusioned with rust gui due to everything being extremely heavy weight and annoying to use), found this, only to see that it, too, has a dependency tree of 250 despite on a surface level agreeing that the rest of the rust gui space is messed up. (Most of my devices cannot compile this, and even though my main device can, i still dont want to burden those less fortunate than me with such dependency trees.)

I would actually be pretty interested in reading your thoughts on this now, so please do let me know them.

MarcoBelluDev commented:

@TudbuT if you don't like a repository, just skip it.
Nobody is forcing you to use it.

TudbuT commented:

> @TudbuT if you don't like a repository, just skip it. Nobody is forcing you to use it.

Easy to say for you when there is currently none that i do like. The rust community is full of this stuff (gigantic dependency trees and generated code) and it is incredibly frustrating to see it happen again and again and again and again for ever and ever. Hell, I would not even care that much if it was slop if in return it was at least actually somewhat small, but it seems the rust community has been cursed with npm syndrome and nearly nobody wants to fix it.

And i know i sound like some asshat elitist or suckless dot org nazi. I dont want to sound like that, but I cannot find other words to say that this assumption of privilege in both yourself and those who may want to compile your code is a problem. For you: Good computers are not forever, as can be seen in the recent crises regarding RAM and the instability regarding high density silicon in general. For others: Good computers are also expensive, and most people do not have access to them. All two good computers i have were gifted to me, and only one of those is actually fast enough to painlessly compile something like this.

Modern computers are incredibly fast, but when my 24-core computer takes 30 seconds to compile something, consider the hour my older laptop may take - and even that is an amazingly fast computer that can compile many tools i use within a minute or two, so i know it doesn't have to be this long.

And I know it sucks for you too. The rust standard library is a truly pathetic size for a language that means to pride itself in approachability and efficiency. These things require existing abstractions and rust does not provide them. The community filled that in, but it did so in a so fragmented and inefficient way that rust became inaccessible once more - not filtered by skill but by money, access to hardware.

TudbuT commented:

Also, I want things to be better. That might not come through in a troll PR induced by rage and pain and twisted humor, but that is what makes me even care about this in the first place. "Just go somewhere else" does not make things better.

TheRedDeveloper commented:

@TudbuT

First, let's address the technical complaints about dependencies and compile times. If you disable accessibility, the engine only brings in 31 normal dependencies and 1 build dependency:

ply-engine v1.1.1
├── macroquad-ply v0.4.14
│   ├── fontdue v0.9.3
│   │   ├── hashbrown v0.15.5
│   │   │   ├── allocator-api2 v0.2.21
│   │   │   ├── equivalent v1.0.2
│   │   │   └── foldhash v0.1.5
│   │   └── ttf-parser v0.21.1
│   ├── glam v0.27.0
│   ├── image v0.24.9
│   │   ├── bytemuck v1.25.0
│   │   ├── byteorder v1.5.0
│   │   ├── color_quant v1.1.0
│   │   ├── num-traits v0.2.19
│   │   │   [build-dependencies]
│   │   │   └── autocfg v1.5.0
│   │   └── png v0.17.16
│   │       ├── bitflags v1.3.2
│   │       ├── crc32fast v1.5.0
│   │       │   └── cfg-if v1.0.4
│   │       ├── fdeflate v0.3.7
│   │       │   └── simd-adler32 v0.3.9
│   │       ├── flate2 v1.1.9
│   │       │   ├── crc32fast v1.5.0 (*)
│   │       │   └── miniz_oxide v0.8.9
│   │       │       ├── adler2 v2.0.1
│   │       │       └── simd-adler32 v0.3.9
│   │       └── miniz_oxide v0.8.9 (*)
│   ├── macroquad_macro v0.1.8 (proc-macro)
│   ├── miniquad-ply v0.4.8
│   │   └── libc v0.2.184
│   └── quad-rand v0.2.3
└── rustc-hash v2.1.2

Enabling accessibility does add more because that is simply the reality of supporting accessibility across different platforms. Accessibility is still a default for obvious reasons, but you can disable it. For Linux, accessibility adds 122 normal dependencies and 1 build dependency. For web, it adds nothing. For Android, it adds 24 normal and 2 build. For macOS, it adds 13 normal. For Windows, it adds 28 normal. On my machine it takes 11 seconds to compile without accessibility. With it enabled it takes anywhere from 11 seconds for web up to 44 seconds for Linux. Remember that dependencies only ever compile once and after that iterative builds take mere milliseconds. It absolutely should not take an hour to compile this.

Second, your personal opinions about AI do not justify how you are speaking to me in these comments. Using AI in my workflow simply saves me mental energy in some places and doesn't impact the end result. You are free to believe that I do not take pride in my code or that using these tools is unethical. What you cannot do is make your opinion my problem by harassing me in my own repository. As a queer person I am well aware that telling someone to keep their opinions to themselves is often weaponized against marginalized people. I want to be very clear that this is not what I am doing here. I am extremely open to hearing different opinions, but I'm not open to harassment.

TudbuT commented:

> dependencies and compile times

I will admit that this is much better than other gui libraries i have seen (e.g. iced), and honestly this PR is in part the culmination of the anger accumulated from other libraries. The accessibility features being so big still massively pain me though. But it probably is kind of unjustified of me to target this library specifically.

> It absolutely should not take an hour to compile this.

I will test this on a lower end laptop of mine i was using until a few weeks ago and report back once its done. I will say I have not tried it yet but that dependency trees of the same size *have* taken an hour before.

> What you cannot do is make your opinion my problem by harassing me in my own repository.

It might have been somewhat unreasonable I will admit, but nonetheless I feel the need to mention that AI scanners have, on several occasions, generated so much garbage data and requests that my servers (https://git.tudbut.de, https://social.tudbut.de) have been brought down and their databases severed. If you pay for an LLM service, you are funding this. This has cost me two times of having to do backup restores (each time losing some data), one of which happening even after i had already installed a filter in front of my websites. I have now made [my own filter](https://git.tudbut.de/tudbut/bombai) which works much better, so this will not happen again, but it is nonetheless causing a request input of [3.4 million requests per day](https://grafana.newinfra.tudbut.de/bombai), equivalent to a pretty decent DDoS attack. I will repeat that unless you use a free LLM exclusively, you are funding this despite having full choice in whether or not to do so.

> As a queer person I am well aware that telling someone to keep their opinions to themselves is often weaponized against marginalized people.

Thank you, though in this case: no offense taken, i know where you are coming from. I can understand your point of view, but I nonetheless disagree with it. (I am also [queer as well](https://self.tudbut.de/am_i_trans.html) so I know you might be experiencing queerphobic harassment and want to explicitly distance myself from this. My harassment is neither intended particularly as harassment nor at all related to you as a person.)

> I am extremely open to hearing different opinions, but I'm not open to harassment.

I know the initial PR is extremely provocative and I honestly made it in such hatred that I'm not at all surprised it constitutes harassment, but further harassment is not my intention with these responses. If I continue to come off as harassing you, this is not my intention and I would like you to point it out when it comes across like that.

TudbuT commented:

Okay so the dependencies are somewhat smaller than the similarly-sized tree ive compiled in the past so its shaping up to be less than an hour indeed, though still a very inconvenient amount given I've had some gui apps compile in a few seconds on the same machine. This is probably at least 80% an ecosystem/stdlib failure rather than this library specifically though (but with e.g. iced i would be much less generous as that is truly of terrifying weight no matter how you look at it); the apps im speaking of were mostly Java or C.

I guess I am once again repeating myself but it seems the rust ecosystem really is just fundamentally broken by its standard library; and if it isn't, maybe ill have to be the one to try to fix it (as I have often tried with other big libraries), even though i *really* do not want to because it sounds like a terrible time. And if I do, I'll either first have to distrohop back to arch because nixos and rust gui are not particularly happy with each other, or use workarounds that make it even jankier.

TudbuT commented:

> I will test this on a lower end laptop of mine i was using until a few weeks ago and report back once its done.

Okay, 10 minutes. Not quite as bad, but (see previous comment). This is on my previously best device; i could do worse but that might be unfair as then its getting into 2010-ish territory (though it does annoy me that what was top of the line in 2010 and perfectly fast, is now not even to be considered).

TheRedDeveloper commented:

@TudbuT

mi toki e ni kepeken Toki Pona, tan mi lukin e Toki Pona lon https://social.tudbut.de.

ni li pona tawa mi: sina li toki tan weka suli li lon e toki sina. mi kama sona e ni: toki sina li wile ala utala jan e mi. sina pilin ike utala, tan alasa pi ilo sona nanpa li pakala e ilo linluwi sina.

toki ni li pini la, pana e pilin utala tawa sin PR pakala pi pali open ante li pona ala. pali open mi li poki ko ala pi kama sona utala tawa pilin utala sina. pilin utala sina li tawa kulupu suli pi ilo sin tawa kulupu Rust tawa ala mi.

tenpo ni la, mi pini e sin PR ni, tan ni li pakala li pana ala. mi wile e ni: sina lukin e ilo UI tawa sina.

See english

I'm writing this in Toki Pona, because I saw Toki Pona on https://social.tudbut.de.

I appreciate that you are taking a step back and correcting your comments. I learned that your comments were not meant as a personal attack and that you are frustrated, because AI crawlers are breaking your servers.

That being said, dumping your anger into a destructive troll PR on an unrelated open source project is not acceptable. My open-source project is not a punching bag for your frustrations. Your frustrations are towards the large tech industry, and towards Rust, not towards me.

I am closing this PR now, because it is destructive and does not offer any constructive contribution. I hope you find a UI framework that suits your needs.

TudbuT reacted with :heart:

TudbuT commented:

lon. toki ni li pona. pona o kama tawa sina.



the end.