Rule 9 from Agans’s Debugging: If you didn’t fix it, it ain’t fixed
Intermittent problems are the worst…
The problem is, how do you fix it if you can’t make it break?
The worst thing is when somebody comes to you saying “yeah, I had this problem yesterday, but it’s working now”.
this is a case for excessive logging man
likely won’t help you actually fix the issue because miraculously you didn’t log the three variables you actually need but it’ll make you feel better in the meantime
You should have a unit test you can run until failure
ngl my programming career helped me stay grounded in reality. Every impossible issue turned out to always have a cause, a reason to be there. Could have taken weeks to track down the issue, but there was always a cause.
But still… every 3 or so years… something actually impossible pops-up. Impossible to fix, impossible to reproduce, and suddenly gone from existence, as if it was never there.
Cosmic radiation! Bit flips! Quantum tunneling! Who TF knows…
If only consumer hardware had ECC memory
Given how software is a giant Jenga tower made of smaller Jenga towers it’s amazing any of it works at all
Yeah. First instinct in this case makes me think somebody that owns a product upstream saw a failure log and fixed the issue (I’d still want to confirm that, though)
deleted by creator
The longer I’m in IT, the more I realize that the adeptus mechanicus might be on to something with beseeching the machine spirit.
A lot of people think I’m joking when I say I’m a good at what I do because I’m a witch doctor with computers. Software Engineering requires experience with the occult, at a minimum.
“In my professional opinion, this network is haunted.”
…haunted?
(Points to various certifications) “HAUNTED.”And for some reason printers seem to be the place where the spirits are strongest
deleted by creator
Why does everything have to be about race?!
Because you gotta go fast.
Wonderful comment, solid laugh out of me.
lucky, you have code gnomes. leave out an offering of mountain dew and pizza rolls to appease the spirits.
Still better than my Go experience 2 years ago.
- fails when deployed, after adding debug statements looks like in one structure there’s 2 instead of 1, and looking at the code that should be impossible. Issue happens every single time.
- the same exact unmodified container when downloaded and run locally works correctly every time.
Build caches are a bitch.
I had that happen with embedded programming when you forget to flush the eeprom after changing your saved values.
I know some of these words
On small computers like Arduino there is a very small memory called eeprom that stays when powered off. It saves ultra low level data (at the bit and byte level) if you don’t “format” after changing what is being saved where it then tries to read gibberish and things go bonk.
hmm embedded. Beautifuly memories from uni. One lab my team forgot to remove a register whose supposed purpose was only enabling a communications bus (documentation didn’t mention it doing anything else). Turns out that same register disables the dac which we needed for the new excersise. You learn to love the hardware datasheets real quick.
And when the data sheet is wrong that gets fun. You start parsing I2S for each bit and record the result until you see a pattern. Or when your program crashes the USB and you can’t reupload without hitting boot or reset but they are inside the box.
MY PEOPLE!!! My code recently decided to not erase the flash when writing new firmware, bricking the device. Good times. (Old code || new code does not make for a working system)
I’m dealing with this right now. Making the largest embedded project for me (self taught) RP2040 in Cpp with a TFT touch screen, an IMU with fusion, a strip of “neopixels”, a 12v battery voltage reader, some Lemo connectors and custom cables, all in a 3D printed case in 3 parts. I’m so close to the end but still facing some code issues.
This is the project I’m working on: CyberLevel. A gyro digital level for Steadicam. video
Pixels are wonderful, but such a perilous path…
Start playing with a pixel, then get a board with WLED set up, then start running xlights on a beaglebone to synchronize several instances, for holiday lighting. Suddenly there’s several hundred leds in the front yard
Haha! I feel you. Luckily my project only involves about 20 pixels on a high density strip (332pixels/m) to be used as a small 1D display.
Cosmic radiation could always wreak havock by simply switching a 0 to a 1. It appears The Universe is Hostile to Computers.
Did you include an odd day of the month exception?
Setting up a stack of mongo db and unifi network application in docker compose
Doesnt workTakes stack down, turns a setting off and on, starts the compose
Suddenly starts working._.
The UniFi controller software has always been a garbage java project. It feels a bit better these days though.
I have this issue once in a while with PowerShell.
The environment gets f’up as you develop. You get strange shit happening or it blows up.
Restart PowerShell or reboot and it’s all good
When you unwittingly leave yourself a code timebomb
Must’ve been the effective_date.
deleted by creator