Details
-
AboutThat PLC gal! 🏳️⚧️
-
SkillsPython, C/C++/C#, MongoDB, Electronics, PLC, Rust
-
LocationSwitzerland
-
Website
Joined devRant on 8/30/2017
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Google Assistant got replaced by Gemini on my phone. What used to work before, me saying "Hey Google, set an alarm for 5 pm" doesn't work anymore.
"I am only a language model so I can't help you with that" is the default response.
Does big tech not like the idea of things working fine and smooth?37 -
i need to scream.
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA40 -
In CSS, never ever enlarge anything by hover. There will exist a set of cursed cursor positions somewhere on the edge of fully zoomed out and fully zoomed in states, which will make your UI element twitch between two states at 60+ FPS.
If you want this effect, wrap the element you want to enlarge in a wrapper whose size won't change. Add :hover state on the wrapper, not the element, and change the element in that selector. It will make the curse go away.
wrong:
.zoom:hover { transform: scale(1.1) }
right:
.zoom-wrapper:hover .zoom { transform: scale(1.1) }8 -
Here is my idea for a time machine which can only send one bit of information back in time.
@Wisecrack has asked me about it and I didn’t want to write it in comments because of the character limit.
So here we go.
The DCQE (delayed-choice quantum eraser) is an experiment that has been successfully performed by many people in small scale.
You can read about it on wikipedia but I'll try to explain it here.
https://en.wikipedia.org/wiki/...
First I need to quickly explain the double slit experiment because DCQE is based on that.
The double slit experiment shows that a particle, like a photon, seems to go through both slits at the same time and interfere with itself as a wave to finally contribute to an interference pattern when hit on a screen. Many photons will result in a visible interference pattern.
However, if we install a detector somewhere between the particle emitter an the screen, so that we know which path the particle must have taken (which slit it has passed through), then there will be no interference pattern on the screen because the particle will not behave as a wave.
For the time machine, we will interpret the interference pattern as bit 1 and no interference pattern as bit 0.
Now the DCQE:
This device lets us choose if we know the path of the particle or if we want wo erase this knowledge. And we can make this decision after the particle hit the screen (that is the "delayed" part), with the help of quantum entanglement.
How does it work?
Each particle send out by the emitter will pass through a crystal which will split it into an entangled pair of particles. This pair shares the same quantum state in space and time. If we know the path of one of the particle "halves", we also know the path of the other one. Remember the knowledge about the path determines if we will see the interference pattern. Now one of the particle "halves" goes directly into the screen by a short path. The other one takes a longer path.
The longer path has a switch that we can operate (this is the "choice" part). The switch changes the path that the particle takes so that it either goes through a detector or it doesn't, determining if it will contribute to the intererence pattern on the screen or not. And this choice will be done for the short path particle-half because their are entangeld.
The path of the first half particle is short, so it will hit the screen earlier.
After that happened, we still have time to make the choice for the second half, since its path is longer. But making the choice also affects the first half, which has already hit the screen. So we can retroactively change what we will see (or have seen) on the screen.
Remember this has already been tested and verified. It works.
The time machine:
We need enough photons to distinguish the patterns on the screen for one single bit of information.
And the insanely difficult part is to make the path for the second half long enough to have something practical.
Also, those photons need to stay coherent during their journey on that path and are not allowed to interact with each other.
We could use two mirrors, to let the photons bounce between them to extend the path (or the travel duration), but those need to be insanely pricise for reasonable amounts of time.
Just as an example, for 1 second of time travel, we would need a path length about the distance of the moon to the earth. And 1 second isn't very practical. To win the lottery we would need at least many hours.
Also, we would need to build the whole thing multiple times, one for each bit of information.
How to operate the time machine:
Turn on the particle emitter and look at the screen. If you see an interference pattern, write down a 1, otherwise a 0.
This is the information that your future you has sent you.
Repeat this process with the other time machines for more bits of information.
Then wait the time which corresponds to the path length (maybe send in your lottery numbers) and then (this part is very important) make sure to flip the switch corresponsing to the bit that you wrote down, so that your past you receives that info in the past.
I hope that helps :)9 -
So, Postman requires you to create an account on their systems to... lemme check...
Perform HTTP requests locally.
I need to create an account to perform HTTP requests.
And the whole dev community is looking at this and say "yeah ofc it's perfectly reasonable"9 -
Questions in job applications have become a fucking joke.
I'm done with them, from now on to stupid questions I'm only answering in same fashion.5 -
What do you do when you need good solder, but you can’t get EU/US/Japanese stuff where you live? No, you don’t buy Chinese. You buy ПОС-61, together with 500g of pure rosin, made in Smolensk, Russia.
The recipe and the supply chain didn’t change since the Soviet Union. They arrived today with the order number of, I kid you not, 666, and the set costed me $9 for 100g of solder and 500g of rosin. That rosin combined with ethanol gets you ФСКп flux that will last a lifetime. It does the job and doesn’t require cleaning.
Yes, some Chinese solder and flux are better, but I didn’t find a single AliExpress shop without at least one review telling that the thing they’re selling was fake. And you can be damn sure that if a Chinese listing says that there is 100g of solder, it will be 98 grams together with the spool and paper.
Soviet stuff is predictable. It says 100g, but weights 119g with the spool. If it says Sn61Pb39 that melts at 190℃, it will be exactly that, every time. And if it was good enough for Soviet tech, it’s good enough for my DIY endeavors.
And yes, it flows like syrup, and after it cools down, it shines like jewelry.
(can't upload pics bc pics are dead again!)3 -
Scared Christians like to say “God doesn't make mistakes” when discussing trans people. Well, you're right: God doesn't make mistakes, so he made me trans to test your ability to love.21
-
A couple fucking brutal, merciless dungeon moments.
So first, we were having a chill kind of session. Throwing lots of jokes and shit, and I rolled with it. The baddie for the day, I felt inspired, and named him Fawq El-Fuqer, which yes, is very unfortunate.
Anyway, we avoid his goons and reach his impenetrable fortress of chronic masturbation, and it goes as well as you think. The rogue says hey, we gotta get him with his pants down (pause) literally. The cleric is skeptical at first, but she comes around to it.
And so we do it. I spin this tale of a man who's got a schedule tighter than his fucking asshole. El-Fuqer meticulously plans his shits, he makes it a whole ritual, even gives it a special name: Mud O'Clock.
We wait for his alarm to ring, and spring into action while he's taking a fat stinking fucking dump. The warrior kicks down the bathroom door and corners El-Fuqer while he's on the shitter, demanding satisfaction for their past romantic involment that's been strongly been hinted at, you see, she said Fuck the Fucker and I, that's history. And that's enough for a subplot if you ask me.
So where was I? Ah, yes, the rogue bursts in through the window shouting out "Mud O'Clock MOTHER FUCKER!!" and we immortalize the moment in the finest silks. The wizard then does a little Bane impression for some reason and a multitude of loud 'plops' are heard as El-Fuqer evacuates the entire content of his putrid guts.
He gets roughed up a little, you know nothing like interrogating someone after they nearly shit themselves to death. We reveal some oooh so unexpected plot twist about a portal to goddamn hell and it's like well, crap, we gotta do something about that. So the wizard and the rogue leave to give the warrior and El-Fuqer some, ehem, space to settle their score.
What followed was the most unexpected, most brilliant part of the whole session. She didn't just execute him in a brutal, gruesome manner, no, she went full fucking throttle. Forced El-Fuqer to eat his own cock and balls while sewing his ass shut, then had a bowl of bull testicle salad to drop a montanious fecal cake of biblical proportions upon his face.
Believe it or not, we made it into an emotional moment. Because everyone was shocked by how brutal the affair was. Warrior had a mental breakdown like, uuuh, I'm becoming the monsters I swore to fight ooh no. She starting shaking and crap, ran away and hid in an alley to weep, it begins raining and it's getting very dramatic, so I cook up some spirit of sorrow that goes in and helps her face her fears and shit through the power of friendship or whatever.
Moving on to second moment, this is shorter but I like it best. The cleric and another two extras went to an old shrine to try and prove the wizard wrong about his denial of prophecy. Thing is, they did the ritual wrong. And I'm usually very forgiving but I was feeling nasty after the whole sowing of the asshole thing. So I'm like, uh, I gave you fools VERY PRECISE instructions on how to perform this ritual, and you just did some wacky prayers to the moon nonsense, that's idolatry in-universe and out-of-universe too (depending on who you ask).
So I said fuck it, you guys had it coming. I whip out immortal ten-thousand year old elder sorceress bitch guardian of the holy sphincter, and it gets real pretty fucking quick. She's got sanctified heavy plate armor, blue fire torches coming out they fucking pauldrons, argent greatsword of anal judgement plus infinity, all the juiciest shit.
Anyway, the sorc descends from the sky in a pillar of azure flames and is like yo, drop that idolatrous shit right now or I'm gonna kill you all. They mistake her for angel or some shit, and are like hey chill, we're the good guys. But the sorc doesn't give a shit, and she says shut the fuck up or I'll send you to the Night Eternal, bitch.
I dunno why but the cleric and the other two extras don't get it, so they insist with the whole heyyyy we are not idolaters, we're your friends, we are questing for the mandinga mandango mcguffango. So she bisects one, breaks the neck of another, and decapitates the fucking cleric. It was awesome.
So what did we learn? idk, don't plan your dumps and don't pray to the fucking moon if you're standing on hallowed ground. *****9 -
It was at this moment NoToJavaScript understood,, he fucked up by updating a perfectlly working Linux server.2
-
Mind Blown...
So I was in a meeting with another dev talking to a customer. He instructed the customer to open a command prompt in Windows. Then to use the SSH command. In my mind I was assuming he had told the client to install SSH beforehand. Later I started thinking about it and did a search. Apparently Windows 10/11 have a version of OpenSSH installed by default. I had used Windows 7 in the past and always installed git shell to get this. So in my Windows 10 I did the same thing. git shell also supports aliases and other nice *nix like scripting features. So it is always a win.
So hear I am realizing SSH is installed by default on newer windows systems. Like damn, I never thought I would see the day. I think I still prefer git shell, but having SSH by default is nice to know. I know they got the subsystem shit to get Linux. But not everyone wants or needs that.
I probably should learn what is in Windows these days. lol. I mean, besides malware.3 -
I'll keep on going about my vacation.
Went down the piste from where I took the picture, usually takes half an hour on average, I took less than 15 minutes.
I'm a tiny bit proud of myself :)16 -
If you want a terrifying name for your metal band, don't call it “Whispers from the Abyss of Despair” or “Through the Veil of Darkness and Desolation”.
Call it “Surgery Robot From Temu”.2 -
What happened to SliTaz was so unfortunate. It's old (2008, latest release happened in 2025) and very lightweight.
It's also half-abandoned and running out of steam. 2022's donation campaign only raised 263 dollars.
It's community page (https://scn.slitaz.org) is defaced. It's Twitter (https://x.com/slitaz) is suspended.
This distro is really unique. It's not just Openbox plus Ubuntu. It's near and dear to my heart. If you can, please give it some love. -
Years ago, I joined a company making games for handheld consoles.
Because a game's audio needs to be tested, too, I connected earphones to the console so that:
0. I wouldn't bother others w/ the sounds coming out of the console.
/* !Everyone wants to hear that crap. */
1. I could hear the sounds better.
PM: * Enters the room. *
Me: * Focused on testing the game. *
PM: * Walks up to me from the side, starts talking. *
Me: * Focused on testing the game. *
PM: * After approx. 30 seconds of complete lack of response from me, kind of irritated, knocks on my desk to get my attention. *
Me: * Take out the earphones. *
Oh, hi, how can I help you?
PM: Haven't you heard a word I said?
Me: Well, no. I am testing the game, including the audio.
PM: You need to pay attention to what's going on around you.
Me: Testing audio is one of my responsibilities. I am using earphones because of the reasons [0-1].
PM: Even still, you just need to pay attention to what's going on around you.
PM: * Finally explains the reason for him bothering me, then goes back to his lair. *
Moral of the story: Fuck being good at what you do && knowing your responsibilities.
When PM wants something from you, you better give him the attention he wants.
/* The expectation being I grow an extra pair of eyes && ears, so that I see the guy coming && am prepared to listen to him whenever he wants something _while_ doing the best job I possibly can. */13 -
I didn't become a developer to be legacy's bitch. But we're all legacy's bitch.
I want to roam free. I want to piss in the rain and sing at strlen. I don't want to be in corporate meetings anymore.
I don't want to contort my ideas and good intentions to fit legacy's ugly painting.
I want to be free.
Please let coding be fun again.
I process more tickets than a brothel car park ticket machine8 -
bevy_reflect is literally the best thing since sliced bread
It allows you to do type and value reflection IN RUST!! A compiled language with dynamic runtime reflection of values. And with custom annotations on fields and structs too like
#[derive(Reflect)]
#[@SomeDataIWantToAttach {x: 20, y: 10} ]
struct MyComponent {
#[reflect(@MyCustomRangeAnnotation(0..10))]
pub num: u32,
}
It is nice. It is so nice1