Details
-
AboutSysadmin of humble beginnings gradually becoming a reputed entrepreneur.
-
SkillsPuppet, lua, python, c++, bash, LinuxWizardry, documentationEnforcerDominator, pixelfucker
-
LocationPlanet earth
-
Github
Joined devRant on 5/14/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
-
tools people REALLY wanna use are written like garbage
and also very active, in terms of tickets and pull requests
but the code is overly complex for no reason and a mess, turns out
I looked at the codebase and I have no clue what's going on
then found the API it's calling and I'm sitting here going "Jesus fuck I could've just wrote my own"
it's actually really strange, I see this pattern often of tools tons of people rely on and want to use but they're coded horribly, tons of bugs, and the code is entirely incomprehensible. though all the low effort pull requests is a new one I guess, generally there's no activity or the maintainer is just gone (maybe it's AI?)
anyway then I looked at the API it's wrapping and I'm confused why this library has such shit usability, and furthermore why the hell the code was like that cuz I read that first for about an hour and just kept going in circles. bruh what
guess I'll find out tomorrow if I'm signing up for unanticipated complexity or these people really did mess this up3 -
Telling a web developer to use Divi, WP Bakery, or any similar WordPress page builder is like forcing a plumber to use your little kid's kindergarten toy tools to rebuild your bathroom.
Those tools don't even work! Divi: "your save has failed". Bakery: saving an element's styles will randomly mess up the whole WYSIWYG page preview. Gutenberg: you can write HTML, but I won't accept it. Let's attempt block recovery so I can destroy it completely.
It feels like trying to use PowerPoint to develop a website. Who's the target audience of this kind of crapware and how are they supposed to use it? -
Why do otherwise intelligent people think chatgpt code is a good idea if they don't know what the code does?
I am a bit in shock by this prospect. I asked about some lines of code that was using some templates I had not used before. The response was "I dunno, chatgpt." This person is really really smart. Yet deploying code that they don't understand completely. This seems dangerous and irresponsible. I ended up rewriting the function I had questions about. It was significantly shorter and didn't do a fuckton of copying strings around.
WTF is wrong with people? Are people afraid to think? Now I want to get out before this kind of shit becomes the norm.5 -
oh dear Lord, the live spaghetti stopped working this morning.
ColdFusion endpoint throws a 503, fuck knows why, entire front end demon spaghetti web app is stuck in a loading screen.
Whoever architected this application is an idiot.7 -
I’m on this ticket, right? It’s adding some functionality to some payment file parser. The code is atrocious, but it’s getting replaced with a microservice definitely-not-soon-enough, so i don’t need to rewrite it or anything, but looking at this monstrosity of mental diarrhea … fucking UGH. The code stink is noxious.
The damn thing reads each line of a csv file, keeping track of some metadata (blah blah) and the line number (which somehow has TWO off-by-one errors, so it starts on fucking 2 — and yes, the goddamn column headers on line #0 is recorded as line #2), does the same setup shit on every goddamned iteration, then calls a *second* parser on that line. That second parser in turn stores its line state, the line number, the batch number (…which is actually a huge object…), and a whole host of other large objects on itself, and uses exception throwing to communicate, catches and re-raises those exceptions as needed (instead of using, you know, if blocks to skip like 5 lines), and then writes the results of parsing that one single line to the database, and returns. The original calling parser then reads the data BACK OUT OF THE DATABASE, branches on that, and does more shit before reading the next line out of the file and calling that line-parser again.
JESUS CHRIST WHAT THE FUCK
And that’s not including the lesser crimes like duplicated code, misleading var names, and shit like defining class instance constants but … first checking to see if they’re defined yet? They obviously aren’t because they aren’t anywhere else in the fucking file!
Whoever wrote this pile of fetid muck must have been retroactively aborted for their previous crimes against intelligence, somehow survived the attempt, and is now worse off and re-offending.
Just.
Asdkfljasdklfhgasdfdah19 -
I'm in a big fat fucking stinking rut, as in progress on this project has absolutely stagnanted.
Gonna rubber face your duck now **UNZIPS** excepts I don't have zippers, as joggers are the one true way; fake Adidas til I fucking drop.
Brain damage aside, I understand both how I've layed out the data and what I'm supposed to do with it. We have a virtual machine, an array of instructions and arguments for a given process within it, and we need to walk this array and map values to registers.
We also need to spill values inside registers to stack, IF they are required at a further point within that block. This also isn't terribly complex. We simply look forward in the array and see if the value is an argument to any instruction that *needs* this value to be loaded (ie, within a register).
So this implies multiple iterations; we need to better understand how one particular value is used throughout an F before we can make a final decision on how many registers and stack space are actually needed for the whole block.
Here's where it gets tricky. If there's a call, we need to be certain that the symbol being invoked has already been fully processed. Besides the obvious fact that recursion fucks me up, there's another matter: say a private method gets invoked by another private method. We can take advantage of this, by which I mean, sacrilege incoming so put on this toga.
Looking at the output for C compilers, it would seem this is not done in practice, I would assume because it's a pain in the ass. But when you have the guarantee that F will only be called internally, as that's what "private" means, there's two ways it can go:
0. It's well below the 13-20 cycle threshold, so you inline the fucker. No suprises there.
1. It's a more involved affaire, and invoked in more than one place, so you don't inline it. Codesize matters.
Recursion and [1] are the big deal things holding me back. Not because it's too hard, like I said this is kindergarten level abstraction. I'm just slow and fanatical, which is how I prefer to spell "constant obsessive paranoid delusions". I can see the potential optimization I can pull here, so I'm stuck trying to figure it out.
Idea would be, handling the register allocation and stack spill for an internal-internal (or deep internal; what we like to call a "guts" method) in synchronization with the *calling* processes. This is, fundamentally, violating all conventions -- but so under the hood no one will notice.
Let me give you an example. If we were to pass some value to a function, expecting to mutate it and get a different value back, in a lot of cases it'd be stupid to make an implicit copy by using two registers, one for input and another for the output. Dude, it's one cycle. Multiply it by a million, say sixty times per second, for every time you __needlessly__ make a copy of a value that we've already stated is mutable.
Clearly unacceptable. This is, in the strictest sense, everywhere in every single codebase. Premature micro optimization is the root of all goodness, God is great and praiseworthy. So how do we go about it?
Answer is I know and I don't know. By which I mean to say, this very thing I've done by hand. Assembly is fun. Now the issue is teaching a calculator how to do it. Not so fun.
There is a dependency chain between processes, as I believe I've kind of alluded to. I'm trying to make decisions on the side of the caller depending on the details of the callee, which is why recursion is rawdogging my soul. This is the same situation, it's inverting the direction of one or more links in the dependency chain, which makes no fucking sense.
And yet it does.
Brain, explain yourself.
How do *you* handle this without crashing?
Brain?
<<ME STEWPED; BEEP-BOOP>>
Alright then, that was a useless attempt at fuckery. Let's have a nap then, maybe it'll come to me in the morning. That's what I've been saying to myself for almost a month now.
Perhaps it is a hardcoded fuk.2 -
Me everytime before our daily meeting:
"Breath in Breath out ...
I am not gonna pick a fight with anyone today ..."4 -
I fucking give up, AWS is retarded. It's the worst piece of shit retarded fucking platform ever created and every fucking engineer that touched the code should have their fingers chopped off, shoved down their throats and then be beheaded.
I can't believe that this retarded shit is the "industry standard" for deploying anything ever. Every fucking page feels and uses as if it was fucking outsourced to a different part of india everytime. The fucking pagination behaves differently in every fucking service. Half of the new services just gave up and run on their own fucking thing, because presumably their own platform just couldn't even handle it anymore and fucking CloudFormation is the fucking kingpin of this entire retarded platform. Slapping and unslapping shit together unttil it fucking get's stuck in an unresolvable state because half the fucking services need 58 unrelated permissions to perform a simple delete.
Fuck AWS, Fuck Amazon, Fuck Bezos, Fuck the Cloud and Fuck this whole "Serverless" scam. I really truly wish everyone that had anything to do with making AWS a reality just drop dead on the spot right now so that we can forget that aws ever happened.10 -
TIL:
How to become root w/o having to provide a password:
unshare -rm
no go ahead and bind-mount your own /etc/hosts (or any other file/directory) w/o affecting the rest of the system!1 -
Haven't been here for a long time, kinda amazed I still had an account to be honest. There used to be a bunch of people I chatted with regularly on here, but my mentally ill self decided at some point to self sabotage (surprise surprise) and cut contact with almost everyone.
That said I've gone through quite a bit of therapy, which has definitely improved my outlook on life and allowed me to do some much needed self reflection. Has that made life better? Hard to say, but I like to think I've got a grasp on my mental health now, with the occasional relapse, because shit's a 🌈process🌈.
I'd like to apologize for the hurt I've caused some people here, you know who you are. My behaviour at times has been inexcusable. There's no sugarcoating it.
The past years have been a rollercoaster to say the least. Switched jobs multiple times. Went from doing frontend exclusively, to fullstack, then backend, and now engineering lead responsible for all architecture and infrastructure, learning a lot about myself and people around me along the way. Somehow I managed to get into a somewhat stable relationship, which is still a big WTF from time to time. The company I currently work for has had a metric fuckton of layoffs, just like the company I worked for before that. I can tell the lack of stability in work still affects my mental health a lot, but seeing how I've been growing a lot personally while the market seemingly has gone to shit gives me some level of confidence. I'll be alright.
This is mostly a sign of life to whom it may concern. I'm alive, existence is dreadful but manageable, shit's hard, but it's all gonna be okay in the end. I may or may not post a rant from time to time, as management loves unrealistic deadlines, and the PM can't say no to the CEO for some reason so her work ends up on my plate most of the time as well. Oh and of course the primary product of the company had a codebase which made me want to gorge my eyes out. So yeah, plenty to rant about.25 -
Every devrant masterly summarized in one bible-length scintilatting jewel of a blog post:
https://matt.sh/panic-at-the-job-ma...
Flawless victory.
FINISH HIM.5 -
Everyone working a non-tech/programming job I talk to finds this daily standup meetings we have utterly laughable and micromanage-y.
Someone at work thought it would be nice to replace Wednesday's standup half hour with a "Wellness Wednesday" session. We had to find something around/on our desks at home that has a lot of meaning to us and show it and tell everyone why it has meaning to us. I literally couldn't find anything here besides my trusty pistol and I was like "it would be inappropriate to flash a firearm on camera in a meeting, blah blah blah." Maybe I should do more awkward shit like this so they stop this madness.
This is getting ridiculous.10 -
My paper, "Resource-Aware Collaborative Monte Carlo Localization with Distribution Compression", got accepted to IROS2024 and the conference is in Abu Dhabi. I heard a lot of robotics people "boycotted" the conference because of human rights issues, but I don't recall these people being concerned about IROS2019 and ICRA2021 in China...
I guess boycotting is just trendy on TikTok right now, and it somehow infected the robotics community.24 -
I think a lot of pissed off devs are working at companies that see them as cost centres. Happy devs are at companies that see them as profit centres.
Like, a cereal company may have a tech team for their website and ordering and whatever, but having the best website isn't going to make them more money. Selling more cereal is.
If a company sells video processing software, having the best software is going to make them money. Tech is a profit centre.
So, anyway, I'm looking for a new job. Any rec for profit centre tech teams?2 -
Side project is finally starting to make some money to help cover operational costs. Yay!
Next steps is to probably start a legitimate company lmao.4 -
As someone who works in AI and actually bothers with cognitive models, general intelligence, theory of mind and such shit, I find the current state of the field laughable. I don't get why people panic about AI. Like, yeah it's gonna take us a while to adopt and regulate, but... it's just not there, and nowhere even near there, yet.
... Unless we're comparing AI to moronic idiotic mofos such as my neighbors. But let's not do... that. 😒 Let's just not.18 -
"Are you familiar with uploading your code to Google Drive?"
I left the building at that exact moment.5 -
How are redhat docs SO EXTENSIVE yet SO USELESS if you need to use it as actual user documentation? I thought they had their shit together, but after two days struggling to find any useful information I found a golden stackoverflow answer (sorry, but it's true) which - in my opinion - should have been the official "getting started" documentation entry for firewalld...
Everybody expects that you have your basic set of ports open (ssh for example), but nobody ever covers the configuration for that very important port 22 before you are locked out of your device. Thanks harperville if you're on here <33 -
The HR lady is pushing out the communications that the work from home policy starts on 2 September. Her last day at the company is 30th Augustus
-
Bit of an essay. TLDR: come Monday I'm either getting fired or promoted. And the CTO is a dickhead. If you think you work with me or know who I am, no you don't, shut the hell up.
Was having a discussion with my team, went on for a bit, at one point my manager mentioned that the CTO wanted me to go into the office occasionally, same thing I've had since I joined when they literally wanted me to move hundreds of miles to be close to the office mid covid when the office was closed. I give a nondescript answer. He's a bit more persistent, I snap a little but the conversation moves on. Discussion of company and team dynamics, at one point he makes a comment about people at another company being told if they don't go into the office they won't be eligible for promotion.
I ask everyone else on the call to leave.
I point out that 2 years ago me and him were interviewing candidates. He on a few occasions introduces me to candidates as a _senior_ engineer. My job title does not contain the word senior. I let it slide the first time, not worth it for a slip of the toung. Happens a couple more times, I take him aside and privately point out my job title does not contain the word senior. He says he didn't realise and thought I was.
My take away then: I'm expected to do the work of a senior without being paid for it and without being given the acknowledgement of the appropriate job title. I remind him of this. My job title hasn't changed. Fuck, I took a low ball offer when I joined and have had a minimal pay rise in like, 3 years. My tone is "not happy".
His response? He discussed promoting me with CTO however budged constraints. I somewhat understand, however.
We have promoted several people in the last few years. We have grown by hiring new people in the last few years (5 in a company of 30). There are ways to compensate someone in ways that do not impact day to day budget (shares, TC, total compensation, is normal terminology in the tech field for this). I ask why the hell should I travel a few hundred miles to the office to get get to know people, put effort in to a company that demonstrably doesn't value me? Particularly as all levels of management have completely failed at developing a social atmosphere during covid? My first month, I had 3 5 minute meetings with my manager a week. That was all of the communication I had with people. I literally complained and laid out what they should do instead, they adopted most of it.
I also ask him if he genuinely thinks being here is in my professional interest? My tone has well passed pissed off.
I will say, I actually quite like my manager, we have a good working relationship and I've learned a lot from him.
He makes some mediocre points, tries to give advice about value of shares. To me, the value of shares is zero until they are money. The value to the company, however, is that it's a sizeable chunk on their balance sheet and shares sheet that they have to be willing to justify. If I wanted money, I'd go work at a high frequency trading bank and make 5x what I'm on now. No joke, that's what they pay, I could get a job, came close in the past but went to amazon. He understands.
He says will discuss with CTO. They were on a call for like an hour. His tone has changed to "you will be promoted ASAP, comp may be structured as discussed". Point made.
I'm in this job because it's convenient, is easy for me. Was originally lower challenge than previous, has a range of chances to learn and _that's_ the value to me. He's suitably nervous.
Point made I think.
So given I swore a few times, at least once about the CTO. Interesting to see how it goes.
Message from him to the effect that he spoke to CTO, has been told to write a proposal for promotion (kinda standard), will discuss with HR on Monday as they're on holiday.
So, maybe not getting fired today?
Blood pressure still very high.9 -
I had a company event last Friday and the CEO announced to go back to 2 days in the office.
And a bit later, he went on a spiel that employees should disable notifications more to focus. But he wants that we go back to the office... an open office with a lot more background noise.
My closest colleague that I work the most with is 2000 km away....3 -
"Man Of Steel"
Many men was I
before I was the man I am.
And each a stranger had I come to know
In a strange land.
In every man there is a nation
of dreams, in every spirit, like a flame
Many visions, many plans.
How do I choose, how must I choose
the destiny of all among the one
united by our pain, and hopes, and blood
and beneath this eternal sun, and the rule of petty men
learn to stand tall, to walk, to run.
If I could stand upon the shoulders
of giants, and stride for but a minute
in great men's shoes, forever and a day
All the world would be mine to gain, mine to lose
And bend the course of mankind
To a better way.
If I could stride full measure in that minute
And take it like the reigns
Of a chariot that could cross the sky
What a man they would exclaim, for generations,
fathers unto untold sons.
And speak in solemn words setting new foundations,
a truth greater than any lie
It is every man's will to fight.
And it is to rogues to do and die. -
when the only thing you have going on for the team is the atmosphere and even that they fuck up, what now6
-
Went on a roadtrip for a couple of days to a friend's lovely farm in the middle of nowhere, 2400km trip and now I am back at work and hating this rat race bullshit. I don't want to do this for the rest of my life.5
-
I've never been a big fan of the "Cloud hype".
Take today for example. What decent persistent storage options do I have for my EKS cluster?
- EBS -- does not support ReadWriteMany, meaning all the pods mounting that volume will have to be physically running on the same server. No HA, no HP. Bummer
- EFS -- expensive. On top of that, its performance is utter shit. Sure, I could buy more IOPS, but then again.. even more expensive.
S3 -- half-assed filesystem. Does not support O_APPEND, so basically any file modifications will have to be in a
`createFile(file+"_new", readAll(file) + new_data); removeFile(file); renameFile(file + "_new", file);`
way.
ON TOP of that, the s3 CSI has even more limitations, limiting my ability to cross-mount volumes across different applications (permission issues)
I'm running out of options. And this does not help my distrust in cloud infras...10