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 - "brain bug"
-
Yesterday, in a meeting with project stakeholders and a dev was demoing his software when an un-handled exception occurred, causing the app to crash.
Dev: “Oh..that’s weird. Doesn’t do that on my machine. Better look at the log”
- Dev looks at the log and sees the exception was a divide by zero error.
Dev: “Ohhh…yea…the average price calculation, it’s a bug in the database.”
<I burst out laughing>
Me: “That’s funny.”
<Dev manager was not laughing>
DevMgr: “What’s funny about bugs in the database?”
Me: “Divide by zero exceptions are not an indication of a data error, it’s a bug in the code.”
Dev: “Uhh…how so? The price factor is zero, which comes from a table, so that’s a bug in the database”
Me: “Jim, will you have sales with a price factor of zero?”
StakeholderJim: “Yea, for add-on items that we’re not putting on sale. Hats, gloves, things like that.”
Dev: “Steve, did anyone tell you the factor could be zero?”
DBA-Steve: “Uh...no…just that the value couldn’t be null. You guys can put whatever you want.”
DevMgr: “So, how will you fix this bug?”
DBA-Steve: “Bug? …oh…um…I guess I could default the value to 1.”
Dev: “What if the user types in a zero? Can you switch it to a 1?”
Me: “Or you check the factor value before you try to divide. That will fix the exception and Steve won’t have to do anything.”
<awkward couple of seconds of silence>
DevMgr: “Lets wrap this up. Steve, go ahead and make the necessary database changes to make sure the factor is never zero.”
StakeholderJim: “That doesn’t sound right. Add-on items should never have a factor. A value of 1 could screw up the average.”
Dev: “Don’t worry, we’ll know the difference.”
<everyone seems happy and leaves the meeting>
I completely lost any sort of brain power to say anything after Dev said that. All the little voices kept saying were ‘WTF? WTF just happened? No really…W T F just happened!?’ over and over. I still have no idea on how to articulate to anyone with any sort of sense about what happened. Thanks DevRant for letting me rant.15 -
My biggest dev blunder. I haven't told a single soul about this, until now.
👻👻👻👻👻👻
So, I was working as a full stack dev at a small consulting company. By this time I had about 3 years of experience and started to get pretty comfortable with my tools and the systems I worked with.
I was the person in charge of a system dealing with interactions between people in different roles. Some of this data could be sensitive in nature and users had a legal right to have data permanently removed from our system. In this case it meant remoting into the production database server and manually issuing DELETE statements against the db. Ugh.
As soon as my brain finishes processing the request to venture into that binary minefield and perform rocket surgery on that cursed database my sympathetic nervous system goes into high alert, palms sweaty. Mom's spaghetti.
Alright. Let's do this the safe way. I write the statements needed and do a test run on my machine. Works like a charm 😎
Time to get this over with. I remote into the server. I paste the code into Microsoft SQL Server Management Studio. I read through the code again and again and again. It's solid. I hit run.
....
Wait. I ran it?
....
With the IDs from my local run?
...
I stare at the confirmation message: "Nice job dude, you just deleted some stuff. Cool. See ya. - Your old pal SQL Server".
What did I just delete? What ramifications will this have? Am I sweating? My life is over. Fuck! Think, think, think.
You're a professional. Handle it like one, goddammit.
I think about doing a rollback but the server dudes are even more incompetent than me and we'd lose all the transactions that occurred after my little slip. No, that won't fly.
I do the only sensible thing: I run the statements again with the correct IDs, disconnect my remote session, and BOTTLE THAT SHIT UP FOREVER.
I tell no one. The next few days I await some kind of bug report or maybe a SWAT team. Days pass. Nothing. My anxiety slowly dissipates. That fateful day fades into oblivion and I feel confident my secret will die with me. Cool ¯\_(ツ)_/¯12 -
This one project at my study.
We always had to do quite some documentation, even some in a way that works the opposite of how my brain works.
That's all fine if you can agree on doing it differently.
Had this teacher who valued documentation above anything else. The project was 10 weeks, after 9 weeks my documentation got approved (yes, not a single line of code yet) and I could finally program for the remaining 5 days.
Still had quite some bugs at say number five, the day of presentation.
I imagined that'd be okay since I only had 4 full days instead of the 5-8 weeks everyone else had.
Every bug was noted and the application was "unstable" and "not nearly good enough".
At that moment I thought like "if this is the dev life, I'm out of here".7 -
Me working on a bug for so long the brain actually stops working. Leave work > drives home > sits on the toilet: "Holy toilet, that's the problem" > drives back to work > problem solved!
Anyone else?8 -
OK.
1. So i tindered.
2. I got a really nice girl.
3. We chatted really long and good.
4. We tried to meetup it did not work because of our schedule. New
job on my end, she is a student.
5. I thought its over. Fine whatever.
6. She gives me her number.
7. We continue chat on whatsapp
8. Blablabla 3 days long, she gets bored and tries to friendzone me
9. I revert the shit and state i wanna be serious and there wont be a
friendzone/nice guy comin from me.
10. She happy and continues to chat.
11. I get emtionally invested in her.
12. We exchange thoughts dreams and music.
13 We want to meetup at weekend. I cant. Got a family wedding all
weekend.
14. We want to meetup the second week.
I cant. Im off on a company trip. Again new job here.
15. So we say in the week after I get back.
15a. Before the weekend we need to deliver an rc and go all out to hold
the deadline.
15b. We deliver, but shit happens on the customer side. His fault but we
get the blame.
15c I go onto the company trip.
16. We chat and i send her pictures of the trip over the weekend so she
sees I care.
17. She seems fine. And happy.
18. I come back from the trip late night and need to work the next day
jetlag style.
19. I work jetlag style. And try to fix the shit from last week.
20. I come home really tired and looking forward to date day tomorrow.
21. I cant do anything. My home looks like shit and the bag still
unpacked. I just eat and fall asleep.
I feel bad bcs my home will turn her down instantly if we make it to my
place.
Need to hope that it does not come to this.
22. Date day comes. Today.
23. I wake up at 6 early to plan ahead to make sure my clothes are fine
and i arrive on time in the office to exit early.
24. I expect to check what goes on today in the city and give her the
location to meet and time.
25. I enter office and immeadetly get caught up in meeting planning, dev
questions and the meeting itself because the project is on edge.
26. We have a 5hours long meeting where people go on and on and on.
27. 3h later in the meeting:
my brain was fried and around 12 i go to lunch with some people.
28. Meanwhile the city is turning into a rainy mess of a shitty day. No
way I can have a nice walk with her like that. Bars and coffeshops are
just to boring.
29. So i eat to regain some sense and we go back to the office.
Meanwhile I am thinking all kinds of locations and stuff in my head.
30. Havent given her any update since a good morning in the morning.
31. We reenter the meeting. Things continue like before. The project is
on impossible demands and impossible timelines. Still we try to do our
best.
32 3h later on 3pm I tell her i am in a long meeting and working on a
meetingspot.
33. shes not happy.
34. I get a call from a relative
35. i need to go out and take the call. not good for the collegues.
again new job here.
36. family trouble, money trouble, goverment demands. I promise to
handle that tomorrow. Before work.
37. i get back into the meeting.
38. still super slow and no results.
39. need to focus but start to check for locations on my phone.
40. she asks me where i am
41. I send her my location.
42. she thinks i am saying she should pick me up!
43 i joke and say no definitly not.
44. shes pissed.
45. I decide for a coffeeshop. after work. and send her the location
46. She says to call it off.
47. I go all in and go romance style. I say ill wait there even if she
does not come to show her how much i care.
U know to avoid the lets do it some other time fuckery and then it never
happens.
47. She goes quiet.
48. 2h later we finish the meeting. Meanwhile QA foudn a bug we need to
fix because why not.
49. I got 30 minutes to find the bug and fix it before I need to go to
uphold my word.
50. I find out what to do, but it might break a lot of other things
without careful test and implementation. Collegues says he takes it.
51 I feel bad but I need to go. I even leave earlier because otherwise I
would not be on time.
52. I arrive 15 minutes early. I grab two coffee2go and wait outside,
53. Shitty weather, sometimes rain, sometimes sunny, cant decide what it
wants.
54. The weather is just like how I feel.
55. I wait 1 1/2h
56. I think I should feel stupid, For gods sake its tinder. People dont
give a crap, Enough people around why should I Invest so much into this?
But I dont feel stupid. Because this is how I want it. I dont want
appointments, I dont want safety. I decided for her and I went all in.
57. I send her pics from the sceneray as proof that I waited,
58. I think I blew it. She is still quiet.
59. Friends are asking me for plans for the weekend. I wish I could say
I already have some with her.
60. I feel lost right now. But my head says I put too much stress on
her, And i fucked up with the planning. I should have been more precise.
My head also says that i am putting myself into the victim role, which
is wrong always. Should I continue to reach out to her? Is there
something I could do still?68 -
!rant
Yesterday I got a pretty straight-forward task of fixing SASS linting errors from our project. I thought, "How many errors could there be?" Turns out there were just around 2000 errors across 109 files!
I was almost like, "Man, this is going to take a lot of my time!"
So, I started fixing the errors one-by-one with my headphones on and switching music genres after every 2 hours.
After almost 6 hours of continuous bug-fixing, my mind kind of became repellant to the possibility of the outer world and my fingers automatically fell on the right keys in almost no time. My brain was functioning like a computer itself.
And after the end of 7 hours, I reduced the number to less than 1000 errors.
Today, I continued the task and found out that there were some scoping errors I made yesterday (web developers would know this pain of '&').
And after working for almost 6 hours today, I got the number down to 500.
Not a rant, but I felt extremely content with what I did today.
I guess every day is not just about programming, sometimes, it's also about making your code better.
Thanks for reading! :)6 -
Craziest bug, not so much in the sense of what it was (although it was itself wacky too), but in what I went through to fix it.
The year was 1986. I was finishing up coding on a C64 demo that I had promised would be out on a specific weekend. I had invented a new demo effect for it, which was pretty much the thing we all tried to do back then because it would guarantee a modicum of "fame", and we were all hyper-ego driven back then :) So, I knew I wanted to have it perfect when people saw it, to maximize impressiveness!
The problem was that I had this ONE little pixel in the corner of the screen that would cycle through colors as the effect proceeded. A pixel totally apart from the effect itself. A pixel that should have been totally inactive the entire time as part of a black background.
A pixel that REALLY pissed me off because it ruined the utter perfection otherwise on display, and I just couldn't have that!
Now, back then, all demos were coded in straight Assembly. If you've ever done anything of even mild complexity in Assembly, then you know how much of a PITA it can be to find bugs sometimes.
This one was no exception.
This happened on a Friday, and like I said, I promised it for the weekend. Thus began my 53 hours of hell, which to this day is still the single longest stretch of time straight that I've stayed awake.
Yes, I spent literally over 2+ days, sitting in front of my computer, really only ever taking bio breaks and getting snacks (pretty sure I didn't even shower)... all to get one damn pixel to obey me. I would conquer that f'ing pixel even if it killed me in the process!
And, eventually, I did fix it. The problem?
An 'i' instead of an 'l'. I shit you not!
After all these years I really don't remember the details, except for the big one that sticks in my mind, that I had an 'i' character in some line of code where an 'l' should have been. I just kept missing it, over and over and over again. I mean, I kinda understand after many hours, your brain turns to mush. and you make more mistakes, so I get missing it after a while... but missing it early on when I was still fresh just blows my mind.
As I recall, I finally uploaded the demo to the distro sight at around 11:30pm, so at least I made my deadline before practically dropping dead in bed (and then having to get up for school the next morning- D'oh!). And it WAS a pretty impressive demo... though I never did get the fame I expected from it (most likely because it didn't get distributed far and wide enough).
And that's the story of what I'd say was my craziest bug ever, the one that probably came closest to killing me :)5 -
There was a pretty big bug that I spent all day trying to pinpoint. It was getting really late, so I called it a night and went to sleep.
That night, I dreamed that I was still at the computer, debugging. I kid you not, in the dream I both found the bug and realized what the fix needed to be. In that moment, I woke up.
I ran straight to the computer down the hall, and sure enough, that was the issue and that was the fix.
Shoutout to the capabilities of the human brain.
Thanks, brain!4 -
I just signed up to get this off my chest.
Dear Windows, you god damn moronic, ugly, unuseable abomination of an excuse for an OS. I wonder how we could end up here in this situation. You suck, in every way imaginable. I didnt choose Linux or Mac, you made me do it.
I know no other OS that can screw you up this bad when setting up. My friend is an experienced windows user and the last install took him 2 days. I just spend the last day trying to get this uncompatible sucker installed. I manage to set up an hackintosh quicker than I was able to install Windows the last three times I checked, you scumbag.
Your error messages suck ass, there is nothing I cant figure out given enough time, except your useless hints and pathetic attemps to get anything done on your own.
And you are fucking slow. Just why, do you keep installing stuff I didnt ask you to. Now I got this ugly ass Bing-Toolbar because I missed a damn checkbox in an .exe, which could have also been an exploit, you never know.
You are cluttered with useless stuff. I dont care about you lame ass app store, idc about your cortana annoying spy assistant and I certainly dont care about your forced updates.
Just sit back and feel your PC getting slower every day by background processes. Watch your productivity decline while dealing with their brain dead privilege and file system.
You ugly malformed mutation of software. When I look at your UI I feel disgust while wondering how you can fail with the most basic principles of UX.
How pathetic, badly supported, bug ridden and dangerously unsecure can an OS be you ask while trying to navigate through the settings, a pile of legacy software debt this garbage pile was build on. And your shell... what a sick joke.
I hate you Windows. For screwing other OS with your asshole boot manager, hardware driver requirements and making people send me .zip and .docx. You should be embarrassed to charge money for this unfunctional junk, but you do, a lot.
I really try to see the positive here. You got all the software, but thats not on you, thats because all those poor suckers are trapped with you and the effort to change is too big.
This OS is the most disappointing thing technology could come up with today. I would rather set myself on fire than work with this pain in the ass software professionally. I mean if you are a serious developer at some point you have to admit that you just cant develop on windows. You will get fucked 5 times as often as any Mac or Linux user. Fuck you, Windows.
Hey Microsoft, thanks for Typescript and VSCode and all the other good things you have done. But burn in hell for what you have done to all of us with this piece of shit OS.10 -
When will I fuckin learn that
a) customers lie
b) customers are sloppy
c) customers are wrong
d) customers do not do their work (properly)
e) customers want us to do their (dirty) work
f) possibly all of the freakinly above?! + khm....
They will fuckin aaaalwaaaays say sth is not working after the update..
And I will alwaaaays assume I fucked up something..even if I didn't touch that part of the code/data..
And almost aaaaalways it turns out that the bug they complain about is how the system worked (or didn't work) before the update and/or some fuckup from their side..
Anyhow, I rushed over, grabbed the files went testing in dev..wtf, output is different, mine is ok, theirs is..wtf is that shit?!
Transfer newly built dll to test..same shit as on prod..wtf?! How?!
I assumed they have thing A correctly linked to thing B.. ofc thing A was linked to thing C in their case and in another case (our test) to correct thing B..
I got chillies when grabbing files, that
I should have tripple checked that they didn't fuck up something on the link part, but I just assumed they know what they were doing & that they checked they linked correct files with correct content already, before being pissy that the update fucked up things.. riiiight!! :/
I wanted to find solutions to this fuckup asap so I disregarded my gut feeling..yet again!! Fuuuck!
I've spent too much time trying to find ways to fix a bug that wasn't even a real bug to begin with.. :/
Fuuuuuck!!
So yeah, always treat the customers like they are 3yrs old & have no clue what they are doing & check exactly wtf they were indeed trying to do..it will save you time & nerves..
And note to self: reread this shit daily!! And imprint it in your brain that everything is not always your fault!!11 -
That moment when you want to sleep and suddenly your brain says “hey buddy I know how to solve this one crazy bug you tried to solve the whole day”
03:00 fixed it
06:30 on my way to college
#Error404SleepNotFound -
Don't attack flies using tanks.
In 2020, a bug was found in gnome-terminal where selecting many megabytes of text inside the terminal would cause the terminal emulator to crash.
As a remedy, the brain of gnome-terminal developer Christian Persch spawned a "brilliant idea": Limiting the "Select all" feature to selecting only the portion of text that is visible on screen.
In other words, Persch made the "Select all" option useless. After pressing "Select all", it appeared as if everything was selected, but once you scrolled up, nothing beyond what was visible was selected.
By solving a minor problem that rarely ever occurs, Christian Persch created a major problem that often occurs.
Source for screenshot: https://gitlab.gnome.org/GNOME/...11 -
Worst hypothetical Dev job... hmm 🤔 well I think I have the right scenario for you. A medical company stores patient charts and critical life saving information in a database. This database makes medical decisions for lifesaving incubators and if there’s a bug it means 10,000 newborn sick babies will die because of your fuck up (oh and you’re criminally liable too so good luck!). But beyond the high pressure job that sounds at least somewhat normal, the database is written in a special form of assembly for a custom undocumented CPU where only one copy in the world exists so all tests and development are on production. Google and StackOverflow is banned so your only resource is your brain. Good luck🍀9
-
When you realize that the bug is happening because you copied your own code and forgot to replace some variable after you pasted it... Damn you brain! Do not copy/paste ok? Or I swear I will drink a lot on Friday....4
-
Me: It's the weekend, time to step away from the computer for a couple of days, maybe get some fresh air
Brain: What about that bug in your personal software project? -
I somehow can't stop laughing at the comment I posted.
@htlr "devRant has a rendering bug under weekly topic"
me: "I can't see that. Are you sure it's not a dead pixel on your phone?"
@electrineer "Dead pixel won't show up on screen shot"
me: "err... screen shot got be have a dead pixel capture feature, right?!"
🤣Oh geez. If someone need to balance out their genius brain wave, I'm here to help!
https://devrant.com/rants/1266369/... -
Things to do while you encounter a bug and haven't resolved in some hours:
- Leave it and get clean air so your brain relaxes.
What i do:
- Stay there trying to figure out why the fuck this shit doesn't work and considering falling from the window a very good option1 -
>Sitting at desk pondering over what is wrong with code.
:Top
BRAIN : "maybe we will think better with /another/ cup of cofee?"
Repeat until
BRAIN : "damn now im too jittery to think about code. Maybe if I relax woth some music/meme hunting ill be able to focus"
Repeat until
BRAIN : "Damnit i spent 2 hours on 9gag and not coding. Gotta get back to this bug squashing but im now so tired. Maybe some cofee will help me think"
Goto Top3 -
Got asked to fix a bug at work. The code (react) looked like this:
file = form.file;
this.setState({file});
this.methodThatNeedsFile();
So i explained that the changes from setState are not adopted immediately etc. Then i take another look at the code and feel the pain in my head. You could shorten the code to:
this.methodThatNeedsFile(form.file);
Is there some subconscious need in the brain to make use of frameworks even though it makes no goddamn sense and "normal" programming is sufficient? -
You know, one of my worst fears as a programmer isn’t a bug, or shitty clients, it’s not even happening on my computer.
It’s when I can’t find a good playlist to listen to because the good ones I listen to way to much and I get sick of them so I get stuck with nothing and my Brain simply can’t function without a butt shaking toon!1 -
I don't like it when my brain goes on a self conflicting spree after I fix a bug.
*** Fixes a bug and commits ***
Oh wait, it works but what if this happens? It'll break.
*** Thinks more on the correct solution this time ***
Oh wait, what I did was right! NVM.
*** Another situation comes to mind ***
Start thinking again. Same outcome.
Go through this a couple of times.
Aah, screw it. Will see when it breaks!3 -
That moment when you spend hours debugging, only to realize... the bug wasn’t in your code but in your brain. Yup, I initialized the variable outside the loop and wondered why it wasn't updating. Classic me.
Moral of the story: Sleep is not optional, fellow devs. Also, coffee isn’t a fix for stupidity, but hey, it keeps us going! ☕3 -
Inspired by a programming is a constant/continuous thing. Every small and big achievements, from squishing a bug, finding a workaround, pressing the "Build" button and the programme runs. Each time the brain feels expanded like when a baby discovers new things, a tiny creature in a gigantic Universe of endless possibilities.
-
story of a release
v2.1.0 major changes went live : new features, bug fixes, optimisations. also included releases for 2 associated libraries
release process tasks:
- do code
- update test cases
- test sample app
- test on another sample app
- get code reviewed and approved by senior ( who takes his own sweet time to review and never approves on first try)
- get code reviewed again
- merge to develop after 20 mins( coz CICD pipeline won't finish and allow merging before that)
- merge to master after 20 mins( coz CICD again)
- realise that you forgot to update dates in markdown files as you thought the release will be on 10th sept and release is happennig on 12th sept coz of sweet senior's code fucking/reviewing time
- again raise a branch to develop
- again get it a review approval by sr (who hopefully gives a merge approval in less time now)
- again get it merged to develop after waiting for 20 mins
- again get it merged to master after waiting for 20 mins
- create a clean build aar file
- publish to sonatype staging
- publish to sonatype release
- wait for 30 mins to show while having your brain fucked with tension
- create a release doc with all the changes
- update the documentation on a wyswig based crappy docs website
- send a message to slack channels
- done
===========
why am i telling you this? coz i just found a bug in a code that i shipped in that release which still got in after all the above shitty processes. its a change of a 3 lines of code, but i will need to do all the steps again. even though i am going through the same shitty steps for another library version upgrade that depends on this library 😭😭
AND I AM THE ONE WHO CAUGHT IT. it went unnoticed because both of those shitty samples did not tested this case. now i can keep mum about it and release another buggy build that depends on it and let the chaos do its work, or i can get the blame and ship a rectification asap. i won't get any reward or good impression for the 2nd, and a time bomb like situation will get created if i go with 1st :/
FML :/6 -
Just "finished" a side project (I know right, unprecedented) to be graced immediately afterward with another approach to vastly improve one of its features. Well shit, now I HAVE to implement it otherwise it'll just bug the shit out of me for the rest of time!
WHY DO YOU DO THIS TO ME BRAIN! JUST LET ME FINISH MY SHITTY SIDE PROJECTS WITH PEACE AND QUIET! -
Total brain crash...
Was writing a word doc.
Got interrupted by a colleague
When i got back to the doc my brain instinctively told me: "You idiot, you can't write anything while debug is running"
Spent a whole 5 mins trying to find stop button... wait... this is word....
Is this a bug in my brain?1 -
what is that annoying little bug in my brain that triggers those annoying Chemicals which makes sleeping at night even after being awake for 27 hours, so goddamn hard?
protocol nature's spec describe the natural and optimal daily rhytm as sleeping 8 hours each night, so why is obeying the defaults so goddamn troubling?!5 -
After months of trying to help someone by working late with them, teaching them all I could, showing them why a bug came up, i eventually got annoyed at the stupidity and asked them to "engage their brain". It doesn't seem big but I imagine how they must have felt.3
-
Literally begging my brain to relax so I can sleep.
I've gotten my drive and passion for coding back (Working on a project that'll be released for beta soon) but unfortunately, the sleepless nights came back with it.
It's currently 6am and I want to sleep but soon as I close my eyes, I see more features, optimizations and potential bug fixes. I have a slight migraine which is quite annoying.
Wish I could turn my brain off on command. Please make it stop 😔17 -
Bug report workflow for our customer support department.
1. Use eyes
2. Use brain
Just printed as poster -
Guys. Guys. Guys.
I went to sleep last night, after hunting a bug the whole day that showed up towards the end of my simulations (after several hours of simulations) and that crashed my program.
The crash was due to a bounds error in a fixed size vector, that worked on all the other thousands of iterations but for some reason randomly crapped out late into the sim. So I gave up and went to sleep.
Booted up my program today, 10x speed gain and no bug. Please send help. My brain is playing games with me, I'm sure. This shouldn't happen. :(1 -
My coolest bug fix was fixing XSS and CSRF vulnerabilities. It was the starting of my IT career and when I hear these big names, I used to think that it takes a big brain to fix them. But the solutions were rather simple. My architect told me how to solve them and I made my version of the solution and sent it for his review. He just rejected it and told some enhancements to it. The to and fro of these reviews happened for a week.
At some point I felt, why don't he f*****g do it himself. It would take him about 5 minutes.
Finally my code was approved.
Now when I turn back and think about it, I feel I learned a lot from that exercise. -
It is on this day i feel inspiration.
Its taken 14 hours to debug the physics and math behind a particular mechanism in the project I've been assigned to for months now.
But I got it right, and fuck is that feeling incredible. It's that feeling that makes me want to continue to do what I do. So fuck you, you obscure, brain fuck of a bug. You will not win EVER! I WILL find you, I WILL make sense of you, and I WILL destroy you. -
Spent 4 fucking weeks trying to implement this motherfucking feature and in the end after 15 failed implementations it turns out that my first implementation was good. Turns out this other devs fucking feature had a bug (he forgot to add two lines to clear current state and to update current state again). Motherfucker.
Took me over 100 hours to debug that piece of shiet spaghetti codebase and I had to go through grief stages few times to the point where I started questioning my own damn ability
Sometimes it sucks not being able to go step by steap and think in a linear way. I guess if I followed the breadcrumbs I would have solved it sooner. But poking around things and trying out random solutions was like going through a maze blindfolded until I got it right but I guess thats how my brain works.1 -
I displayed "score: 0" on the dashboard and on the review list, tester noted it as a bug stating; it should have been "score: 0.0" and not "score: 0" because the score is precision based.
You can say this is a half cup full and half cup empty scenario but I will call this silly cup full and brain cup empty!3 -
So I've been trying to debug a bug for the whole day. I've been trying and trying to discover why my update method of my User class wasn't working.
I've tried a lot of stuff, searching and searching through my code possible reasons, adding debug prints everywere...
Guess what: it was working. The thing was that I had the user modified in the DB so I wasn't able to modify it since it was already modified. I even tried to find the bug inside the get method saying "hey, that's not the actual user in the DB!"
Thanks, brain!1 -
I often read rants, and I can see how everyone gives for granted that we have to overwork, work until night, work on weekend, work when the boss asks us, read the email, work until you fixed that bug, and so on. I mean, I don't see anyone ranting about this, I just see that this became the background of other rants, something that's so normal and we are so accustomed that we don't even consider it a problem anymore. I was wondering, is it just me that gives value to his own free time? That would rather read a book, watch tv or stay with friends? Or at least being able to tell a friend "we'll meet for dinner" without the fear of a problem blocking you at your job. Why should I be paid less than average in my country and work more, making the benefits still less concrete? I think I have a good brain and I chose this career because I love it, but if I could born again I'd be a doctor or a teacher3
-
The sudden ureka moment in the bathroom related to a bug I have been racking my brain for the past two days.
-
Okay. Here's the ONLY two scenarios where automated testing is justified:
- An outsourcing company who is given the task of bug elimination in legacy code with a really short timeframe. Then yes, writing tests is like waging war on bugs, securing more and more land inch after inch.
- A company located in an area where hiring ten junior developers is cheaper than hiring one principal developer. Then yes, the business advantage is very real.
That's it. That's the only two scenarios where automated testing is justified. Other such scenarios doesn't exist.
Why? Because any robust testing system (not just "adding some tests here and there") is a _declarative_ one. On top of already being declarative (opposed to the imperative environment where the actual code exists), if you go further and implement TDD, your tests suddenly begins to describe your domain area, turning into a declarative DSL.
Such transformations are inevitable. You can't catch bugs in the first place if your tests are ignorant of entities your code is working with.
That being said, any TDD-driven project consists of two things:
- Imperative code that implements business logic
- Declarative DSL made of automated tests that also describes the same business logic
Can't you see that this system is _wet_? The tests set alone in a TDD-driven project are enough to trivially derive the actual, complete code from it.
It's almost like it's easier to just write in a declarative language in the first place, in the same way tests are written in TDD project, and scrap the imperative part altogether.
In imperative languages, absence of errors can be mathematically guaranteed. In imperative languages, the best performance (e.g. the lowest algorithmic complexity) can also be mathematically guaranteed. There is a perfectly real point after which Haskell rips C apart in terms of performance, and that point happens earlier on than you think.
If you transitioned from a junior who doesn't get why tests are needed to a competent engineer who sees value in TDD, that's amazing. But like with any professional development, it's better to remember that it's always possible to go further. After the two milestones I described, the third exists — the complete shift into the declarative world.
For a human brain, it's natural to blindly and aggressively reject whatever information leads to the need of exiting the comfort zone. Hence the usual shitstorm that happens every time I say something about automated testing. I understand you, and more than that, I forgive you.
The only advice I would allow myself to give you is just for fun, on a weekend, open a tutorial to a language you never tried before, and spend 20 minutes messing around with it. Maybe you'll laugh at me, but that's the exact way I got from earning $200 to earning $3500 back when I was hired as a CTO for the first time.
Good luck!6 -
My team is pretty small right now. It's myself and two other guys. One lead, who's been here for five years. A senior who we brought on 2 weeks ago. And me, a regular app dev. The lead put his two weeks in last week and has been trying to brain dump as much as he can onto us.
I've been building a list of prioritization to compensate for when he leaves based on what he was saying was the most important. This list has gotten pretty massive after reviewing most of the processes in place.
I was hired mainly to quell new requests coming in and not to maintain our systems, so that's what I did. I didn't examine our prod code base too closely. I wish I had. It's in a sorry state. I'm pretty sure I have about 2 years of tech debt for a crew of two guys constantly working on it.
I've been trying to prioritize based on what gets the most bug fixes and change requests. These apps will see the biggest changes and will undergo the most maintenance.
Since I'm just a regular app dev it feels weird trying to come up with this and try to prioritize this and come up with a plan. It feels like someone else should have. If it needs done then I guess it needs done. I need to be able to collaborate and work with my co worker and be able to plan for what projects are coming next.
If anyone has any suggestions to tackle tech debt please make them. Or if there's any help for managing priorities in a different manner that may prove helpful I'm open. Honestly, I don't want to tackle this completely blind, it feels like a lot.1