Joined devRant on 6/27/2018
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
I. FUCKING. HATE. MOBILE. DEVELOPMENT.
I already manage the data, devops, infra, and most of the backend dev.
We had a mobile guy. He was great. I never had to think about it and kept moving quickly on my work. #SpecializationOfLaborFTW
He left. Why? Because they wouldn't give him a small raise despite being one of the best mobile engineers in the firm. WTF.
I made the mistake of picking up just enough slack on this workflow in the interim such that I'm, apparently, the fucking god-damned release manager, fixer of pipelines, fixer of build configs, fixer of anything where someone just needs to RTFM for a half-hour to not fucking break things.
Now, 8 months later...and, apparently, Fortune 500 companies are too fucking god-damned cheap to pay for someone who actually knows WTF they're doing for a very reasonable thing to have at least one dedicated set of eyes for.
I never wanted to be a mobile dev.
I never will want to be a mobile dev.
And I certainly don't want to manage your HALF-FACE-FUCKED detached expo configs.
There's a reason I never intentionally involved myself in mobile. All the way down, it's just shitty cross-compilation, transpilation, dependency-hell, brittle-as-fuck build processes so we can foot-gun and mouth-gun react-native and expo and babel and whatever the fuck else cargo-culted horseshit into the wild.
And why? What's the actual fucking root cause? The biggest white elephant that ever fucking elephant-ed? It's because Apple and Google decided to never collaborate on a truly-native cross-platform SDK--where engineers could write native code that compiles to native binaries that's simply write-once, run-everywhere. They know they could have done that, and they didn't. So what'd they get back? Expo--a too-cleverly-designed backdoor/hack--more-or-less a way to circumvent the sane release process software has usually followed: code -> executable -> deploy. Or code -> deploy (for interpreted langs). Expo's like "keep your same executable, we're just gonna to do updates by injecting new code into it whenever we want". Didn't we learn anything with web? Shit gets messy real quick? Not to mention: HEY EXPO, WE WERE ALREADY BUILDING NATIVE APPS, YOU SHORT-SIGHTED FUCKS. THANKS FOR LURING OUR CTOs INTO FORCING EXPO DOWN OUR THROATS W/ THE IMPLICIT (BUT INCORRECT) TOO-GOOD-TO-BE-TRUE PROMISE THAT WE CAN HAVE WRITE-ONCE, RUN-ANYWHERE WITHOUT ANY BUY-IN OR COOPERATION FROM THE ACTUAL TARGET PLATFORMS.
And, we just, like, accept this? We all know it's garbage engineering. The principles we learned in the classroom aren't just academic abstractions--they actually yield real-world results--and eschewing them yields real-world failures. Expo is tightly-coupled to high-heaven, with leaky abstractions six-ways-to-christmas, chock-full of foot-guns, and fails the most basic test of quality: does it, "just work?"
Expo is fucking shameful and it should fucking die. Its promises are too bold, its land-mines too many, its future-proof-ness is alway, always, always questionable as fuck and a risk to every project that uses it.
You want a rant? This is my fucking venue, 'tis not? Well, then this is a piss and vinegar rant straight from my blood-red, beating fucking heart:
EXPO FUCKING SUCKS. AND IF YOU'RE A FAN, YOU FUCKING SUCK TOO.28
Attend all the meetings, they said. They're super important, they said. You'll get more code done if we hyper-report on progress they said. The bugs are piling up and we need to have even more meetings, they said.
STOP SAYING THINGS AT ME AND LET ME FUCKING CODE YOU INSUFFERABLE CUNTS.2
String good =
"I'll never give up type systems!!"
+ " Do you hear me?!"
+ " Never!";
"Can't believe it made it all the way into prod."
% NaN + 3 / '11'
It's only August but I already know what I'll be thankful for come Thanksgiving:
1. Our next president.
2. Integration tests.1
Why are you paying me to architect your new stack if you're just going to mandate that I use Guice and Jersey "because that's what you're using already"? I'm sorry. You're wrong. Spring Boot is not a "dying technology". I'm not going to build you a servlet from scratch. Get fukt.1
Fuck companies that want you to build new systems that are a superset of what they already have when they can't even tell you what they have now. Fuck you with your bullshit, nonsensical, self-contradicting, third-assed diagrams--some half-UML, half-clip-art, half-pie-chart drivel. If you're the CTO of a company and you want me to think long and hard about rebuilding your distributed systems, you can think long and hard about expressing what you already have. And NO: a verbal explanation pow-pow WebEx over your DSL connection with your protege that mumbles worse than an Atlantan rapper doesn't count as fucking "knowledge transfer" of your fucking architecture, FOR FUCKS SAKE.