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
-
The world makes no fucking sense.
In 2013 I had a manager approve a couple days' leave coz my son was having medical issues.
He was super nice about it and told me I could take as much time as I needed. I said, a couple days is enough. I took Thursday and Friday off. I took two days.
On Monday, an emergency meeting was held with the CTO (it was a small company, it went me -> manager -> C suite). I was told that a production deployment happened on Friday that fucked up a few clients' systems and that it had cost said clients hundreds of thousands dollars and are now suing the company.
Turns out on Friday, lead developer was also given the day off for whatever reason and I was being scolded because as the next senior developer, it was my responsibility to review code and make sure shit like this doesn't happen.
I agreed (and still agree) but also explained I had already filed leave weeks prior and I wasn't informed about dev lead's absence. Sure I could've checked my messages but my kid was in the hospital and I was busy. Still I couldn't help but feel a little guilty.
Manager holds a separate meeting with me and talks me into just writing an apology note in the email chain and he'll do the rest of the talking for me and make sure I get minimal punishment. I trusted him, he was the one who found me and brought me into the company (I know, I was naive).
So I wrote the email. It was a small note. I apologized for not checking messages and explained my situation again and mentioned I would've definitely checked if I was informed that the lead dev would be away.
Another meeting was held the next day and after pleasantries the Manager started with this, "Ok so we've all seen the email and understand that this was all Angry's fault right?".
Now, we're not native English speakers and Manager doesn't really do well with grammar. I was alarmed by what he said but wasn't angry because I was pretty sure that's not what he meant. I'm sure he meant to say that "Angry feel's guilty but his actions were understandable given the circumstance" or that he forgot a "not" in there and really meant "not Angry's fault". Surely this is what he meant to say. Right?
But then the rest of the meeting went on and I was unceremoniously let go. Immediately for "failing to accomplish my tasks and costing the client 100Ks of dollars". I wasn't even given a chance to say anything else.
The meeting ended and since we were both in the office, Manager approached me with exit papers and a check (~1200 USD)--it was my month's pay. I was asked to leave that day and was told I didn't need to come back. No handovers, no knowledge transfers, not a even a documentation of open projects I was handling.
I realized I just was made the scapegoat by a management screwup that costed our clients a lot of money.
Of course, I wrote the CEO multiple emails the next couple days. I also cc'd the CTO. No response.
A couple of weeks pass, I get another job at a cool company and i promptly move on.
I write this story now because I just found out today that in 2016, Manager was let go by the company for **sexual harassment**. Apparently, he actually did it too according to friends I still had within the company.
Here's where it gets fucked up. He turns and sues the company for unlawful termination and I guess to avoid a long legal battle? the company settled. They fucking settled and handed this man 2 Million PHP (at the time about 40k USD).
2 fucking million. Life changing money around here. And he got it by being a slimy piece of shit.
The world makes no fucking sense.9 -
Have you ever been pair coding with someone who uses shotgun debugging? I am about to claw my eyes out! What is shotgun debugging you ask?
Code doesn't work... What do we do?
I start thinking about possible flow, how to go back to what works, where to insert debugging statements. My partner interrupts my thought and says - what if we change this variable name?
...uh what?
What if that fixes it
It won't!
Well how do you know if you don't try?
I change the variable name - of course nothing works and now I forgot the possible solution I was thinking about...
Starting over... I again start coming close to the idea... Interrupts me again. What if we comment out this random line?
Why what's your reasoning?
Answer: *Shrug* idk might work...
...rinse and repeat
WHAT IS WRONG WITH YOU???!
I literally started muting my computer sound so I can not hear him while I think and that helps tremendously. This is programming not magic, people!!! Stop throwing random "what if" suggestions!14 -
Why 95%+ devs are bad ???
Just did a recruitement for a post opf Principal Engeneer with possibuility to be CTO.
375 candidats at first interview.
Only 8 remaining for second phase
Our of 8, only 3 managed to complete a small code test.
Outr of 3, one asked for (I shit you not) 700k$ salary (lolz).
Out of 2 remaining, 1 just decided "I did for lolz to see if I get an offer so I can boost my current work salary",
Leaving us with only 1 candidate...
So fucking time consuming.....17 -
I am of the firm belief that a function should always return just one type.
I think it's the most convoluted thing that a function should be allowed to return any kind of type.
I've seen shit like return a string when something is valid and then a boolean if it's not valid.
To me, that kind of flexibility has some funky code smell.
I'm looking at you WordPress 🤨11 -
👍 https://github.com/auchenberg/...
"If you want your software to be adopted by Americans, good tests scores from the CI server are very important. Volkswagen uses a defeat device to detect when it's being tested in a CI server and will automatically reduce errors to an acceptable level for the tests to pass. This will allow you to spend less time worrying about testing and more time enjoying the good life as a trustful software developer."rant malice driven development devops task failed successfully volkswagen emissions continuous integration satire gone wrong troll9 -
Current workload as dev lead:
- 1% actual development
- 2,5% waiting for SaaS to load
- 2,5% cursing company server network connectivity issues
- 5% switching VPNs
- 7,5% pkg management & deploys
- 10% writing JIRA and support tickets
- 12,5% filling in timesheets
- 15% coaching & reviewing a bot coworker
- 19% doing 2FA, refreshing expired passwords
- give up and spend the remaining 25% doing something meaningful8 -
In my case, the most unrealistic deadline was when I was put on a project for 30 person days in 2008. The project had been running for about 6 months at that point.
I spoke to the project manager about my tasks and she told me to finish the fat client. So I immersed myself in the sources. And I was horrified to realize that not only was it not even a POC, but the performance was lousy to say the least. It took about 70 (sic!) seconds to start the program, read in about 20 records from a database and display them as a hierarchical structure.
I asked the PM when I was supposed to have finished my work, and her response was, "Yesterday."
"Very funny," I replied.
"No, really," she said, "the deadline was yesterday."
It took me an afternoon to speed up the fat client startup to 6 seconds. And then it took us another two weeks or so to identify the processes in discussions with the technical project manager. Because that didn't exist yet either.
About 1.5 years after the deadline, the software system - consisting of the fat client, mainframe modules and purchased software - was stable enough to be rolled out. -
The course videos were done in November 2022.
It's May 2024 and i'm still shuffling paperwork to get the damn thing published.
"Course authorship is down on our platform! Why is it taking so long for our authors to publish!? Whats going on here?!"
Maybe because nearly all of the authors you have full time jobs and a family like me and don't have time for an infinite revolving door of new tools and frameworks!!!! RAAAAAAAAAAAGGGGGGHGHGHGHGHTHTHTHTHHHHH
Never again.1 -
- Hey, I need to do X and I need your department to do it.
- "We can't do X, this is against company policy!"
- Oh, sorry, I didn't know. But I will have to justify it to my boss, can you point me to where in the policy it says you can't do X?
- "No I can't, it won't be there. It is just common sense"
- Wait, what? You saying you can't do something because it is against the company policy even though there is no restriction against it in company policy?!
- "Other companies don't do it either"
- I will need you to say that in writing, I need to explain it to my boss.
- "Our email server is FUBAR"
- It can be hand-written
- "I can't give a declaration in name of my department!"
- Wait, so you can interpret company policy any way you want, make decisions regardless of what the policy actually says but you can't own up to it in writing?!?
- "..."
- ...
(Some context: I've been emailing them about X for more than a week. Just got crickets for a response. Not even an evasive coward response, just no answer at all. And calling them leaves no paper trail. Fucking oxygen thiefs)
For fuck sake, are non-tech departments always filled with complete morons?!? Does anyone have ever worked with smart, or at least minimally-coherent non-tech people?!?!
Seriously, does anyone there have some story about some non-stupid non-tech/analog/muggle coworker?!?
I'm inclined to think that anyone who can think systematically is either working in tech or not working at all.6 -
TLDR; of my current job:
Deal with shit that nobody wants to deal with, if I manage to make something good out of it, prepare that the credit will be stolen.
At a previous workplace, people wanted me to deal with shit that they wanted to blame me for it, so it’s kind of an improvement. But I wish I could find a normal job where I either do normal work or just have someone that would have my back and just say “idkhow did this” or “let’s bring them to this meeting as they might be able to help with the cool stuff too”.
Also, remember that one of my parents has cancer? I won’t be able to be there for the surgery, due to things out of my control. A lot of things feel out of control lately…1 -
When depression set in, I thought pain relief lied in getting duller. People I called “stupid” — who lived simple lives filled with alcohol and lack of any talent or purpose — weren't suffering. Better even, they denied the existence of depression.
My “wish” was granted when they prescribed cariprazine. In two months, I lost my ability to read, let alone code.
Before that, even depressed, writing a simple email/password auth was a matter of ten minutes in any of the languages I knew how to do web in (JS, Python, Clojure, PHP). But on cariprazine, I remember myself not quite getting what an HTML form was.
Tell you what… you should never wish to become dumber. When I was smart and depressed, the pain was real, but it felt like… let's say a breakup. When I was dumb and depressed, it felt like being raped with a red-hot soldering iron. Or like being skinned alive. Or like when 100% of your skin is a third-degree burn. The pain weren't listening to me, as my mouth was glued shut as if I was Keanu in the first Matrix movie. You can't say, do or think anything, at all, to ease your pain somehow. You can't even realize that just DMing or calling someone is probably a good idea.
Instead of you vs. despair situation from when you were smart, now it's just despair that is actively melting you, so you two become one. Even time loses its meaning. There is nothing out there but suffering.
If you're smart(er than I was at my lowest), DO cherish it. Losing that will spell disaster. So stay away from substances that can facilitate that loss.3 -
I remember when I was installing shareware in early 2000 and it always prompted me to install spyware sidebar, search bar for my web browser.
Another screen during installation was desperately trying to change my start page and adding couple of bookmarks for me so the developers got paid.
Tucows I think was the leader of those installers and I didn’t mind to get software for free and click to uncheck checkbox to not install optional crap.
At least it wasn’t a virus and viruses from 2000 were not that harmful, most of them were just annoying.
Fast forward 25 years and apparently those developers are now working directly for the web browser companies. Instead of trying to force me to install unwanted stuff it comes bundled with browser and I can’t uninstall or disable it.
And now it got me to think if history repeats itself and if technology bubble is going to pop sooner than later. All this money would be gone but I can’t find the place where it can happen and how it can happen.
But it’s going to happen for sure.6 -
I've been away a while, mostly working 60-70 hour weeks.
Found a managers job and the illusion of low-level stability.
Also been exploring elliptic curve cryptography and other fun stuff, like this fun equation...
i = log(n, 2**0.5)
base = (((int((n/(n*(1-(n/((((abs(int(n+(n/(1/((n/(n-i))+(i+1)))))+i)-(i*2))/1))/1/i)))))*i)-i)+i))
...as it relates to A143975 a(n) = floor(n*(n+3)/3)
Most semiprimes n=pq, where p<q, appear to have values k in the sequence, where k is such that n+m mod k equals either p||q or a multiple thereof.
Tested successfully up to 49 bits and counting. Mostly haven't gone further because of work.
Theres a little more math involved, and I've (probably incorrectly) explained the last bit but the gist is the factorization doesn't turn up anything, *however* trial lookups on the sequence and then finding a related mod yields k instead, which can be used to trivially find p and q.
It has some relations to calculating on an elliptic curve but thats mostly over my head, and would probably bore people to sleep.2 -
Premature timesheet delivery optimization. This slimy dude (third-party) pops in evangelizing cloud Ms Excel for "both our comfort" to submit a fucking timesheet, without any prior context
Cloud's slower, I don't have a local copy of it, and you can mess with the data cells, blurring responsibility for sync mistakes. No way I'm going to do that.
Until now I've just had the template locally, fill it in and send him the Excel file end of month and neither I or anyone that I know of have brought up issues with this process (mind you this was sth. he was responsible for, but he messed up so badly I took it over)5 -
It's amazing how companies like Autodesk and Adobe see Linux as some "toy". When we talk about Linux we are talking about a professional workstation. My entire company uses Linux (currently Fedora 39) on its workstations, and all of our servers use FreeBSD. Not because it's free, but because it proves to be better than the alternatives to what we produce. We pay for licenses for JetBrains, BricsCAD, MATLAB and I still happily pay STEAM to play my Civilization, Doom Eternal, CS2 and I use Proton to continue my adventures in Diablo and Star Craft, all PAID. Adobe and Autodesk, be ashamed and instead of talking about market share, admit that you do not have competence.8
-
User having a problem with a page in a web application : -...I'm attaching a screenshot of what it looks like.
Me: - Some scripts seem to be cached so you might need to reload the page.
User: - Now that I reloaded the page for the third time it seems to work. Then I tried another case and then it gives me the same response as in the previously attached screenshot.
Me: - Was it in a separate Firefox window?
User: - What do you mean by a separate Firefox Window?
Different professions really speak different languages.2 -
This morning i received an email from the boss reporting their record breaking profits for 2024 by now
1.8B €
Then for other subprojects
27B €
21B €
Etc
All net profit. More than about 130B € profits just in these first 5 months of 2024
This made me realize
My 17€ an hour (GROSS income not even NET) Is pennies. Im working to literally make someone else rich
I gotta switch sides and code some crypto coin to scam people for millions asap and see how its like living like those bosses for once16 -
I may have accidentally found a legit factorization method that converts factoring to a combinatorics problem over a graph, with a time complexity that is the factorial of the logarithm of the semi prime being factored.
I don't know if this is supposed to be good or not, and I don't want to post it prematurely like I almost always do. Not at least until I study its properties better, but it's still a pretty interesting find I think.5 -
After a lot of work, the new factorization algorithm has a search space thats the factorial of (log(log(n))**2) from what it looks like.
But thats outerloop type stuff. Subgraph search (inner loop) doesn't appear to need to do any factor testing above about 97, so its all trivial factors for sequence analysis, but I haven't explored the parameter space for improvements.
It converts finding the factors of a semiprime into a sequence search on a modulus related to
OIS sequence A143975 a(n) = floor(n*(n+3)/3)
and returns a number m such that n=pq, m%p == 0||(p*i), but m%q != 0||(q*k)
where i and k are respective multiples of p and q.
This is similar in principal to earlier work where I discovered that if i = p/2, where n=p*q then
r = (abs(((((n)-(9**i)-9)+1))-((((9**i)-(n)-9)-2)))-n+1+1)
yielding a new number r that shared p as a factor with n, but is coprime with n for q, meaning you now had a third number that you could use, sharing only one non-trivial factor with n, that you could use to triangulate or suss out the factors of n.
The problem with that variation on modular exponentiation, as @hitko discovered,
was that if q was greater than about 3^p, the abs in the formula messes the whole thing up. He wrote an improvement but I didn't undertsand his code enough to use it at the time. The other thing was that you had to know p/2 beforehand to find r and I never did find a way to get at r without p/2
This doesn't have that problem, though I won't play stupid and pretend not to know that a search space of (log(log(n))**2)! isn't an enormous improvement over state of the art,
unless I'm misunderstanding.
I haven't posted the full details here, or sequence generation code, but when I'm more confident in what my eyes are seeing, and I've tested thoroughly to understand what I'm looking at, I'll post some code.
hitko's post I mentioned earlier is in this thread here:
https://devrant.com/rants/5632235/...2 -
I'm trying to stand up a docker container to read a storage queue with dotnet and invoke ffmpeg to convert some videos. For a whole day I fought with this wrapper (FFMpegCore) which kept throwing file not found errors on the ffmpeg binary itself. Locally (windows) it worked fine.
I spent a ton of time trying to install the Debian package, trying to add it to the path manually, trying to just use the wrapper just to generate the arguments I wanted (I'm not an ffmpeg pro, so the fluent API the wrapper has is super useful) and running it manually, nothing worked. Finally, I realized it wasn't getting to the part where I ran it manually: just using the fluent API to get the arguments was invoking ffmpeg and throwing.
I took away the wrapper completely, start ffmpeg manually and it works...
Ay carumba. Things just can't be easy.1 -