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
Feed
All
Post Types
- Rants
- Jokes/Memes
- Questions
- Collabs
- devRant
- Random
- Undefined
Cancel
All
-
what brothers me is the experience requirements like motherfucker, if I had all those years I'd be retired by now. you gov? wanna cut my pension is it?5
-
So there I was, maintaining our rock-solid Java 7 codebase, older than this Gen Z intern who still thinks floppy disks are 3D-printed save icons.
First day in, he’s like, “Bro, let’s rewrite this in Next.js! Microservices! Serverless! AI!”
Son, this code has been running longer than your TikTok attention span. It doesn’t need scaling, it needs to keep working.
But nooo, he wants TypeScript. He wants to Dockerize a Hello World. He saw a YouTube tutorial and now thinks Java is dead.
I asked, "Why do we need microservices?"
Silence. Blank stare. You could hear a single thread in our monolith peacefully executing a transaction.
Then he mumbled something about "scalability" and "modern architecture"—like we’re running a billion-dollar SaaS, not a POS that’s been happily running since the Nokia ringtone era.
Microservices? Buddy, our biggest spike is the Sunday brunch buffet reservations when the retirees remember they have grandkids. Sit down.7 -
OperAtIoN NoT PerMitteD.
I'll chown it harder than the Gulf of Mexico.
Edit: remote storage very bad for many environment files. For blobs it's fine.2 -
@retoor I did it I FUCKING DID IT. I CRACKED THE COWDZ.
HAVEN'T SLEPT IN ALMOST THREE DAYS.
BUT I FED THIS TO A LOBOTOMIZED BOTII.
IT WAS ABLE TO RUN MY RULESET.
WELL, A VERY LIMITED VERSION.
BUT STILL.
PRO VIBES-ORIENTED PROGRAMMING.
IN MARKDOWN.
PSEUDOMARKDOWN.
what?
WHAT??!!!!
OH YEAH.
BEHOOOOOLLLD THE POWER OF CRACK:
```
# Definition of Basic Terms:
- Actor;
· * "An Actor is a character or entity actively or passively participating in the game";
- Action:
· * "An Action is whatever an Actor does during their turn";
· * **IMPORTANT: "In addition to taking an Action during their own turn, an Actor can opt to prepare a Re-Action to activate during another Actor's turn, *if* they have enough SP/MP to do so"**;
- Signa:
· * "A Signa is an in-game effect that describes an Actor's Actions and Re-Actions";
· * "In-game effects can only alter values within the Actor->Status dict";
· * Signa->Caster = the Actor that activated the Signa;
· * Signa->Target = the Actor that is affected by the Signa;
· * **IMPORTANT: "A Signa can be cast 'OnSelf', that is, the Caster can choose to cause the effect on themselves"**;
---
# Actor Attributes:
- Actor->ReadOnly:
· * **IMPORTANT: "ReadOnly attributes represent an Actor's natural advantages and cannot be changed through in-game effects"**;
· * **IMPORTANT: "The purpose of these immutable attributes is determining the base values for game formulas"**;
· * "Actor->ReadOnly is a (key=>value) dict that stores the Actor's innate and immutable attributes";
· * **IMPORTANT: "These bonuses are fixed and cannot be altered by in-game effects"**;
· * "Each key corresponds to a specific game formula";
· * "Each value is a constant signed integer that represents a modifier for the associated formula";
- Actor->Grit:
· * Actor->ReadOnly->{"HP->Max"} = 8+(Actor->Grit*2);
· * "Actor->HP->Regen is not affected by Grit";
· * Actor->ReadOnly->{"Strength"} = Actor->Grit*1;
· * Actor->ReadOnly->{"Resist"} = Actor->Grit*1;
- Actor->Wit:
· * Actor->ReadOnly->{"MP->Max"} = 4+(Actor->Wit*2);
· * "Actor->MP->Regen is not affected by Wit";
· * Actor->ReadOnly->{"Intelligence"} = Actor->Wit*1;
· * Actor->ReadOnly->{"Dexterity"} = Actor->Wit*1;
- Actor->Charm:
· * Actor->ReadOnly->{"SP->Max"} = 1+(Actor->Charm*1);
· * Actor->ReadOnly->{"Perception"} = Actor->Charm*2;
· * Actor->ReadOnly->{"Charisma"} = Actor->Charm*2;
- Actor->Spirit:
· * Actor->ReadOnly->{"Arcana"} = Actor->Spirit*2;
- Actor->Faith:
· * Actor->ReadOnly->{"Defend"} = Actor->Faith*1;
· * Actor->ReadOnly->{"Heal"} = Actor->Faith*1;
· * Actor->ReadOnly->{"Bless"} = Actor->Faith*1;
- Actor->Hatred:
· * Actor->ReadOnly->{"Damage"} = Actor->Hatred*1;
· * Actor->ReadOnly->{"Curse"} = Actor->Hatred*1;
---
# Diceroll Definition:
- rand:
· * "A pseudo-random number between 0 and 0.99";
- roll->dX:
· * roll->dX = truncate (rand*X);
---
# Basic Formulas:
- Actor->Status:
· * "Actor->Status is a (key=>value) dict that stores the Actor's current status effects";
· * "These bonuses are temporary and can be altered by in-game effects";
· * "Each key corresponds to a specific game formula";
· * "Each value is a signed integer that represents a modifier for the associated formula";
- Actor->Damage:
· * let base = roll->d4;
· * let X = Actor->ReadOnly->{"Damage"};
· * let Y = Actor->Status->{"Damage"};
· * Actor->Damage = base+(X+Y);
· * "Result can be negative if (X+Y) is less than -base";
---
# Regeneration Rates:
- Actor->HP->Regen:
· * const base = 0;
· * let X = Actor->Status->{"HP->Regen"};
· * Actor->HP->Regen = base+X;
· * "Result can be negative if X is less than 0";
- Actor->MP->Regen:
· * const base = 1;
· * let X = Actor->Status->{"MP->Regen"};
· * Actor->MP->Regen = base+X;
· * "Result can be negative if X is less than -1";
- Actor->SP->Regen:
· * let base = Actor->Status->{"SP->Max"};
· * let X = Actor->Status->{"SP->Regen"};
· * Actor->SP->Regen = base+X;
· * "Result can be negative if X is less than -base";
---
# Default Signas:
- Movement (Signa):
· * Movement->Cost->SP = 1;
· * Movement->Cost->MP = 0;
· * Movement->Duration = 1 turn;
· * Movement->AreaOfEffect = 4 tiles;
· * "Allows the Caster to move the target up to 4 tiles distance";
· * **IMPORTANT: "This Signa does not allow the Caster to avoid obstacles"**;
- Attack (Signa):
· * Attack->Cost->SP = 1;
· * Attack->Cost->MP = 0;
· * Attack->Duration = 1 turn;
· * Attack->AreaOfEffect = 1 tile;
· * let dst = Attack->Target;
· * let src = Attack->Caster;
· * dst->HP->Current -= src->Damage;
· * **IMPORTANT: "This Signa never misses"**;
```14 -
Something managers need to understand:
Developers are not a bag of M&M's to pick from and arrange them on the customer's table, neither are they LittleBits or LEGO pieces to click together for the customer to play with.
We can't possibly satisfy every client skill need. We need time to learn, and not by fudging around with the tech in production or similar.2 -
I can't belieeeve that in some environments, developers are judged and rated by how they behave. I think they should be valued on skills, not on how 'cool' they project themselves as.16
-
What do you do if you are untrained in thinking logically and you currently are naturally bad at thinking logically?
Lacking this skill brings many problems: bad at understanding logical models, data structures, databases, collections of data, solving bugs, etc. Pretty much all the real work in Software Development. I heard the solution is mathematics, e.g. approximation theory, graph theory, set theory, etc, that would help you get a better vision and grasp on these things.
Has anyone been in this situation? Everyone around you knows by nature how to 'see' solutions to problems in their head, but you on the other hand, don't.12 -
Saw F150 truck with license plate that said: 10X4X
I imagined a 4x4 truck with 10 tires on each wheel. Pretty sure its not a plate for a 10X4X dev or anything. -
forget the moon landing
did you know viruses don't exist: https://rumble.com/v6rcies-viruses-...
I literally never blew my mind so hard before. even took this woman two interviews to swallow it. absolutely nuts. was reminded of this again today
first time I saw this guy I was like... holy shit, my plants never get viruses (despite having cells with DNA which should get infected by them...). and I was looking at bacteria in college cuz I was doing a medical degree. humans are as stupid now as we ever were in other eras. bloodletting all over again12 -
Being asked to do a passthrough shader for an adult content media player.
Them selling it as it being like the fucking newest invention.
Bitches. I was doing that back in 2018.
Still, good money for literally 60 minutes work...9 -
An important lesson I learned:
When upskilling yourself and taking notes, make sure you do it on your personal laptop because when the time of contract termination arises, you will have to sign a waiver that you can't keep any of the data you saved on company infrastructure (including cloud). And then you lose all your notes and possibly knowledge. lol.
I find this concept so annoying. Even in college they said that anything you write down is property of the university.11