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
Manager: We need to setup the security in the Mexico server
Dev: You mean that 3rd party firewall add on?
Dev: And set up the billing on the Mexico account?
Dev: lol, sure thing I’ll create the ticket
Manager: What’s so funny?
Ticket: Build wall and get Mexico to pay for it.8
Manager: How come the intern does way more tickets than you?
Dev: Because you told me to only give him the easy ones since he either can’t do them otherwise or takes too long on the hard ones
Manager: Well how is he going to learn if we only give him easy ones?
Dev: That’s what I told you when you orig—
Manager: Assign him ALL of the hard tickets on your board immediately!
*Tickets closed per day drops significantly*
Manager: WHAT IS TAKING SO LONG ON THESE TICKETS!!!!!
Be more passive
I always get involved in everything, at every company. Not to further my career through ass-kissing and overperforming.
I regularly piss off people. When C-level has a discussion about strategy, I'm usually ahead of them, ask too many questions, criticize every detail they've missed, cause frustration by making them look incompetent.
Can't help it, when I see retards destroy a great product I have to intervene.
Some people appreciate it. I often defend both devs and end users, when others don't dare speak up.
But fuck it, I'm getting older. I'm gonna coast a bit more. Sit back, relax.
If a product manager doesn't prepare enough tasks — that's cool, I still have a Factorio savegame to work on.
If another team designs an incredibly stupid feature — they'll discover the issues eventually by themselves. Maybe I'll warn once, just to be nice.
*Pours another chocolate milk*
Also gonna spend at least 4h/d with my daughter. She's a better human than most of my coworkers, and the work we do using her Legos is honestly more important for humanity than the Jira backlog.19
Recipe of cold coffee.
Step 1: Make Coffee
Step 2: Start Coding
Step 3: Forget you made Coffee
Step 4: Drink it Cold
Don't say thank you I understand!30
Recruiter: This is a 100% remote position
Dev: Good! That’s what I’m looking for.
Recruiter: But the company does require you to come into the office “on occasion”
Dev: I live 5 hours away from your office so that would be not a good fit
Recruiter: And once covid is over the ability to work remotely will be getting reconsidered. You’ll likely need to move cities in order to continue your employment with them.
Dev: Yeah I’m looking for 100% remote work
Recruit: This is 100% remote! Just with the need to come into the office sometimes now and potentially more later.
Dev: Hey our current server is starting to chug a bit. Can I get approved for $1200 additional spend to double the speed?
Manager: *Sharp inhale*. We need this project to cost as little as possible, we really can’t justify spending any additional money for any reason right now.
*2 days later*
Manager: YOU ARE APPROVED FOR $100,000 TO IMMEDIATELY IMPLEMENT SOMETHING RELATED TO NFTs IN ANY OF OUR APPS. THE BUSINESS NEEDS TO EXPAND INTO THE METAVERSE ASAP IMMEDIATELY. I NEED AN ETA BY EOD AS TO WHEN THIS CAN BE ROLLED OUT.
Hey @Root! I know you won't have time to finish Ticket A before holiday vacation, so work on Ticket B instead.
I finished Ticket A in time. except for converting/fixing some horrible spaghetti monstrosity. More or less: "we overwrote this gem's middleware and now it calls back into our codebase under specific circumstances, and then calls the gem again, which calls the middleware again." Wtf? It's an atrocity against rationality.
The second day after vacation:
Hey @Root, drop Ticket B and work on Ticket C instead. Can you knock this out quick, like before friday? ... Uh, sure. It looks easy.
And in somewhere between 13 (now 5) minutes and two hours from now, I'm going to have a 1:1 with my boss to discuss the week. Having finished almost all of Ticket A won't matter because it's not a "recent priority" -- despite it being a priority before, and a lot of work. I've made no progress on Ticket B due to interruptions (and a total and complete lack of caring because I'm burned out and quite literally can no longer care), and no progress on ticket C because... it's all horribly broken and therefore not quick. I assigned it to Mr. Frontend, which I'll probably get chewed out for.
So, my 1:1 with bossmang today is going to be awful. And the worst part of all: I'm out of rum! Which means sobriety in the face of adversity! :<
but like, wtf. Just give me a ticket and let me work on it until it's done. Stop changing the damn priorities every other freaking day!17
I’m surrounded by idiots.
I’m continually reminded of that fact, but today I found something that really drives that point home.
Gather ‘round, everybody, it’s story time!
While working on a slow query ticket, I perused the code, finding several causes, and decided to run git blame on the files to see what dummy authored the mental diarrhea currently befouling my screen. As it turns out, the entire feature was written by mister legendary Apple golden boy “Finder’s Keeper” dev himself.
To give you the full scope of this mess, let me start at the frontend and work my way backward.
This function allows the user to better see the rows in the API Calls table, for which there is a also search feature — the very thing I’m tasked with fixing.
It’s worth noting that above the search feature are two inputs for a date range, with some helpful links like “last week” and “last month” … and “All”. It’s also worth noting that this table is for displaying search results of all the API requests and their responses for a given merchant… this table is enormous.
This search field for this table queries the backend on every character the user types. There’s no debouncing, no submit event, etc., so it triggers on every keystroke. The actual request runs through a layer of abstraction to parse out and log the user-entered date range, figure out where the request came from, and to map out some column names or add additional ones. It also does some hard to follow (and amazingly not injectable) orm condition building. It’s a mess of functional ugly.
The important columns in the table this query ultimately searches are not indexed, despite it only looking for “create_order” records — the largest of twenty-some types in the table. It also uses partial text matching (again: on. every. single. keystroke.) across two varchar(255)s that only ever hold <16 chars — and of which users only ever care about one at a time. After all of this, it filters the results based on some uncommented regexes, and worst of all: instead of fetching only one page’s worth of results like you’d expect, it fetches all of them at once and then discards what isn’t included by the paginator. So not only is this a guaranteed full table scan with partial text matching for every query (over millions to hundreds of millions of records), it’s that same full table scan for every single keystroke while the user types, and all but 25 records (user-selectable) get discarded — and then requeried when the user looks at the next page of results.
What the bloody fucking hell? I’d swear this idiot is an intern, but his code does (amazingly) actually work.
No wonder this search field nearly crashed one of the servers when someone actually tried using it.
Interviewer: "I'll checked your GitHub, your side projects looks very interesting! Tell me about your other hobbies. "
Me:"Other hobbies? "7
"Hey, Root, someone screwed up and now all of our prod servers are running this useless query constantly. I know I already changed your priorities six times in the past three weeks, but: Go fix it! This is higher priority! We already took some guesses at how and supplied the necessary code changes in the ticket, so this shouldn't take you long. Remember, HIGH PRIORITY!"
1. I have no idea how to reproduce it.
2. They have no idea how to reproduce it.
3. The server log doesn't include queries.
4. The application log doesn't include queries.
5. The tooling intercepts and strips out some log entries the legendary devs considered useless. (Tangent: It also now requires a tool to read the logs because log entries are now long json blobs instead of plain text.)
6. The codebase uses different loggers like everywhere, uses a custom logger by default, and often overwrites that custom logger with the default logger some levels in. gg
7. The fixes shown in the ticket are pretty lame. (I've fixed these already, and added one they missed.)
8. I'm sick and tired and burned out and just can't bring myself to care. I'm only doing this so i don't get fired.
9. Why not have the person who screwed this up fix it? Did they quit? I mean, I wouldn't blame them.
Why must everything this company does be so infuriatingly complicated?11
Manager: our file IO is slow, any suggestions to make it faster?
Code: multithread writing to a few hundred small (temp) files then single thread combine to one big file and delete the temp files.
When I self-published my first indie game on steam and people actually started buying it.
Remember sitting on the floor with a bottle of vodka trying to tell my girlfriend like that lunatic dotconnecting on a whiteboard meme guy, this is really bad because too much people bought it.
They should spend their money on something useful instead of me, I felt like a fraud.
It turned out good in the end tho, made some updates for it that made it better so i felt better about it, plus got a job from a publisher because they liked my game 😃5
My current company is moving to a no code platform.
Also me planning to moving into another company :)12
I was today years old when I figured this.
Whoever named the app and designed the logo is an absolute fucking genius.11
In retrospect, being open about autism in the workplace was a very bad decision.
My manager and CTO got to know about it and since that moment, every single thing I do has a different meaning to them.
All my technical decisions have to be validated by someone else, and my critique about how certain things are done is dismissed as if I were some kind of alien.
I really wonder when they're gonna ask me about their future or something.27
Up for a rollercoaster?
I had a super motivated day where i could focus and wanted to get my work done. My stupid work lappy instead kept throwing tantrums and totally prevented me from working. (Everything caused disk thrashing, took multiple minutes instead of seconds, etc.) Total shit day, but I felt great.
Next morning, I woke up all achy and cold. Ignored it and went to work. I was able to fix everything, and got my benchmarks running smoothly in all of fifteen minutes. Got good results, too! Left work and got married at the courthouse. :)
Went to a restaurant afterward, and two jolly fat guys (Off-duty Santa?!) bought us lunch.
Got home and… started feeling really awful. A little while later, I had a 102*f fever. Collapsed on the floor with an electric blanket and was absolutely miserable. Just kind of stared for hours, aching everywhere. Eventually went to bed, and my wife (!) made me all warm and comfy. And then I proceeded to be completely unable to sleep. Or move. Or think. Laid there for four hours unable to move, and shaking violently at any touch of cold air.
Now it’s 1am and I’m here at the freezing kitchen table writing this.
I am miserable.
But still happy, too!
COVID variants should adopt a semantic versioning, rather than using greek alphabetics.
COVID V.22.1 Beta (testing in US)
COVID v.22 release 1 (being tested somewhere in London)
COVID v.22 nightly builds (still brewing in China)6