Details
-
AboutFree and Open Source Software FTW
-
SkillsOS: Fedora, Shell: Zsh, IDE: jetbrains IDEs Languages: Python 3, Java, Kotlin, shell Learning: Go, Rust, Lua, Android
-
Github
Joined devRant on 11/25/2016
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
-
Previous front end dev apparently was not aware of padding and margin.
The html is riddled with and <br>
Shoot me now13 -
/*************
* adds 1 to i
***************/
i = i + 1
Everyone has seen at least one comment like this.6 -
I am fed up working with unskilled software developers. Or to be more specific, working with people who have no idea of sofware architecture.
Most people I've worked with have simply no idea what they are doing in the broad picture, they can only follow patterns they see and implement their feature in the same way. They can't think about the abstract concepts which should be the foundation of the project.
They fail to write unit tests which are maintainable. They write one fucking test per method which is testing 50 things at the same time, making it often impossible to understand what is being tested.
They think putting stuff in private methods makes their class better and is some kind of separation of concerns.
They write classes and afterwards create interfaces for these classes named {Class}Interface, shoving all the methods into that interface. They think it's good design to do so.
They are unable to think about the reasons why things are done the way they are done and that you don't do stuff for the sake of doing stuff, but to achieve certain goals like interchangeability.
They don't undestand how to separate business logic from the application code.
They have no sense for naming things beautifully. They don't see how naming things is a major part of good software architecture.
They get layer concepts wrong and then create godlike {EntityName}Service classes, which do everything related to a particular entity.
They fail to shape the boundaries within a software project, entangling stuff which should live in individual modules.
All I want is to work in a team with professionals.2 -
Licensing is so freaking weird and stupid.
I mean, I just forked this repo with an Apache license, so I could update a .json file.
"You must cause any modified files to carry prominent notices stating that You changed the files"
Plain JSON allows no comments.
I'm going to jail.30 -
How most recruiter emails go these days:
- Hiring multiple senior lead engineers <— That’s me
- 180k+ <— I like it.
- Must have experience with AWS, GCE, AND Azure <— Okay, you’re looking for a unicorn
- Kubernetes expert
- Experience with Rust, Node, and .NET <— What type of fucking company are you?
- Must be on call and 25% travel <— Why?
- Preferred: experience with printer repair, Raid Arrays, CAT5, and Microsoft Access <— Y’all fucked up somewhere a long time ago. I’m out.16 -
@Apple iPadOS an iOS teams: you puZies.
You release one buggy iOS / iPadOS after another, each piling on features and bugs, without fixing crowd documented long standing defects.
But what really pisses me off is when you don't have the balls to own up to your mistakes. This is at least the 3rd time you have re-released an iOS / iPadOS update under the same version number. This time it is 14.5.1
I have iPadOS 14.5.1 installed and the iPad is now telling me I need to update to 14.5.1. Just own up to it, you released buggy shit and you need to release another bug fix days after... call it 14.5.2. Call it like it is and we respect you. Try to hide it and you lose our respect, you pussies.
If Microsoft did one thing right, they defined the release sequencing:
X.Y.Z
Changing X means rewrite the manual it is so new and improved (🖕🏻 you Adobe and FileMaker)
Changing Y means it is an update with more features than bug fixes but not a generational change that constitutes a rewrite of anything (🖕🏻 you macOS team for bastardizing with 10.X.Y)
Changing Z means you fixed your stuff, we respect you for owning up to your mistakes.
Man-up Apple, grow some balls and stop confusing people with trying to cover up your screw ups. It's all about the Z.3 -
I am loving this week’s topic.
So many people see their alternate profession as simply following passion and becoming an artist.
The art of teaching, or making food, or producing music, or making things, and so on..
We are so different in our artistic capabilities yet so similar in our professions.
Divided by lakhs of factors, united by love for ranting.
Let the passions not die out!
Cheers! 🥂5 -
Taught by managers who are too eager to hold "meetings which could have been emails", developers have now fully succumbed to holding "webinars which could have been a readme".7
-
CEO "If you make costs to build a home office for covid, please be aware that you can fully declare your bills, and you'll retain ownership over the ordered goods. Please all buy some good desk chairs and keyboards, so you can work ergonomically"
6 months later, CFO: "Bittersweet, why did you try to declare €35000? What are these invoices even? Concrete rebar?"
Me: "CEO told us to build a home office. I got permits from the town to dig a souterrain layer under my house. This is just for the foundation, the bills for drainage pumps, sheetpiling, geothermal heat exchangers, insulation, flooring, electricity and of course desk & chair will follow later"
CFO: 😳
(To be fair, I really did make those costs, but was just trolling by uploading all the material bills)15 -
I need a vacation.
I’m horribly depressed and burned out, every day for months has been a little harder than the last, and really doing anything at all is a monumental challenge, work or otherwise. Let alone working on the fucking screwdriver.
I told my boss last night and requested time off.
His response?
> Oh no, but the new screwdriver! We were all really really hoping to get it out by the end of the month!
I’m a crumpled wreck and all you care about is the fucking screwdriver that PRACTICALLY NOBODY WILL FUCKING USE? Seriously dude, go to hell.40 -
QA: When I open the app I get this strange error message that includes "No data connection could be established" near the start of it.
Me: I'll clean up how thats displayed, but the error means your phone doesn't have internet connection.
QA: No that can't be it, I do.
Me: You screenshot shows no WiFi or 3g / 4g symbols.
QA: No those are never there, please investigate.
Me: I have investigated and found that every other one of your screenshots had a WiFi or a 3g symbol. Example: <link>. Please check your connection and try again, i'll clean up the error display.
PM: Oh i've had an issue something like this before. We really need to show users an error screen. We can't just leave them on this screen with no error message at all.
Me: ... we have an error, thats what QA is complaining about, its not loading the text and displaying the error object.
Anyone else want to not pay attention and complain about something else that doesn't make sense? ... no? ... ok good, back to work then7 -
this fucking senior dev, just send the following messages:
pull development,
Did yarn install
now yarn dev does not work.....
BRO: READ THE FUCKING ERROR MESSAGE!
It's plain English!
Seriously wtf.2 -
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.27 -
So I told my wife one week ago: "Yeah, you should totally learn to code as well!"
Yesterday a package arrived, containing a really beautiful hardcover book bound in leather, with a gold foil image of a snake debossed into the cover, with the text "In the face of ambiguity -- Refuse the temptation to guess" on it.
Well, OK, that's weird.
My wife snatches it and says: "I had that custom made by a book binder". I flip through it. It contains the Python 3.9 language reference, and the PEP 8 styleguide.
While I usually dislike paper dev books because they become outdated over time, I'm perplexed by this one, because of how much effort and craftsmanship went in to it. I'm even a little jealous.
So, this morning I was putting dishes into the dishwasher, and she says: "Please let me do that". I ask: "Am I doing anything wrong?"
Wife responds: "Well, it's not necessarily wrong, I mean, it works, doesn't it? But your methods aren't very pythonic. Your conventions aren't elegant at all". I don't think I've heard anyone say the word "pythonic" to me in over a decade.
And just now my wife was looking over my shoulder as I was debugging some lower level Rust code filled with network buffers and hex literals, and she says: "Pffffff unbelievable, I thought you were a senior developer. That code is really bad, there are way too many abbreviated things. Readability counts! I bet if you used Python, your code would actually work!"
I think I might have released something really evil upon the world.29 -
I'm currently working front end at my company, and am applying for a backend internship within the same company.
Would it be in appropriate for me to comment a block of code with
# I know there has to be a better way to do this but I haven't found it yet
In my code challenge for the application?
Basically I found a clumsy and ugly solution but I want them to know *i know* it's clumsy and ugly and if I had more time I would come up with something better6 -
I once worked until 8am to get a demo ready for a client of the client. I knew the client was a bit thick, so I made some comprehensive video demos and sent them over to him, to save him trying to demo it himself. I wake up at 11am with him screaming down the phone at me:
“It doesn’t work, none of it works!”
“What do you mean?”
“I go to login and I can’t enter anything.”
“I haven’t sent you anything to log into...wait, are you trying to log into a video? Tell me you’re not trying to log into a video of a login page.”
“Uh...oh hang on, it just worked. Ok no pr-“
“No wait, what do you mean it worked?”
“I logged in fine.”
“It’s a video. You can’t log into a video.”
“Uh...alright, bye mate, thanks!”
The moral of the story is: never assume any level of intelligence on the part of a client, even if they exhibit signs of it at first. If they are paying you they will forget how to tie their own shoelaces.10 -
Do you all remember the dark ages of DVDs when honest customers made a worse deal than pirates because legitimate media was packed with unskippable advertising and PSAs about piracy?
Well, looks like video game publishers are on their best way to recreate that mistake. Why do games nowadays need to be forcefed with storage-consuming, unappealing and technically nonessential launchers that all look and do the same? And why for God's sake do very old and offline-only games need to go through this sodomizing procedure?
prime example: GTA 3 was released back in 2001 and capable of running on Windows 98SE/2000/XP. There's a Steam-only release out there that requires you to install community-made patches if you want the game to run smoothly on modern hardware. Steam itself as a requirement for this atrocity to even launch the executable dropped support for XP more than two years ago. If you'd wanted to play this game on original hardware, you would rely on a real DVD that was made back then, but there are even better options if you know what I mean.
When a multimillion-dollar industry relies on communities of volunteering enthusiasts to make its products work, it won't receive a trace of my empathy when customers and non-customers alike try to download their games from more reliable and honest sources.2 -
Interview for a new job
Team leader: well yes, we have this webapp with Angular, it's a bit convoluted so we need help working on it
Me: sounds good enough, I have no experience with Angular though, I'll need to learn on the road
Team leader: no worries :)
A couple of weeks later, after joining the team
Me: wait a moment, that's not Angular you got there. That's AngularJS, it's like 10 years old
Team leader: 😊
Bruh11 -
November brings .Net 5, for anyone who cares about that, and after listening to my husband watch Ignite "reveal" advertising container, and all the enterprise virtue signaling therein, I am now to the point where the only thing I can think is "Fuck you Microsoft, and Fuck .Net 5."
During a 30 minute speech, the director of the dotnet platform commits the following flagrant faux pas:
1. Introduces tons of visual studio easy buttons for shit we already do, no mention of VS code support.
2. Shows tools that anyone other than the most insular enterprise mouth-breather have been using for no less than 6 years
3. Gives absolutely no credit to the Open Source community projects backing the features he's showing
4. Shows nothing but mono-cloud integration, makes no mention of any other cloud targets for new features
5. Acts like "deploy your app the cloud from IDE" is something anyone should be doing in 2020
6. Showed an API repl that is pathetic compared to httpie when it was in alpha
7. Showed blazor loading from cache and said "Look at how instantaneous it is" (if you ignore the 5mb of cached payload it took to run the hello world demo)
8. Shows Project Tye, presenting it as a new groundbreaking xyz, fails to mention helm already exists
What's absent is what is most offensive:
- acknowledgment of community contribution
- no linux/mac tools, entirely windows-centric (which jives with my prediction of second-class citizenship for the people who contributed to .net core the most)
- cross-cloud capabilities
- bash/zsh (again with the untermensch relegation)
Fucking microsoft back to their old bullshit.24 -
So I just installed Android 11 on my OnePlus 6T with the 18.0 release of LineageOS. Screen recorder built-in that can finally record system sound and play it too (there used to be a Magisk module but that couldn't play system sound while recording it, everything else is just through the mic) and some doodads like the selection for where to blast your music into has been moved more into view... Epic.
And then comes the Scoped Storage. Oh boy were the Android devs right to hate the guts out of it. It's so fucking slow. Seriously, on that exact device with Android 10, blazing fast. That storage is far from cooked. On Android 11.. have a directory with a thousand or so files, and it takes 5 goddamn seconds to open the directory with them in it. And even with external file managers that you give storage access like usual! Except when you root your device and use a root file manager, then it's fast again. Because that's using the shell instead.
I never thought I'd be able to say this to be honest. The shell is faster than the native tools. Let that sink in for a moment. The shell is faster than the native tools. How on Earth did Google think that this is tolerable?! For security, are you kidding me? Yeah I'll just use the root account for fucking everything in all that security, to have a functioning system!
Android 10 was also initially planned to have this terrible storage system, but due to developer backlash, Google waited a release and it was optional there. That wasn't just time for developers to adapt to Scoped Storage. That should've also been time for Google to actually make it usable.8 -
Isn't life not confusing enough? Introducing Google's solutions to some of them..
#NarcissisticDecisions24 -
Microsoft motherfucking Windows. (even though its an OS, it's software)
It's always brought me tons of issues and I'm starting to think that Microsoft built in some AI system which identifies when a Windows disliker uses it and starts acting weird/producing issues since (I have to use windows for some stuff at work) I'm always getting issues that nobody else gets in my team, and I've had this since I started using it at all.
And the fact that it has a frontdoor (I don't even think this is a backdoor anymore) built in... I mean, I definitely did NOT give consent to reinstall Microsoft Edge and I don't want it either (it appeared without any updates).
Then, you cannot fully disable telemetry anymore which is kind of a hard requirement for my job, most of the time.
Yes, Microsoft (and) Windows can go die in a fucking fire.11 -
Whoever decided to put a "No to all" button in Notepad++, I wish you and your family a healthy and wealthy life. I hope you will get a pay rise and be successful in your career.
- Windows OS user after a long while. Closing a lot of files was a nightmare back then.17 -
Just had an argument with someone who thinks (micro)python is the way to go for embedded projects. Cause a lot of engineers are terrible at using C/C++. And their argumets for optimisation and granular controll over what the processor does is not necessary.
Its utterly wrong to push technologies into areas for which they werent originally designed for. We've seen it alot with websites lately and I dont like that embedded is heading the same way!18 -
There was a time in Windows 95, where during login, you could just press cancel and you were logged in without the need of a password.8
-
Phonies: "By doing X for Y number of years and reading things such as blah blah blah"
Kings/Queens, silverback devs, rockstar engineers: "I never got good."