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
Search - "bad code"
-
Manager: Good news everyone, I made a big giant announcement this morning that the app upgrades will be released today!
Dev: They definitely won’t be, we need another 2 weeks minimum. I told you yesterday
Manager: Ok well I already made the announcement that today was the day so too bad for you.
Dev: Doesn’t change the state of things
Manager: 😡 This announcement is supposed to motivate you to work faster! You guys are making me look bad when you don’t support me like this!
Dev: Working as fast as we can, it’s a 2 person dev team for 4 separate applications so it’s quite a bit to get pushed through
Manager: Ok well then stay extra then, we have to get this out asap. Tell your spouses they are not going to be seeing much of you until this work is done. People are starting to ask questions!!!!!
Dev: Not my problem, it’s done when its done. I’m not staying extra.
Manager: !!
// *************
Might be blowing my cover a little but what are they going to do? Fire me? Good luck getting this out without me. They’ve tried to replace me in the past but the cheapest person they could find was 60k more expensive than me and still couldn’t keep up. Probably they’ll ship the work overseas and the code will die in a dumpster fire and cost them even more. Ah well, just another company that doesn’t deserve code.21 -
#3 Worst thing I've seen a co-worker do?
A 20-something dev, 'A', back in the early days of twitter+facebook would post all his extracurricular activities (drinking, partying, normal young-buck stuff). The dev mgr, 'J', at the time took offense because he felt 'A' was making the company look bad, so 'A' had a target on his back. Nothing 'A' did was good enough and, for example, 'J' had the source control czars review 'A's code to 'review' (aka = find anything wrong). Not sorting the 'using' statements, and extra line after the closing }, petty things like that. For those curious, orders followed+carried out by+led by 'T' in my previous rant.
As time went on and 'T' finding more and more 'wrong' with A's code, 'J' put A on disciplinary probation. 'A' had 90 days to turn himself around, or else.
A bright spot was 'A' was working on a Delphi -> C# conversion, so a lot of the code would be green-field development and by simply following the "standards", 'A' would be fine...so he thought.
About 2 weeks into the probation, 'A' was called into the J's office and berated because the conversion project was behind schedule, and if he didn't get the project back on track, 'A' wouldn't make it 30 days. I sat behind 'A' and he unloaded on me.
<'A' slams his phone on his desk>
Me: "Whoa...whats up?"
A: "Dude, I fucking hate this place, did you hear what they did?"
<I said no, then I think we spent an hour talking about it>
Me: "That all sucks. Don't worry about the code. Nobody cares what T thinks. Its not even your fault the project is behind, the DBAs are tasked with upgrades and it's not like anyone is waiting on you. It'll get done when it's done. Sounds like a witch hunt, what did you do? Be honest."
A: "Well, um...I kinda called out J, T, and those other assholes on facebook. I was drunk, pissed, and ...well...here we are."
Me: "Geez, what a bunch of whiney snowflakes. Keep your head down and you'll get thru it, or don't. Its not like you couldn't find another job tomorrow."
A: "This is my first job out of college and I don't want to disappoint my dad by quitting. I don't even know what I'm supposed to be doing. All J told me was to get better. What the fuk does that even mean?"
Me: "He didn't give you any goals? Crap, for someone who is a stickler for the rules, that's low, even for J."
Fast forward 2 weeks, I was attending MS TechEd and I was with another dev mgr, R.
R: "Did you hear? We had to let 'A' go today."
Me: "What the hell? Why?"
R: "He couldn't cut it, so we had to let him go."
Me: "Cut what? What did he do, specifically?"
R: "I don't know, 'A' was on probation, I guess he didn't meet the goals."
Me: "You guess? We fire a developer working on a major upgrade and you guess? What were these so-called goals?"
R: "Whoa...you're getting a little fire up. I don't know, maybe not adhering to coding standards, not meeting deadlines?"
Me: "OMG...we fire people for not forming code? Are you serious!?"
R: "Oh...yea...that does sound odd when you put it that way. I wish I'd talk to you before we left on this trip"
Me: "What?! You knew they were firing him *before* we left? How long did you know this was happening?"
R: "Honestly, for a while. 'A' really wasn't a team player."
Me: "That's dirty, the whole thing is dirty. We've done some shitty things to people, but this is low, even for J. The probation process is meant to improve, not be used as a witch hunt. I don't like that you stood around and let it happen. You know better."
R: "Yea, you're right, but doesn't change anything. J wanted to do it while most of us were at the conference in case 'A' caused a scene."
Me: "THAT MAKES IT WORSE! 'A' was blindsided and you knew it. He had no one there that could defend him or anything."
R: "Crap, crap, crap...oh crap...jeez...J had this planned all along...crap....there is nothing I can do no...its too late."
Me: "Yes there is. If 'A' comes to you for a letter of recommendation, you write one. If someone calls for reference, you give him a good one."
R: "Yea..yea...crap...I feel like shit...I need to go back to the room and lie down."
As the sun sets, it rises again. Within a couple of weeks, 'A' had another job at a local university. Within a year, he was the department manager, and now he is a vice president (last time I checked) of a college in Kansas City, MO.13 -
I quit and my last day is next week.
Apparently management has decided that I should spend my last day implementing a new feature for a customer where I have been the only developer, and release it to production (without first implementing it in test) the same day. A feature that potentially could cripple a whole workflow if done wrong.
Of course I advised not to release untested code to production on a friday, just before the only person that knows how it works leaves the company. But no, “the customer reaaaaaally wants it before summer, so just be careful not to write any bugs”.
I’m not saying that I’m intentionally gonna write bad code - but if I do, I’m not gonna pick up the phone when it calls.19 -
In the darkest of days, I discovered how to remote login to my computer at work through the company vpn. I then proceeded to work overtime at night in secret for a week or so, writing documentation and refactoring code.
I finally woke the fuck up and realized that I shouldn't be obsessing over proprietary codebases that do not belong to me, and I should put this misguided energy into my own projects.
So yeah, as a bad dev habit I'm working on fixing, this fits the bill.3 -
What an absolute fucking disaster of a day. Strap in, folks; it's time for a bumpy ride!
I got a whole hour of work done today. The first hour of my morning because I went to work a bit early. Then people started complaining about Jenkins jobs failing on that one Jenkins server our team has been wanting to decom for two years but management won't let us force people to move to new servers. It's a single server with over four thousand projects, some of which run massive data processing jobs that last DAYS. The server was originally set up by people who have since quit, of course, and left it behind for my team to adopt with zero documentation.
Anyway, the 500GB disk is 100% full. The memory (all 64GB of it) is fully consumed by stuck jobs. We can't track down large old files to delete because du chokes on the workspace folder with thousands of subfolders with no Ram to spare. We decide to basically take a hacksaw to it, deleting the workspace for every job not currently in progress. This of course fucked up some really poorly-designed pipelines that relied on workspaces persisting between jobs, so we had to deal with complaints about that as well.
So we get the Jenkins server up and running again just in time for AWS to have a major incident affecting EC2 instance provisioning in our primary region. People keep bugging me to fix it, I keep telling them that it's Amazon's problem to solve, they wait a few minutes and ask me to fix it again. Emails flying back and forth until that was done.
Lunch time already. But the fun isn't over yet!
I get back to my desk to find out that new hires or people who got new Mac laptops recently can't even install our toolchain, because management has started handing out M1 Macs without telling us and all our tools are compiled solely for x86_64. That took some troubleshooting to even figure out what the problem was because the only error people got from homebrew was that the formula was empty when it clearly wasn't.
After figuring out that problem (but not fully solving it yet), one team starts complaining to us about a Github problem because we manage the github org. Except it's not a github problem and I already knew this because they are a Problem Team that uses some technical authoring software with Git integration but they only have even the barest understanding of what Git actually does. Turns out it's a Git problem. An update for Git was pushed out recently that patches a big bad vulnerability and the way it was patched causes problems because they're using Git wrong (multiple users accessing the same local repo on a samba share). It's a huge vulnerability so my entire conversation with them went sort of like:
"Please don't."
"We have to."
"Fine, here's a workaround, this will allow arbitrary code execution by anyone with physical or virtual access to this computer that you have sitting in an unlocked office somewhere."
"How do I run a Git command I don't use Git."
So that dealt with, I start taking a look at our toolchain, trying to figure out if I can easily just cross-compile it to arm64 for the M1 macbooks or if it will be a more involved fix. And I find all kinds of horrendous shit left behind by the people who wrote the tools that, naturally, they left for us to adopt when they quit over a year ago. I'm talking entire functions in a tool used by hundreds of people that were put in as a joke, poorly documented functions I am still trying to puzzle out, and exactly zero comments in the code and abbreviated function names like "gars", "snh", and "jgajawwawstai".
While I'm looking into that, the person from our team who is responsible for incident communication finally gets the AWS EC2 provisioning issue reported to IT Operations, who sent out an alert to affected users that should have gone out hours earlier.
Meanwhile, according to the health dashboard in AWS, the issue had already been resolved three hours before the communication went out and the ticket remains open at this moment, as far as I know.5 -
I'm a tech lead for a digital agency.
Digital agencies are universally known for being shite. Why? Because they typically push through sub-optimal code with very little testing over tiny deadlines for maximum profit. Maybe I've just had bad experiences but this is the 5th digital agency that I've worked at that does this bollocks.
I am currently sitting on a Teams call at 8:39pm because the fuckwit project/account managers are unable to face up to the big scary client and ask them terrifying questions like "Is this bug a blocker for the deployment?" or "We don't have enough time to fix/change these things, can we delay another day?". They just assume that A - We will work into the evening, and B - that all the issues are P1 and that we should all 'pull together' as 'team players' to get this done in time.
No, Me and my team have to work into the evening for seemingly free because these pricks can't do their jobs properly.
The funniest thing of all? When I speak to the CTO about overtime payment he tries to make me feel bad about "we don't typically pay for overtime..."
Fuck Everyone.
Time to find a new contract.11 -
I've told the same story multiple times but the subject of "painfully incompetent co-worker" just comes up so often.
I have one coworker who never really grew out of the mindset of a college student who just took "Intro to Programming". If a problem couldn't be solved with a textbook solution, then he would waste several weeks struggling with it until eventually someone else would pick up the ticket and finish it in a couple days. And if he found a janky workaround for a problem, he'd consider that problem "solved" and never think about it again.
He lasted less than a year before he quit and went off to get a job somewhere else, leaving the rest of our team to comb through his messy code and fix it. Unfortunately, our team is mostly split across multiple projects and our processes were kind of a mess until recently, so his work was a black box of code that had never been reviewed.
I opened the box and found only despair and regret. He was using deprecated features from older versions of the language to work around language bugs that no longer existed. He overused constants to a ridiculous degree (hundreds of constants, all of which are used exactly once in the entire codebase, stored in a single mutable map variable named "values" because why not). He didn't really seem to understand DRY at all. His code threw warnings in the IDE and had weird errors that were difficult to reproduce because there was just a whole pile of race conditions.
I ended up having to take a figurative hacksaw to it, ripping out huge sections of unnecessary crap and modernizing it to use recent language features to get rid of the deprecation warnings and intermittent errors. And then I went through the same process again for every other project he'd touched.
Good riddance. -
Worst collaboration experience story?
I was not directly involved, it was a Delphi -> C# conversion of our customer returns application.
The dev manager was out to prove waterfall was the only development methodology that could make convert the monolith app to a lean, multi-tier, enterprise-worthy application.
Starting out with a team of 7 (3 devs, 2 dbas, team mgr, and the dev department mgr), they spent around 3 months designing, meetings, and more meetings. Armed with 50+ page specification Word document (not counting the countless Visio workflow diagrams and Microsoft Project timeline/ghantt charts), the team was ready to start coding.
The database design, workflow, and UI design (using Visio), was well done/thought out, but problems started on day one.
- Team mgr and Dev mgr split up the 3 devs, 1 dev wrote the database access library tier, 1 wrote the service tier, the other dev wrote the UI (I'll add this was the dev's first experience with WPF).
- Per the specification, all the layers wouldn't be integrated until all of them met the standards (unit tested, free from errors from VS's code analyzer, etc)
- By the time the devs where ready to code, the DBAs were already tasked with other projects, so the Returns app was prioritized to "when we get around to it"
Fast forward 6 months later, all the devs were 'done' coding, having very little/no communication with one another, then the integration. The service and database layers assumed different design patterns and different database relationships and the UI layer required functionality neither layers anticipated (ex. multi-users and the service maintaining some sort of state between them).
Those issues took about a month to work out, then the app began beta testing with real end users. App didn't make it 10 minutes before users gave up. Numerous UI logic errors, runtime errors, and overall app stability. Because the UI was so bad, the dev mgr brought in one of the web developers (she was pretty good at UI design). You might guess how useful someone is being dropped in on complex project , months after-the-fact and being told "Fix it!".
Couple of months of UI re-design and many other changes, the app was ready for beta testing.
In the mean time, the company hired a new customer service manager. When he saw the application, he rejected the app because he re-designed the entire returns process to be more efficient. The application UI was written to the exact step-by-step old returns process with little/no deviation.
With a tremendous amount of push-back (TL;DR), the dev mgr promised to change the app, but only after it was deployed into production (using "we can fix it later" excuse).
Still plagued with numerous bugs, the app was finally deployed. In attempts to save face, there was a company-wide party to celebrate the 'death' of the "old Delphi returns app" and the birth of the new. Cake, drinks, certificates of achievements for the devs, etc.
By the end of the project, the devs hated each other. Finger pointing, petty squabbles, out-right "FU!"s across the cube walls, etc. All the team members were re-assigned to other teams to separate them, leaving a single new hire to fix all the issues.5 -
My level of frustration with Microsoft is growing to a point that I'm unable to contain it.
They buy Github, it was a great tool for developers because is FUCKING WORKED! New features were never beta tested on users unless they requested it.
Why in the absolute fuck am I getting all these new experimental bullshit features that literally make it harder for me to do my god damned job?
They provide me NOTHING but grief and sleepless weekends while I fix the god damned pipeline that's worked perfectly fine for YEARS.
Your business model is bad and your products are SHIT.
Fuck you Microsoft, I cannot even stress it enough. If I had a time machine that could go back 5 years and my options were: Tell the world about Covid, make sure Trump never became president, or stop the Github purchse. I would hunt down and brutally attack the team of executives that decided to buy Microsoft.
Words cannot adequately describe how much I want Microsoft to fuck off. If the company was a person and they died in a house fire it wouldn't be enough.
I just want a VCS that does what it's supposed to do. I don't need pipelines, I don't need image repos, I don't need static code analysis.
I JUST NEED A FUCKING VCS THAT CONTROLS VERSIONS OF SOFTWARE YOU IGNORANT FUCKS.20 -
Some years ago i attended to a summer school abroad. I instantly built a connecection with this one girl, we spend the whole week together, talking, sharing humor, deep conversations etc. We also won the prize for the best project together. I guess it looked like the beginning of a love story for the rest of the course. For me it didn't exactly, actually I didn't had much romantic feelings for her; she was the arrogant, manipulative type I thought I could handle a friend but never as girl friend. We shared some darkness so to say. But I really hoped for a new close friendship. Since she had a boyfriend back home i thought she most likely wanted just the same. Anyway I was a bit worried she might want more because she made me quite a lot of compliments and told me how she liked me.
And yes, she wanted more: Whenever we talked on the phone after the summer school or met (she lived in a city not far away from mine by coincidence) she begged me for help with coding. She had a well paid as extremely interesting PHD position with a topic between political science and computer science. Besides classical humanities methods her topic would require a lot of coding though. But she had zero, absolutely zero clue of programming, and, as it turned out, zero interesst. I told her from the beginning she would have to learn quite a lot or pay someone to code for her. It was far too much to do as a favour by a friends or such. And, since it was part of her fucking PHD it would have been cheating somehow of she didn't do it herself. But instead, she kept texting me if I could 'help to fix some bugs', sending me unrelated code fragments she copied from SO and not even tried to understand. So I told her to fuck off at one point. After all it was not that we have been friends for decades; we only knew each other for a couple of months an spent only one week together. So thats it.
But I still think of it from time to time and it makes me angry because it feels like she was only nice to me because she thought i am this nerd guy who falls instantly in love to a charming good looking girl and does everything for her. I did neither at all but indeed wanted to be friends with her, thats bad enough. It even makes me more more angry that she actually has this awesome PHD project about politics in the fucking digital world and think of programmers like this. And that she will succeed without understanding anything bacause in the end there would have been a dude who did all the work for her I bet.8 -
At a large enterprise-sized company, you are protecting the code and product from outside / bad actors constantly trying to break in. (🧠)
At a medium or small-sized company, you are protecting the code and product from clueless customers or users who can potentially break things for themselves. (🧠🧠)
At a sTaRtUp, you are protecting the code and product from being destroyed by the incompetent owners themselves. (🧠🧠🧠+)4 -
Rule number 1 in performances debug :
It's always I/O.
If it's not IO, then the code should be REALLY bad.12 -
This would be my first official post.
Been a IT Technician for a managed service provider for the past 9 years up until last year August. Managing director pulls me in with a movement to App Development after coming across some personal hobby projects I have done in the past.
Started in the new position in November as Junior Developer and workloads get dumped on me and left to figure it out. 4 weeks of running through code without documentation and the solutions started to make sense.
Started a new solution for a Large remote customer with documentation and timelines in December and I get pulled in again for a second time in front of the MD.
Good News:With effect in January I have been promoted to Head of Application development.
Bad News: The existing department head is leaving end of the month and I am to go 900km from home to hand over all responsibilities for the next 3 weeks.
Better News: Department has started shifting to DevOps and it is up to me to set the policies and work flows to how I see fit.
Worse news: it starts by expanding the team asap as 10 projects accounting to 4000 man hours with deadlines in Q3.
Wish me luck. It's going to be twisted Rollercoaster ride...5 -
The scary thing about burnout is that you usually don't realize you are burning out before it's too late.
Personally, at least, I've worked on projects that just felt a little intense at the time, but after taking a step back due to holidays or hitting some milestone I realize I never want to have anything to do with it ever again. One project makes my stomach drop even today every time I see the code; Not because the code is bad, but how it takes me back to how miserable I was without admitting it to myself.
The biggest red flag I look for is when I'm tempted to work on stuff in my free time. When this starts seeming like a solution there's a serious problem with the project that needs to be addressed.2 -
I have been working on this software for 3 years now. The code base was a working prototype made by my boss before I came, not more, not less. Php + Angular. Have been refactoring a lot, backend is backed with hundreds of tests now, frontend still lacks a lot. Still a lot of programm structures are still the same weird ones my boss once created in a rush between two meetings while learning Angular to get the prototype finished. Now it's used in production which makes hard to refactor, because we have to maintain backwards compatibility. Neither the parts I added or refactored completely are satisfying, because they are built on this structures, because i never got any feedback for anything I decided and because I changed my own paradigms over time.
So I am all alone on this project. All genuinly new projects are assigned to the new team members (i was the first one, no we are five plus my boss) because I wont have time, have to maintain the old one. So I never can do something new which is quite frustrating.
I did a little side tool, the only thing I invented and did completely by myself in our repertoire - and now some stakeholder shows big interest onto this. Instead of giving me the task to make a real project from this my boss wants to give it to them to develop it. Why? Because I need more time for the main application.
Also the more the software is used the more bug tickets and feature requests come. I was crying for help for months but the others had appareantly more important stuff to do.
This might be true to some extend. Yesterday we had some kind of crisis meeting and my boss wanted again to assing pur junior to help me, who has a shit load of other things to do and is a student. I insisted that this would not be enough, and one of the fulltime devs has to get involved because the thing is our core application and I am only part time btw. So my boss said we wont decide today but one of them should do it. They should have some time to figure out who which is understandable but it's not that I didn't keep saying this for months. Now they are all like whimp whimp when I have to do php i will quit. The new projects are all typescript, with node backend if any. But alas, one of them even said yesterday he doesn't want to do js anymore. Okay... but... this is our tech stack then get another job allready?
And I should do the same probably. But then again I feel very sorry for my boss who helped me in very dark times of corona and more. If both of us leave, the project he worked on for decade (including convincing poeole, collect money..) might be suddenly at it's end while he is so exited about it's access today...
I also get insecure if it's really that they hate php so much or that they don't want to work with me personally because maybe I am a bad team Player or what?
I experienced the same at my old workplace, got left alone with big parts of the project because they didn't want to do php and js in this case and it ended up five devs doing the python backend and me doing the frontend and the php cms part all alone. Then I quit and now everything seems to happen again.
And then again I think I am only fucked up so hard by this stuff because I do not really like being a developer at all. I only do it for the money and because I am good at it (at least i think so. Nobody ever bothers to ever to read my code and give me feedback, because you know, php and js). So I guess I would hate any other job in the field maybe likewise?
This job *is* convinient, salary, office
position, flexibility could not be better. At the end of the day it's not that stressfull. And i don't have any second of freetime (due to family) or energy i could offer a new and more demanding employer, can't work over time or even take a fulltime position, can't home office, can't earn less, can't travel very long to the office and especially can't go back to school to learn something completely new. Some of these constraints are softwe then other naturally but still my posibilities at the Moment are very limited. That might change in about five years if the family situation changed. So it would most likely be reasonable to stay until then at my current job? And bear being alone with this app, don't getting involved on any new project, don't learn anything new, don't invent anything.
There was one potential way out, they considered offering me PHD position to the upcoming ml part of the project... But I learned that I would attend to a bunch of classes at university first, which i would like to, but I don't think i have the time.
I feel trapped somehow. I also feel very lonely in the Office because those fucktards keep saying in home office.
Man, I don't want to go to work today.6 -
I'm writing a ML course that explains concepts by going through/getting the reader to write simple implementations of concepts. I've written a decision tree in 250 lines of code (including plotting it), that is 100 times faster than another (hilariously bad) attempt at a simple decision tree, and it's far more readable than anything else I've seen.
I'm having a good day.9 -
That feeling when you’ve got a reputation of preciseness etc, and the code you just submitted for review has so many silly little mistakes you just want to do that ostrich thing. Gosh, how can I suddenly suck at my job this bad?
Okay, the changes affect EVERYTHING in our codebase (a major change in core business logic), and there is no way I could’ve tested every possible case by myself without a decent coverage of automated tests - which we obviously don’t have. So yet another argument for it (damn management, won’t you listen?!)… but still, some of the mistakes found during code review make me seem like a complete idiot.9 -
It's funny how you start feeling bad for the next dev taking over your project because it turned into a total spaghetti code shit show that will be impossible to maintain in the future with new features coming in.
Honestly... if a projects starts out with a certain scope which then gets extended EVERY FUCKING WEEK with requirements that can't even be met in the initial timeframe it's no wonder the code quality will decrease over time.
This just reminds me daily how important good project management (and I'm not talking about suit wearing pain-in-the-ass-managers) and the inclusion of devs in the planning process really is.
It's so fucking crazy that companies run like that with people up front that have NO FUCKING CLUE what they are doing, nor do they understand the mechanics, tech and effort that go into certain features. They're like "beep, boop, it's done by Friday you fuck!".
The funniest part of this stupid charade is that the closer we get to a new "deadline" (we will not meet the deadline anyways) the more nervous the "managers" get. WHY didn't you properly plan this shit in the first place? WHY didn't you care for the last six months where all this fucking bullshit could still have been prevented?
Meanwhile I'm just so sick and tired of this shitty project and this sucky company that I just don't have any motivation left to keep on working. It's so fucking hard and painful to work on projects that suck ass, are poorly designed. I just got to the point where coding is no fun any more. Thank god I'm out of here soon... fml5 -
I always had this mentality that I shouldn’t rely on a certain library or framework for my entire project because what if one day they stop supporting it. (Yeah I’m talking to u vuetify) That’s why I came up with this code structure that for everything that I wanna do I have a ‘driver’ library all coded by myself that interacts with that third party framework or library so if they stop supporting it I could just change a couple of lines of code in my driver file and my codebase should be working again. But I feel like this ‘driver’ approach is not the most efficient way of going in terms of memory usage. Do you guys think I should keep it simple and directly use those libraries or this is actually not a bad approach.7
-
Today was a bad dev day working on a shitty React project. Not that React in itself is bad, but it can be hell to work with when the code is a big pile a crap full of anti pattern code. I spent the day refactoring to try to fix a bug, but to no avail. It would take days if not weeks to put some order in this mess and to prevent such bugs.6
-
!RANT
Web Devs - I need your opinions.
To make a long story short, when my fiancé and I first moved in together I changed cities. One day at the grocery store we ran in to one of his old buddies, whom I had never met. His buddy works as a counselor at a non profit organization for mental illness. His friend asked me some questions to get to know me and found out I was a web developer. He instantly got exited and told us they needed a new website for their non profit, and asked me what I charged. Being shy, put on the spot, newer to the industry (uncomfortable talking $ due to inexperience) and seeing the guy was paralyzed I felt I HAD to say yes. I also said I would consider donating the site to them, as I knew my other web dev friends had done that for other non profits.
They were easy to work with and the build went smooth. We chose Wordpress so that they could go in and update the site on their own. I was under the assumption that I would create the site for them, but that they would take care of changes on their own, that I wouldn't be "supporting it". I even trained the friend 2-3xs on how to use Wordpress and make changes, but they ALWAYS have changes every month, including slides and content creation. Being a noob at the time, I KNOW it's my fault for not being more clear on the I'll build it but not make changes thing, and I've tried to kind of get them to see that I'm too busy, politely.
We'll, 3+ years later I've now found success in a different career path that takes up ALL of my free time after my 9-5 corporate web dev position, and am no longer interested nor able to do freelance work, including supporting existing sites. Since we don't have a contract in place, and they've never given me a cent, i was thinking of giving them a notice at the end of this month saying as of 2018 I will no longer be able to take care of their website, and that they'll have to find someone else by that time? I feel bad because it's a non profit and they don't have a lot of money. I'm afraid they won't find someone else nor be able to afford it. The situation is a little more sticky since this is my fiancés friend and I don't want them to feel like I'm leaving them high and dry, cuz I know they're very thankful for the site. I just wish they understood that I never promised to do changes for them every month. Even if they offered me money, I just don't have the time. I'm 100% fine if they want to keep the site and my code, although they really could use a redesign anyways cuz my code back then was terrible. What are your thoughts on this? Is 5 months fair? Am I doing the right thing?8 -
Until today, I had assumed deploying stuff to prod would NOT be one of my responsabilities in this company. Apparently that's not the case.
Had to deploy my code and pray it didn't break anything. Why is this a big deal at all?
Well you see, there is no repository. At all. No git, no svn, not even duplicate folders. No tests, no pipeline. Just a bunch of CPanels.
Had to manually copy files and folders from the development site to the production site and partially copy a database. "Just drag and drop" were the instructions I was given.
As if using CakePHP2, PHP5 and having to parse fucking Excel files wasn't bad enough, now I have to deal with one of the worst ways to deploy code.
Fuck it, I'm switching on the looking-for-job flag on linkedin.5 -
Now that I have to use Microsoft Teams chat, I don't find Slack that bad anymore. Teams doesn't support threads, source code is poorly formatted without any syntax highlighting, and emojis look shitty.11
-
No, the language is not stupid :) No, it is not a problem of the language, it's just the fact that you don't really understand how to use it properly :) i think this is something each of us hates to hear while frustated but needs to hear afterwards, bad design is a posibility tho, but 99.999% of the cases is our fault. face it, nd overcome it! and finally, to grow beyond it 😄
<<edited with my potato phone's standard image editor>> -
I’m so fucking tired of having to work with shitty code day in and day out and not being able to optimize it. I want to quit so bad without having a job lined up… I fucking hate being a developer now thanks to these fucking pieces of shit.7
-
One of my bad dev habits is that I tend to take up too much work because a lot of devs I had to work with seemed not competent enough. It's a bad habit because I get way overworked which influences code quality and deadlines.
I have to learn to trust more in others and give up some responsibility... it's hard though.
I think a big influence on my mindset has been that I never worked in a team bigger than 4 developers and I had way more experience in web dev than the others.
I sometimes may appear as an arrogant prick, but it's not intentional.9 -
Switching workplace after new year.
Already told boss I'm quitting last week. And it is like as soon as It was official I lost all patience with the company bullshit and lost the little interest I had left for my daily work. The codebase seemes bad before but now it feel 100x worse.
Work ethic keeps me from doing nothing but man I just want to get out.
Will be so nice to work with a new project and code base.1 -
Killing people is bad. But, there should be a law to allow killing people who don't write proper unit tests for their code. And also those "team leaders" who approve and merge code without unit tests.
Little backstory. Starts with a question.
What is the most critical part of a quoting tool (tool for resellers to set discounts and margins and create quotations)? The calculations, right?
If one formula is incorrect in one use case, people lose real money. This is the component which the user should be able to trust 100%. Right?
Okay. So this team was supposed to create a calculation engine to support all these calculations. The development was done, and the system was given to the QA team. For the last two months, the QA team finds bugs and assigns those to the development team and the development team fix those and assigns it back to the QA team. But then the QA team realizes that something else has been broken, a different calculation.
Upon investigation, today, I found out that the developers did not write a single unit test for the entire engine. There are at least 2000 different test cases involving the formulas and the QA team was doing all of that manually.
Now, Our continuous integration tool mandates coverage of 75%. What the developer did was to write a dummy test case, so that the entire code was covered.
I really really really really really think that developers should write unit tests, and proper unit tests, for each of the code lines (or, “logical blocks of code”) they write.20 -
Does anyone think tech recruiters are failed used car salesmen?
Bad experiences this week
One reached out to me on clearance jobs to apply for a job that I applied for, interviewed and was turned down for because of course they do not know Javascript is not Java and they were looking for a Java developer. She didn’t remember and then never responded. Out of spite I replied all to the last email that company sent me but of course no one responded.
This person who says that she is a recruiter for GOOGLE does not know the difference from UX designer and UX developer.
“ UX design still involves coding... idk where you got information that UX designers don't code but they absolutely do. UX designers are simply front end software engineers that work on refining the user experience of a particular program app or website.”
I don’t know because I used to be a fucking UX developer and used to work with UX designers??? Who didn’t code because figuring out what humans what is tough enough on it’s own. UI designers may know html/css but that is it.
I know we are going into a recession and I need to start being nice to these dumb recruiters because I may need them one day.3 -
How to disconnect from work after working hours? Im working for the last 4 months as a mid level dev in this company. I mean Im able to problem-solve and do my work but sometimes I get so addicted to problem solving that I get worried and become obsessed, hyperfixated (especialy if Im stuck on something for lets say a couple weeks). It goes to the point where I work from home 12-14 hours a day just to figure out some bug in the flow.
Thing is, our codebase is large and when doing every new refactor/feature some surprises happen. I dont have a decent mentor who could teach me one on one or even do pair programming with. All i have is just some colleagues who can point me to right direction or do a code review from time to time. Thats it.
I dont know why I take this so personally. For example I had to do a feature which I did in 1 week, then MR got approved by devs and QA. After that during regression they found like 3 blockers and I felt really bad and ashamed. While in reality our BA did not define feature properly, devs who reviewed it didnt even launch the code and poke around in the app, and our team's QA tested only the happy scenario. Basically this is failing/getting delayed because of a failure in like 6-7 people chain.
However for some reason Im taking this very personally, that I, as a dev failed. Maybe due to my ADHD or something but for the next days or weeks as long as I dont find solution I will isolate myself and tryhard until I get it right. Then have a few days of chill until I face another obstacle in another task again. And this keeps repeating and repeating.
My senior colleague tells me to chill and dont let work take such a toll on my emotional/physical/mental health. But its hard. He has 7 years of experience and has decent memory. I have 2-3 years of experience and have ADHD, we are not the same. I dont know how to become a guy who clocks out after 8 hours of work done everyday. Its like I feel that they might fire me or I will look bad if I dont put in enough effort. Not like I was ever fired for performance issues... Anyways I dont know how to start working to live, instead of living for work.
I hate who Im becoming. I dont work out anymore, started smoking a lot, dont exercise. I live this self induced anxiety driven workaholic lifestyle.6 -
i had an epiphany today, in a discussion with the software architect of our new project.
i'm having the epic job to design & implement a prototype for a C++ library in a new software project and collected some inspiration in our "old" software, where i'm maintaining the module that fulfills the same functionality (i thought). i've been maintaining this module for around a year now. i analyzed the different features and stuff to consider and created a partial model of the new library.
when i showed it to the architect today, he was like "oh my god, no no no, you don't need all this functionality, this shall not be part of the new library!"
this was the moment when i realized how deeply fucked up the code base of the old module is.
imagine it like this:
you want to automate the process of making yourself a good ol' cup of coffee.
the reasonable thing would be to have
- a smart water boiler where you set parameters water temperature and amount of water to be fetched from the water supply
- a smart coffee bean grinder where you can set type of beans, amount of beans and grinding fineness
- a component where water and ground coffee are joined to brew the coffee, where parameters like duration, pressure etc. are set
- a milk tank where amount of milk, desired temperature and duration / speed of foaming can be set
- a sugar dispenser where amount of applied sugar can be set
- optionally, additional modules with spices, syrup, ice cubes, whatever for your very personal coffee experience
on requesting a coffee, you would then configure and orchestrate all components to your wishes to make you a fine cup of coffee. you can also add routines like "makeCappucchino()", "makeEspresso()", or whatever.
our software is not like this.
it is like this:
- a smart water boiler consisting of submodules that know how to cook water for e.g. "cappucchino with sugar" or for "espresso without sugar, but with milk and ice cubes"
- 5 smart bean grinders that know how to grind beans for e.g. cappucchino, espresso, latte macchiato and for 73ml of water preheated to 82°C
- a very smart sugar dispenser that knows how to add sugar to 95, 98 and 100°C coffee and to coffee made of BOTH coffee arabica AND coffee robusta beans.
etc. etc., i think you're getting the gist.
when i realized this, it was like, right in front of my eyes, this terrible pattern emerged like a foul, corrupted caleidoscope of chaos, through the whole code base of this module.
i've already known how rotten from the core this code base is, but today i've actually identified a really bad pattern that i hadn't realized before. the whole architecture is so bloated that it is hard to have an overview of the whole thing. and it would require a LOT of refactoring to repair this pattern.
but i guess it would also be infinitely satisfying because i could probably reduce the code base for 30% or something...
but unfortunately, this is never going to happen, because screw refactoring.
it's a great feeling to start this new library from scratch, tho...6 -
For now I decided to give less shits about bad code and the job. Unfortunately I am not resolute enough right now to steer a ship going in the wrong direction. Once clock hits 5 this homeboy is out.
-
My best and worst dev experience this year was getting a new job.
The bad parts: I’m inheriting a code base that was maintained by an outside agency, so there’s very little documentation. There’s a lot of systems maintenance and upgrades that have to be done because it was never done. I’m working at a larger organization, so tracking down who I need for info can be tricky. I’m the only person maintaining my code base.
Now the good parts: Better pay and benefits. My co workers, dev and non-dev, are always helpful. Since the dev team is small, we are very discerning when we pick up work for the websites. I have more independence to self-learn. I’m not at a blame culture. My role is permanently remote.
So far I think the good outweighs the bad.2 -
when people attribute you as the author of bad code you didn't write, as you receive PR feedback to update it
when you are updating something different in the same area3 -
not sure if actual bad habit, or just a natural consequence of what i'm writing often being de-facto "exploratory code" so the "bad habit" is actually the right choice, or...
but very often when i finish a functionality and look at the first version of the code, and realize how bad it is, and how it blocks me to implement following features... rather than just fix/improve that code, i just want to nuke all of it and write it from scratch again, and "better this time", because it seems like much less work and effort than trying to gradually fix it "in-place".
it definitely feels like a bad habit though, because it often results in me deleting and implementing to completion the same thing 4 times in a row. -
Best:
Seeing ALL the members of my team finally coming into their own. One person tackled our entire not-at-all-simple CI/CD setup from scratch knowing nothing about any of it and, while not without bumps in the road, did an excellent job overall (and then did the same for some other projects since he found himself being the SME). Two of my more junior people took on some difficult tasks that required them to design and build some tricky features from the ground-up, rather than me giving them a ton of guidance, design and even a start on the basic code early on (I just gave them some general descriptions of what I was looking for and then let them run with it). Again, not without some hiccups, but they ultimately delivered and learned a lot in the process and, I think, gained a new sense of self-confidence, which to me is the real win. And my other person handled some tricky high-level stuff that got him deep in the weeds of all the corporate procedures I'd normally shield them all from and did very well with it (and like the other person, wound up being an SME and doing it for some other projects after that). It took a while to get here, but I finally feel like I don't need to do all the really difficult stuff myself, I can count on them now, and they, I think, no longer feel like they're in over their heads if I throw something difficult at them.
Worst:
A few critical bugs slipped into production this year, with a few requiring some after-hours heroics to deal with (and, unfortunately, due to the timing, it all fell on me). Of course, that just tells us that next year we really need to focus on more robust automated testing (though, in reality, at least one of the issues almost certainly would not - COULD NOT - have been caught before-hand anyway, and that's probably true for more than just one of them). We had avoided major issues the previous three years we've been live, so this was unusual. Then again, it's in a way a symptom of success because with more users and more usage, both of which exploded this year, typically does come more issues discovered, so I guess it tempers the bad just a little bit.2 -
Currently having very funny project lead, who gives on the spot estimates for 9 years old very pathetic quality code having Android app in security domain. Memory leaks, bad practices, typos, CVEs etc. you name it we have it in our source of the app.
Since 5-6 sprints of our project, almost 50% of user stories were incomplete due to under estimations.
Basically everyone in management were almost sleeping since last 7-8 years about code quality & now suddenly when new Dev & QA team is here they wanted us to fix everything ASAP.
Most humourous thing is product owner is aware about importance of unit test cases, but don't want to allocate user stories for that at the time of sprint planning as code is almost freezed according to him for current release.
Actually, since last release he had done the same thing for each sprint, around 18 months were passed still he hadn't spared single day for unit testing.
Recently app crash issue was found in version upgrade scenario as QAs were much tired by testing hundreds of basic trivial test cases manually & server side testing too, so they can't do actual needful testing & which is tougher to automate for Dev.
Recently when team's old Macbook Pros got expired higher management has allocated Intel Mac minis by saying that few people of organization are misusing Macbooks. So for just few people everyone has to suffer now as there is no flexibility in frequent changing between WFH & WFO. 1 out of those Mac minis faced overheating & in repair since 6 months.
Out of 4 Devs & 3 QAs, all 3 QAs & 2 Devs had left gradually.
I think it's time to say goodbye 😔4 -
Here is a gem I found when looking at the previous offshore team's database.
So apparently they didn't know that SQL has an ALTER TABLE command to add new columns. So they created a brand new table, version 2, THEN migrated all the data over, every single time a new field was needed.
Then of course they had to update all their code that previously looked at the original table and the clients had to resync data onto the tablets as well.
Maybe they thought it was a good solution since they don't know what database versioning is (something they also manually implemented) or that ORMs exist.
**Sanitized the table names but kept the general structure, casing, etc
CREATE TABLE [dbo].[TVP_NameHere] AS TABLE(
[NameTime] [datetime] NULL,
[NameId] [int] NULL,
[somethingId] [int] NULL,
[fooId] [int] NULL,
[Time] [int] NULL
)
CREATE TABLE [dbo].[TVP_NameHereV002] AS TABLE(
[NewColumnHere] [int] NULL,
[NameTime] [datetime] NULL,
[NameId] [int] NULL,
[somethingId] [int] NULL,
[fooId] [int] NULL,
[Time] [int] NULL
)3 -
I am a junior developer, two weeks ago I got a job for the first time in my life as a fullstack web developer, I have felt bad for the times that "I should have read the code better before coding", I think I am distracted and impatient. I make mistakes because I don't know how the system works in some parts and I write repeated or unnecessary code, my boss has corrected me, but I feel very stupid and I'm afraid of being fired. Is it normal to feel like this?2
-
One day, the Director of Web Ops (marketing role) submitted a ticket to update the list of product categories on the website’s navigation. Sounds like a simple ticket right? Just some html edits. Nope. Every day for three days, she changes her mind and adds new changes. What should have taken me 10 minutes stretched out to three days. She held up code review of my ticket because she kept making changes.
She had plenty of time to sort out what she wanted. That ticket had been sitting in the To Do pile for two days before I touched it.
She was being an asshole because she knew she could get away with it and I had no recourse: my direct manager was on vacation, the entire dev team was going to be laid off anyway so no one was going to defend us on “trivial” matters, and we were going to enter code freeze soon so she’d just argue it was critical business changes for our critical revenue season.
I suspect she was also just not good at her job. I never met her in person because she was hired during the 2020 pandemic and we were all working remotely. I did see her make a five minute presentation during an all staff meeting…and she didn’t come off too well. Her voice was trembling during her turn to speak…like she was not confident or not prepared.
She knew she was causing chaos but she put on this act of not knowing. She was definitely trained on our dev team’s practices for tickets and deployments. She knows about code review, beta testing, and user acceptance testing that has to happen before a ticket can be deployed.
It happened to be before Thanksgiving weekend 2020. Our deploy was going to happen on Tuesday instead of Thursday because Thursday was a holiday (no one would be working) and Wednesday was a half day.
Tuesday afternoon at 1pm, she messages me and the dev in charge of deploy about more changes! My time is already occupied because our Product Manager went on vacation and dumped a large amount of user acceptance testing on me. I scream at my computer at that point because I realize I’m in the ninth circle of hell. I tell the other dev in a separate message that Web Ops has been making changes EVERY DAY since I picked up that ticket.
Other dev tells her that we have to check with the C-suite executive for engineering because we’re not allowed to make changes to tickets so close to the deploy. This is actually the policy. He also tries to give Web Ops the benefit of the doubt because we’re not deploying on our usual day. He had to do that to so she didn’t feel bad (and so she doesn’t complain about us not working towards the company’s goals).
Other dev had to do the code changes because I was otherwise occupied with user acceptance testing. If I were him, I’d be pissed that I was distracted from concentrating on the deploy so close to the holiday.
Director of Web Ops was actually capable of even more chaos. I ranted about it before. For that dramatization and if you want to go down the rabbit hole, see: https://devrant.com/rants/4811518/...4 -
Does anyone even use AWS CDK?
I saw something about CDKv2 getting released and immediately made up my mind about it and just want to validate my opinion.
I'm having a hard time thinking of a case where I would need to use yet another layer of bullshit to deploy cloud infra.
It's bad enough with terraform(which I far prefer over cloud formation). But now you can use python or node? What's next, deploying with XSLT?
I'm partially ranting, because I know someone on my team is going to show this as the "new thing" and I'll be stuck maintaining my code...as code--and that really pisses me off.
I'm also legitimately curious on how many of you have run across this being used successfully and for what problem did it solve?10 -
This is more of an advice seeking rant. I've recently been promoted to Team Leader of my team but mostly because of circumstances. The previous team leader left for a start-up and I've been somehow the acting Scrum Master of the team for the past months (although our company sucks at Scrum generally speaking) and also having the most time in the company. However I'm still the youngest I'm my team so managing the actual team feels a bit weird and also I do not consider myself experienced enough to be a Technical lead but we don't have a different position for that.
Below actions happen in the course of 2-3 months.
With all the things above considered I find myself in a dire situation, a couple of months ago there were several Blocker bugs opened from the Clients side / production env related to one feature, however after spending about a month or so on trying to investigate the issues we've come to the conclusion that it needs to be refactorised as it's way too bad and it can't be solved (as a side note this issue has also been raised by a former dev who left the company). Although it was not part of the initial upcoming version release it was "forcefully" introduced in the plan and we took out of the scope other things but was still flagged as a potential risk. But wait..there's more, this feature was part of a Java microservice (the whole microservice basically) and our team is mostly made of JS, just one guy who actually works as a Java dev (I've only done one Java course during uni but never felt attracted to it). I've not been involved in the initial planning of this EPIC, my former TL was an the Java guy. Now during this the company decides that me and my TL were needed for a side project, so both of us got "pulled out" of the team and move there but we've also had to "manage" the team at the same time. In the end it's decided that since my TL will leave and I will take leadership of the team, I get "released" from the side project to manage the team. I'm left with about 3 weeks to slam dunk the feature.. but, I'm not a great leader for my team nor do I have the knowledge to help me teammate into fixing this Java MS, I do go about the normal schedule about asking him in the daily what is he working on and if he needs any help, but I don't really get into much details as I'm neither too much in sync with the feature nor with the technical part of Java. And here we are now in the last week, I've had several calls with PSO from the clients trying to push me into giving them a deadline on when will it be fixed that it's very important for the client to get this working in the next release and so on, however I do not hold an answer to that. I've been trying to explain to them that this was flagged as a risk and I can't guarantee them anything but that didn't seem to make them any happier. On the other side I feel like this team member has been slacking it a lot, his work this week would barely sum up a couple of hours from my point of view as I've asked him to push the branch he's been working on and checked his code changes. I'm a bit anxious to confront him however as I feel I haven't been on top of his situation either, not saying I was uninvolved but I definetly could have been a better manager for him and go into more details about his daily work and so on.
All in all there has been mistakes on all levels(maybe not on PSO as they can't really be held accountable for R&D inability to deliver stuff, but they should be a little more understandable at the very least) and it got us into a shitty situation which stresses me out and makes me feel like I've started my new position with a wrong step.
I'm just wondering if anyone has been in similar situations and has any tips or words of wisdom to share. Or how do you guys feel about the whole situation, am I just over stressing it? Did I get a good analysis, was there anything I could have done better? I'm open for any kind of feedback.2 -
getting mogged by people with less experience and/or spending less effort
it's almost a talent for me to be this bad at being a code monkey -
I’ve become so indecisive in terms of knowing what I want from my career.
All I know is what I don’t want (to end up a in management)
I’m definitely getting a new job and right now it looks like I’ve got 3 offers on the table
Option 1, a previous company I worked for. Still the same problems with the company there as before but the work was interesting and unusual. and my line manager was a good guy.
They have practically no legacy code.
Not much in the way of company benefits but they’re local and it would be nice to see friends again.
So feels like the pull to this is strong.
Option 2, a fully remote company that I’ve been referred to by an ex-workmate.
They’ve not even tech tested me because they’ve read my blogs and GitHub repos instead and said they’re impress. So just had a conversation with them. I feel honoured that they took the time to look at what I’ve done in my own time and use that in their decision.
Benefits are slightly better than option 1 (more hols)
But they’re using .net 6 and get a lot of heavy use on their system and have some big customers. I think the work is integrations to start with and moving services into docker and azure.
Option 3, even though I’ve got an offer from this one but they can’t actually explain the work until We can arrange a call next week (they recruit and then work out what team your in, but Christmas got in the way of me having a call with them straight away)
It’s working on government systems and .net is their least used stack so probably end up switching to Java. Maybe other tech stacks too.
This place has much better benefits than option 1 and 2 (more hols and more pension), but 2 days a week in office.
All of the above pay the same salary.
Having choice feels almost as bad as having no choice.
It’s doing my head in thinking about it , (even tho I might as well not think about it at all until the call with option 3 happens).
On the one hand with option 3, using a tech stack that’s new to me might be refreshing, as I’ve done .net for 10 years.
On the other hand I really like c# and I’m very good at it. So it feels a bit like I should be capitalising on that and using my experience to shape how the dev is done. Not sure I and I can do that with option 3, at least for a while.
C# feels like it’s moving forward nicely and I’m not sure I can say the same for Java or other languages.
I love programming and learning new stuff but so unable to let things go. It’s like I have a fear that c# will move on without me and I’ll end up turning into one of those devs whose skills are a decade out of date.
Maybe the early years of my career formed me in this way.
Early on I worked at a company where there was a high number of Cobol devs who thought they had a job for life.
But then redundancies came and many left. Of those who stayed they had to cross train to Java and they just couldn’t do it.
I don’t think the tech was hard for them, I think they were just so used to not learning that they could no longer adapt.
Think most of them ended up retiring after trying to learn Java for a few years.8 -
Am I right? Is this micro management?
So, in my new team, I have another coworker is my buddy, we are same level and I doubt here coding techniques as I have seen very bad code written by her.
The thing is, whenever I need to pick up a new jira, she starts telling me what code I need to change, without me understanding the ticket or the code.
She forced a code change which was obviously a bad one.
She asked me what did I do yesterday and said that I could have worked on this jira.
Although this is a start but I don't want yo waste my time working with someone who is trying to micromanage when I clearly have the potential to be working without her micro-managemnt.
The problem I see is that her priority is not learning but I don't know what is that but she worked on the tasks which are clearly not our teams work, in the initial informal chat she was too concerned with people being young in the company like who is married who is not etc.
I don't see her as a good developer.
Should I move to other project? or am I overreacting?7 -
My programming class kinda sucked. Here's why.
1. They taught C++. To students who had never seen a line of code in their lives. The language with 90+ keywords.
2. The teacher. We had to use switch statements to do something. It took around 300 loc. I used an array and shortened it to 5. He took some points away for not doing it correct. IT LITERALLY WORKS THE SAME AND IS SHORTER. This was not the first time I had shortened something/made it more readable and been docked points on the assignment.
3. Commenting. He told us to comment as much as possible, which is not correct. Comment what needs commenting. Not everything.
4. The compiler. We worked on windows with an online compiler. He decided teaching us to set up a compiler was too hard. We used onlinegdb, which isn't inherently bad. However, onlinegdb is based on Linux. He compiled our programs with a windows compiler.
Maybe these are just problems because I've programmed before that, but I still think they are red flags. What do you think?3 -
Mongodb CEO and the developer who build this shit for brains interface should be tarred and feathered. Almost 90minutes in and I cannot connect to anything other than error codes. What in the actual fuck is your job other than to make it difficult for a "free tier" user to connect?
"connect ECONNREFUSED 127.0.0.1:27017"
Oh ok another 20 minutes of work and you give me a bland beige error code like "```TLS/SSL is disabled. If possible, enable TLS/SSL to avoid security vulnerabilities.```"... um ok how do I enable it for your site, your database or on my computer... oh wait you don't say shit do you?
So now I'm fully 81 minutes into this shit show and all I get for error codes are these really descriptive gems 'getaddrinfo ENOTFOUND cluster0.hudbd.mongodb 'dot' net` comes up if I choose `mongo` with "connection string scheme" above it or `bad auth : Authentication failed'7 -
⛔ Rust error: expected Config, found ().
💡 Actual error: process is undeclared.
The actual error has no relation to the error reported by the Rust code checker. So bad7 -
Anytime I write a line of code that works correctly the first time, I’m ecstatic. If I write a whole block or function that works right the first time, I freak out with happiness. Yes, I’m that bad at coding. The rest of y’all probably do such things on the regular and it no biggie. But for me, it’s vanishingly rare.
-
VS Code terminal is so bad... it is basically the worst part of VS Code; the devs can never fix it
The terminal in VS Code breaks for me all the time; it is so easy to break it; all it takes is change the size of the terminal window and bam, it is broken
The devs should either fix their shitty terminal or remove it entirely because it confuses people; I literally see wrong output from my program because of their terminal1 -
tutorial code doesnt have enough comments
not some bs header before a function and explanations. like, a snippet of bad code and why youre doing it how you are, or an example and then reduction, the evolution of what's what. redundancy.1 -
How do you deal when you are overpromising and underdelivering due to really shitty unpredictable codebase? Im having 2-3 bad sprints in a row now.
For context: Im working on this point of sale app for the past 4 months and for the last 3 sprints I am strugglig with surprises and edgecases. I swear to god each time I want to implement something more complex, I have to create another 4-5 tickets just to fix the constraints or old bugs that prevent my feature implementation just so I could squeeze my feature in. That offsets my original given deadlines and its so fucking draining to explain myself to my teamlead about why feature has to be reverted why it was delayed again and so on.
So last time basically it went like this: Got assigned a feature, estimated 2 weeks to do it. I did the feature in time, got reviewed and approved by devs, got approved by QA and feature got merged to develop.
Then, during regression testing 3 blockers came up so I had to revert the feature from develop. Because QA took a very long time to test the feature and discover the blockers, now its like 3 days left until the end of the sprint. My teamlead instantly started shitting bricks, asked me to fix the blockers asap.
Now to deal with 3 blockers I had to reimplement the whole feature and create like 3 extra tickets to fix existing bugs. Feature refactor got moved to yet another sprint and 3 tickets turned into like 8 tickets. Most of them are done, I created them just to for papertrail purposes so that they would be aware of how complex this is.
It taking me already extra 2 weeks or so and I am almost done with it but Im going into really deep rabbithole here. I would ask for help but out of other 7 devs in the team only one is actually competent and helpful so I tried to avoid going to him and instead chose to do 16 hour days for 2 weeks in a row.
Guess what I cant sustain it anymore. I get it that its my fault maybe I should have asked for help sooner.
But its so fucking frustrating trying to do mental gymnastics over here while majority of my team is picking low hanging fruit tasks and sitting for 2 weeks on them but they manage to look good infront of everyone.
Meanwhile Im tryharding here and its no enough, I guess I still look incompetent infront of everyone because my 2 weeks task turned into 6 weeks and I was too stubborn to ask for help. Whats even worse now is that teamlead wants me to lead a new initiative what stresses me even more because I havent finished the current one yet. So basically Im tryharding so much and I will get even extra work on top. Fucking perfect.
My frustration comes from the point that I kinda overpromised and underdelivered. But the thing is, at this point its nearly impossible to predict how much a complex feature implementation might take. I can estimate that for example 2 weeks should be enough to implement a popup, but I cant forsee the weird edgecases that can be discovered only during development.
My frustration comes from devs just reviewing the code and not launching the app on their emulator to test it. Also what frustrates me is that we dont have enough QA resources so sometimes feature stands for extra 1-2 weeks just to be tested. So we run into a situation where long delays for testing causes late bug discovery that causes late refactors which causes late deliveries and for some reason I am the one who takes all the pressure and I have to puloff 16 hour workdays to get something done on time.
I am so fucking tired from last 2 sprints. Basically each day fucking explaining that I am still refactoring/fixing the blocker. I am so tired of feeling behind.
Now I know what you will say: always underpromise and overdeliver. But how? Explain to me how? Ok example. A feature thats add a new popup? Shouldnt take usually more than 2 weeks to do my part. What I cant promise is that devs will do a proper review, that QA wont take 2 extra weeks just to test the feature and I wont need another extra 2 weeks just to fix the blockers.
I see other scrum team devs picking low hanging fruit tasks and sitting for 2 weeks on them. Meanwhile Im doing mental gymnastics here and trying to implement something complex (which initially seemed like an easy task). For the last 2 weeks Im working until 4am.
Im fucking done. I need a break and I will start asking other devs for help. I dont care about saving my face anymore. I will start just spamming people if anything takes longer than a day to implement. Fuck it.
I am setting boundaries. 8 hours a day and In out. New blockers and 2 days left till end of the sprint? Sorry teamlead we will move fixes to another sprint.
It doesnt help that my teamlead is pressuring me and asking the same shit over and over. I dont want them to think that I am incompetent. I dont know how to deal with this shit. Im tired of explaining myself again and again. Should I just fucking pick low hanging fruit tasks but deliver them in a steady pace? Fucking hell.4 -
update : we are at hr round baby!!!
part 1 : https://devrant.com/rants/5528056/...
part 2 (in comments) : https://devrant.com/rants/5550145/...
the tech market is crazy mann! it's one of the top indie fintech companies in our country and has a great valuation.
i totally felt that they i am crashing the interviews , and am seriously not trying to be humble. before the dsa round , i was trying to mug up how insertion sort works 🥲
--------
now my dilemma is should i switch if i get the offer. in a summary:
current company:
- small valuation but profitable (haven't picked funding for last 3 years , so poast valuation is some double digit million $, but can easily be a unicorn company)
- very major b2b player in my country. almost all unicorns (including this fintech company) and some major MNCs are their client and they have recently acquired a few other companies of us and eu too, making them- a decent global player
- meh work : i love being a cutting edge performer in android but here we make sdks that need to support even legacy banking apps. so tech stack is a lot of verbose java and daily routine includes making very minor changes to actual code and more towards adding tests , maintaining wrapper sdks in react/cordova/unity etc, checking client side code etc.
- awesome work life balance : since work is shit and i am fast enough, i am usually working only 2-4 hours a day. i joined gym, got into shape , and have already vsited 5 places in last 6 months, and i am a guy who didn't used to have time even on sundays. here, we get mote paid leaves than what i would usually need.
- learning opportunities: not exactly from the company codebase, but they provide unlimited access to various course learning platforms like linkedin learning, udemy and others, so i joined some web dev baches and i now know decent frontend too. plus those hybrid sdks also give a light context to new things
new company :
- positives : multi billion valuation, one of the top players in fintech , have been mostly profitable ( except a few quarters)
- positive : b2c so its (hopefully) going to put me back into racing shoes with kotlin, jetpack and latest libraries.
- more $$$ for your boy :)
- negetive : they seem to be on hiring spree and am afraid to junp ship after seeing the recent coinbase layoffs. fintech is scary these days
- negetive : if they are hiring people like me, then then they are probably hiring people worse than me 😂. although thats not my concern what my main concer is how they interviewed. they have hired a 3rd party company that takes interviews of people FOR THEM! i find that extremely impolite, like they don't even wanna spare their devs to hire people they are gonna work with. i find this a toxic, robotic culture and if these are the people in there then i would have a terrible time finding some buddy engineer or some helpful senior.
- negetive : most probably a bad wlb : i worked for an year for a fast paced b2c edtech startup. no matter how old these are , b2c are always shipping new stuff and are therefore hectic. i don't like the boredom here but i would miss the free time to workout :(
so ... any thoughts about it?4 -
So we are 8 devs in our scrum team but 2 major refactors felll on my shoulders (initially they were supposed to be fairly simple tasks, but like that malcolm in the middle video 2 tasks became 10 tasks in the past month) and I have been working from 11 am till 4 am for the past 1 or 2 weeks. Just yesterday I worked until 7am. Slept only 4 hours... Trying to play it cool, since I asked for a raise 5 weeks ago and still waiting for answer.
I havent told anyone because partially its my own stubborness of wanting to learn things and not wanting to bother others with questions, but Im starting to loose it.
And all because my pushed initial features resulted in unexpected blockers so scrum team leaders had an all hands meeting and my newly appointed teamlead started shitting bricks.
Meanwhile all other devs pick a low hanging fruit tasks and sit around for 2-3 weeks while I have to do heavy lifting alone with some guidance from other devs.
We dont even have QA resources. We have 2 new hires who will be useful maybe after 3-4 months and we have 1 QA guy who judging by his output is working part time. Also same guy managed to take 2 weeks of vacation in the past 4 weeks.
So due to lack of QA and due to code reviews taking long time it takes over a week for code to be reviewed and tested and each time if a blocker happens I have like 2 or 3 days to rush until end of the sprint in order to fix the feature for upcoming release or I have to move tasks to another sprint and feel bad about spillover.
Imagine implementing something in 2 weeks, just to wait for another 1-2 weeks for changes to be reviewed/tested and now having to fix blockers. And then teamlead comes up to you with being surprises how come shipping of this is taking longer than 4-5 weeks? Dude, I did my fucking part in 1-2 weeks, its not my fault that other devs perform code reviews late and they dont even launch the app to test. Its not my fault that we have very limited QA resources and our only QA guy is not even testing out everything properly.
Seriously Im starting to fucking loose it. We are basically 8 devs in a team where 2 people are doing all the heavylifting. -
i thought whiteboarding turning into leetcode mediums or harder correctly in 20 minutes or less was bad
now codesignal is fucking us over, tried my first one without researching any of the code score shit
anybody have tips for gaming the system there? i heard claims that speed trumps correctness for their point system (e.g. faster but not passing for all test cases may score higher than slower but all test cases pass) additionally code cleanliness/readability isn't weighed as heavily as the other factors
and to do problems individually to completion further rather than spreading yourself out across multiple problems in an exam
wont deny im still a salty scrub at the end of the day