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 - "#bug of the day"
-
One of our web developers reported a bug with my image api that shrunk large images to a thumbnail size. Basically looked like this img = ResizeImage(largeImage, 50); // shrink the image by 50%
The 'bug' was when he was passed in the thumbnail image and requesting a 300% increase, and the image was too pixelated.
I tried to explain that if you need the larger image, use the image from disk (since the images were already sized optimally for display) and the api was just for resizing downward.
Thinking I was done, the next day I was called into a large conference room with the company vice-president, two of the web-dev managers, and several of the web developers.
VP: "I received an alarming email saying you refused to fix that bug in your code. Is that correct?"
Me: "Bug? No, there is no bug. The image api is executing just as it is supposed to."
MGR1: "Uh...no it isn't. Images using *your* code is pixelated and unfit for our site and our customers."
MGR2: "Yes, I looked at your code and don't understand what the big deal is. Looks like a simple fix."
<web developers nodding their heads>
Me: "OK, I'll bite. What is the simple fix?"
<MGR2 looks over at one of the devs>
Dev1: "Well, for example, if we request an image resize of 300, and the image is only 50x50, only increase the size by 10. Maybe 15."
Me: "Wow..OK. So what if the image is, for example, 640x480?"
MGR1: "75. Maybe 80 if it's a picture of boots."
VP: "Oh yes, boots. We need good pictures of boots."
Me: "I'm not exactly sure how to break this to you, but my code doesn't do 'maybe'. I mean, you have the image from disk.
You obviously used the api to create the thumbnail, but are trying to use the thumbnail to go back to the regular size. Why not use the original image?"
<Web-Dev managers look awkwardly towards the web devs>
Dev3: "Yea, well uh...um...that would require us to create a variable or something to store the original image. The place in the code where we need the regular image, it's easier to call your method."
Me: "Um, not really. You still have to resolve the product name from the URL path. Deriving the original file name is what you are doing already. Just do the same thing in your part of the code."
Dev2: "But we'd have to change our code"
Mgr2: "I know..I know. How about if we, for example, send you 12345.jpg and request a resize greater than 100, you go to disk and look for that image?"
<VP, mgrs, and devs nod happily>
Me: "Um, no that won't work. All I see is the image stream. I have no idea what file is and the api shouldn't be guessing, going to disk or anything like that."
Dev1: "What if we pass you the file name?"
<VP, mgrs, and devs nod happily again>
Me: "No, that would break the API contract and ...uh..wait...I'm familiar with your code. How about I make the change? I'm pretty sure I'll only have to change one method"
VP: "What! No...it’s gotta be more than that. Our site is huge."
<Mgrs and devs grumble and shift around in their chairs>
Me: "I'm done talking about this. I can change your code for you or you can do it. There is no bug and I'm not changing the api because you can't use it correctly."
Later I discovered they stopped using the resize api and wrote dynamic html to 'resize' the images on the client (download the 5+ meg images, and use the length and width properties)22 -
A rare bug appeared. It was my duty to finish it.
SH = Manager
SH: So when do you think you can finish the task?
Me: I still have to analyze the problem. Give me a moment and I'll get back to you.
SH: Alright.
*An hour later*
SH: *Approaches my desk* Have you found the source of the problem?
Me: Not yet. Please give me some more time.
SH: Ok.
*An hour later*
SH: *the approach* You found it yet?
Me: Yes, I've found the the source of the problem, But... *explains the problem and thus concluding that it's a complicated bug*
SH: Can you finish it by tomorrow?
Me: I'll do the best I can but I am not entirely sure if I can finish it by tomorrow.
SH: OK great!
*The next day*
SH: *Le approach* Hey I have a colleague here that may be able to solve the problem, he has skills with XYZ. Ok, I will leave you two at it then. *the leave*
Helper: So can you tell me about the issue here?
Me: *explains the bug and the source of the problem*
Helper: Have you tried solution A?
Me: Yes sir, but it yields a different output... *explains what happened with solution A*
Helper: Well, that won't work. What about solution B?
Me: I've tried that, too. *Another lengthy explanation*
Helper: Welp, ok. I'll get back to you on that.
(...But he never came.)
*A few hours later*
SH: *A.P.P.R.O.A.C.H.* Hey I have this team lead from another department. I think he can help you out on this one. *L.E.A.V.E.*
Helper 2: What seems to be the problem?
Me: *Explains again with all the solutions I tried but failed*
Helper 2: Wow. That really seems to be a complicated problem.
~~
Me (In my head): -_-
~~
Helper 2: Listen, I need to get back to my team. I'll keep you posted if I happen to find a solution for your problem alright?
Me: Alright thanks.
*Towards the end of the day*
SH: *APPROACHHHH* Have you resolved the bug yet?
~~
Me (In my head): You made me spend half the FUCKING day explaining to these people who didn't even give a piece of FUCKING SHIT to contribute to the problem and you are asking me if I am done with this FUCKING BUG? FUCK YOU, YOU SON OF A -
~~
Me: No, it is not finished yet..
SH: You have to finish this because we don't have tomorrow.
~~
Me (In my head): SHDIFHWISGSIFGSISBAUDBEIQBDIWGFIEBWIDHWIQBDOSBCISBDOSHDIAGSUSVDIFBDKDJWIQKDBDIDGSUWVDIABDIXBSIDBDIDBWUWGUSVDUWVDJQBDUDVWISHDUWVFG
~~
I went home for the day.21 -
I worked with a good dev at one of my previous jobs, but one of his faults was that he was a bit scattered and would sometimes forget things.
The story goes that one day we had this massive bug on our web app and we had a large portion of our dev team trying to figure it out. We thought we narrowed down the issue to a very specific part of the code, but something weird happened. No matter how often we looked at the piece of code where we all knew the problem had to be, no one could see any problem with it. And there want anything close to explaining how we could be seeing the issue we were in production.
We spent hours going through this. It was driving everyone crazy. All of a sudden, my co-worker (one referenced above) gasps “oh shit.” And we’re all like, what’s up? He proceeds to tell us that he thinks he might have been testing a line of code on one of our prod servers and left it in there by accident and never committed it into the actual codebase. Just to explain this - we had a great deploy process at this company but every so often a dev would need to test something quickly on a prod machine so we’d allow it as long as they did it and removed it quickly. It was meant for being for a select few tasks that required a prod server and was just going to be a single line to test something. Bad practice, but was fine because everyone had been extremely careful with it.
Until this guy came along. After he said he thought he might have left a line change in the code on a prod server, we had to manually go in to 12 web servers and check. Eventually, we found the one that had the change and finally, the issue at hand made sense. We never thought for a second that the committed code in the git repo that we were looking at would be inaccurate.
Needless to say, he was never allowed to touch code on a prod server ever again.8 -
I’ve had a good amount of incompetent co-workers in the past. One that stands out was this junior developer who worked at one of my previous companies. He was incompetent, but that wasn’t even his worst attribute. He was incompetent, and worse, he had a piss-poor attitude.
Myself and a few other devs at the company tried to help him, but he would literally get mad when people tried to help him. Sometimes he would even call one of us over and start getting snarky with us as we tried to help him. He was a piece of shit and a shitty developer. I don’t think he built one complete feature or fixed one bug in the year he was at the company before he was eventually fired.
Oh, and aside from his incompetence and shitty attitude, he had no sense of humor. It was so annoying. My friend and I made a little song based on his name and a group that sounded like his name, and he got pissed. We always used to sing it anyway after that and it always riled him up. I feel a bit bad about that now but he pretty much got mad at everything so whatever.
One of my favorite memories of him is when he was leaving one day, my good friend/co-worker and I were having a Nerf gun battle. The junior was leaving the office, and my friend tried to get him involved in the battle and shot him, but accidentally hit him in the back of the head. He said nothing, didn’t turn around, and just walked out lol. He was not happy about it.10 -
Me and my team in middle of our first hackathon-
a girl who is our class topper is my team mate, trying to write some Android Code.
I am writing nodejs Api, she calls me saying there's a bug in my code,so for saving time I decided to fix that small thing on her laptop,so when I went to the backend folder to open the js file,I see no default text editor set for it. After searching,I found out she had no atom,sublime,vs etc.
I asked her - "Do you even have notepad++ ?".
She - "I have notepad,but not ++".
That day I had to edit my code in Wordpad. I am still shaking.12 -
After several months of bug fixing, I can proudly say the application I inherited at work has gone a whole day in production without an unhandled exception (from a peak of above 1200 a few months ago).
Well, either that or I've broken the error logging and am now living in blissful ignorance.4 -
LONG RANT AHEAD!
In my workplace (dev company) I am the only dev using Linux on my workstation. I joined project XX, a senior dev onboarded me. Downloaded the code, built the source, launched the app,.. BAM - an exception in catalina.out. ORM framework failed to map something.
mvn clean && mvn install
same thing happens again. I address this incident to sr dev and response is "well.... it works on my machine and has worked for all other devs. It must be your environment issue. Prolly linux is to blame?" So I spend another hour trying to dig up the bug. Narrowed it down to a single datamodel with ORM mapping annotation looking somewhat off. Fixed it.
mvn clean && mvn install
the app now works perfectly. Apparently this bug has been in the codebase for years and Windows used to mask it somehow w/o throwing an exception. God knows what undefined behaviour was happening in the background...
Months fly by and I'm invited to join another project. Sounds really cool! I get accesses, checkout the code, build it (after crossing the hell of VPNs on Linux). Run component 1/4 -- all goocy. run component 2,3/4 -- looks perfect. Run component 4/4 -- BAM: LinkageError. Turns out there is something wrong with OSGi dependencies as ClassLoader attempts to load the same class twice, from 2 different sources. Coworkers with Windows and MACs have never seen this kind of exception and lead dev replies with "I think you should use a normal environment for work rather than playing with your Linux". Wtf... It's java. Every env is "normal env" for JVM! I do some digging. One day passes by.. second one.. third.. the weekend.. The next Friday comes and I still haven't succeeded to launch component #4. Eventually I give up (since I cannot charge a client for a week I spent trying to set up my env) and walk away from that project. Ever since this LinkageError was always in my mind, for some reason I could not let it go. It was driving me CRAZY! So half a year passes by and one of the project devs gets a new MB pro. 2 days later I get a PM: "umm.. were you the one who used to get LinkageError while starting component #4 up?". You guys have NO IDEA how happy his message made me. I mean... I was frickin HIGH: all smiling, singing, even dancing behind my desk!! Apparently the guy had the same problem I did. Except he was familiar with the project quite well. It took 3 more days for him to figure out what was wrong and fix it. And it indeed was an error in the project -- not my "abnormal Linux env"! And again for some hell knows what reason Windows was masking a mistake in the codebase and not popping an error where it must have popped. Linux on the other hand found the error and crashed the app immediatelly so the product would not be shipped with God knows what bugs...
I do not mean to bring up a flame war or smth, but It's obvious I've kind of saved 2 projects from "undefined magical behaviour" by just using Linux. I guess what I really wanted to say is that no matter how good dev you are, whether you are a sr, lead or chief dev, if your coworker (let it be another sr or a jr dev) says he gets an error and YOU cannot figure out what the heck is wrong, you should not blame the dev or an environment w/o knowing it for a fact. If something is not working - figure out the WHATs and WHYs first. Analyze, compare data to other envs,... Not only you will help a new guy to join your team but also you'll learn something new. And in some cases something crucial, e.g. a serious messup in the codebase.11 -
🔥 🔥 Release day! 🔥 🔥
devRantron has reached v1.0.0 today! Here is what you can do with devRantron:
1. @mention someone when posting comments
2. Filters rants with keywords
3. Add emoji when posting rants and comments
4. Get notifications
5. Browse rants, collabs and stories
6. Browser user profiles
7. Post rants
8. Create custom columns of your own choice
Thank you so much to all the contributors, especially @Dacexi for designing the app and @sirwindfield for setting up our build infrastructure.
We plan to add more features in future. For example, searching rants, edit/delete rants or comments and most importantly, themes. Right now it has a dark theme by default.
Thank you to the users to opened issues on GitHub during development. Your feedback has helped a lot.
Whenever you find a bug or want a new feature, please open a new issue on GitHub and we will look into it.
Contributors are always welcome. I am still working on writing a article about the structure of the application, I will let you guys know when that is done. It will be easier for you to contribute when you have a bigger picture.
Relevant collab: https://devrant.io/collabs/420025/46 -
//
// devRant unofficial UWP update (v2.0.0-beta)
//
After several concepts, about 11 months of development (keep in mind that I released 20 updates for v1 in the meantime, so it wasn't a continous 11 months long development process) and a short closed beta phase, v2 is now available for everyone (as public beta)! :)
I tried to improve the app in every aspect, from finally responsive and good looking UI on Desktop version to backend performance improvements, which means that I almost coded it from scratch.
There are also of course a few new features (like "go to bottom" in rants), and more to come.
It's a very huge update, and unfortunately to move forward, improve the UI (add Fluent Design) and make it at the same level of new UWP apps, I was forced to drop the supported for these old Windows 10 builds:
- Threshold 1 (10240)
- Threshold 2 (10586)
Too many incompatiblity issues with the new UI, and for 1 person with a lot of other commitments outside this project (made for free, just for passion), it's impossible to work at 3 parallel versions of the same app.
I already done something like that during these 11 months (every single of the 20 updates for v1 needed to be implemented a second time for v2).
During the closed beta tests, thanks to the awesome testers who helped me way too much than I ever wished, I found out that there are already incompatiblity issues with Anniversary Update, which means that I will support two versions:
1) One for Creators Update and newer builds.
2) One for Anniversary Update (same features, but missing Fluent Design since it doesn't work on that OS version, and almost completly rewritten XAML styles).
For this reason v2 public beta is out now for Creators Update (and newer) as regular update, and will be out in a near future (can't say when) also for the Anniversary Update.
The users with older OS versions (problem which on PC could be solved in 1-2 days, just download updates) can download only the v1.5.9 (which probably won't be supported with new updates anymore, except for particular critcal bug fixes).
So if you have Windows 10 on PC and want to use v2 today, just be sure you have Creators Update or Fall Creators Update.
If you have Windows 10 PC with Anniversary Update, update it, or if you don't want to do that, wait a few weeks/months for the update with support for your build.
If you have an older version on PC, update it, or enjoy v1.5.9.
If you have Windows 10 Mobile Anniversary Update, update it (if it's possible for your device), or just wait a few weeks/months for the update with support for your build.
If you have Windows 10 Mobile, and because of Microsoft stupid policy, you can't update to Anniversary Update, enjoy v1.5.9, or try the "unofficial" method (registry hack) to update to a newer build.
I hope it's enough clear why not everyone can receive the update today, or at all. :P
Now I would like to thank a few people who made this possible.
As always, @dfox who is always available for help me with API implementations.
@thmnmlist, who helped me a lot during this period with really great UI suggestions (just check out his twitter, it's a really good person, friend, designer and artist: https://twitter.com/thmnmlist).
And of course everyone of the closed beta testers, that reported bugs and precious suggestions (some of them already implemented, others will arrive soon).
The order is random:
@Raamakrishnan
@Telescuffle
@Qaldim
@thmnmlist
@nikola1402
@aayusharyan
@cozyplanes
@Vivaed
@Byte
@RTRMS
@tylerleonhardt
@Seshpengiun
@MEGADROID
@nottoobright
Changelog of v2.0.0-beta:
- New UI with Fluent Design and huge improvements for Desktop;
- Added native support for Fall Creators Update (Build 16299);
- Changed minimum supported version to Creators Update (Build 15063), support for Anniversary Update (Build 14393) will arrive soon;
- Added mouse support for Pull-To-Refresh;
- Added ability to change your username and email;
- Added ability to filter (by 'Day', 'Week', 'Month' and 'All') the top Rants;
- Added ability to open rant links in-app;
- Added ability to zoom GIFs (just tap on them in the Rant View);
- Added 'go to bottom' button in the Rant View (if more than 3 comments);
- Added new theme ('Total Black');
- ...complete changelog in-app and on my website (can't post it here because of the 5000 characters limit)...
What will arrive in future updates:
- 'Active Discussions' screen so you can easily find rants that have recent comments/discussions;
- Support for 'Collabs';
- Push Notifications (it was postponed and announced too many times...);
- More themes and themes options;
- and more...
If you still didn't download devRant unofficial UWP, do it now: https://microsoft.com/store/apps/...
If you find some bugs or you have feature suggestion, post it on the Issue Tracker on GitHub (thanks in advance for your help!): https://github.com/JakubSteplowski/...
I hope you will enjoy it! ;)52 -
The programmer who killed people: Not so talented programmer named John, made a mistake in his code. because of this mistake the program users spent 15 minutes to do a workaround. this program had 10 million users. In general the users spent 150 million minutes because of john's mistake, which is 2.5 million hours. if a person sleeps about 8 hours a day, he have 16 active hours. which means john wasted 156,250 human days that equals to 427.8 human years. people leave approx. until the age of 64, that means John just killed 6.68 people because of his bug. So john, how do you sleep at night?10
-
4 years ago I was placed on probation for not having the special format in source control check in comments. When I asked, the 'special format' was
clearly documented on page 18, sub-section 4, sub-paragraph 2, "All check in comments will include the solution name, separated by a colon,
and why the code was changed." My check-in comment was only missing the colon. Indecently, over 80% of the other comments consisted of 'adsf',
'bug fix', and several 'BOOM!'s. So I mistakenly said out loud 'This check-in policy appears only to exist to allow management to cherry pick
developers they do not like, find something wrong, and put them on probation.' That comment got on a 30-day ‘corrective action plan’ for openly disagreeing with a
company policy. Today, all those managers were either fired or quit and now I set policy. Dear Mr. ex-Bosses, I won.6 -
!rant
New job (first CS job).
Day 1: Install Ubuntu
Day 2: Dev said "it was so cute when he asked if he could uninstall windows." Also, first pair programming with engineer of 12 years. First commit (he did all the work, I just tried keeping up."
Day 3: "Here, try this bug " nearly get there. Have to leave early. Team event (Group VR experience, was wicked fun with drinks afterwards. Turns out boss man is a total bad ass. Swam with sharks and giant Wales)
Day 4: Fix bug. Notice odd behaviour. Fix that too. (All on my own). Code review: "This, that but works and is good." Get asked if I want to go to customer to do A, B and C. Tell Boss I only know B. He said "Tell me what you need for A and C."
I'm so God damn happy.8 -
1. Humans perform best if they have ownership over a slice of responsibility. Find roles and positions within the company which give you energy. Being "just another intern/junior" is unacceptable, you must strive to be head of photography, chief of data security, master of updating packages, whatever makes you want to jump out of bed in the morning. Management has only one metric to perform on, only one right to exist: Coaching people to find their optimal role. Productivity and growth will inevitably emerge if you do what you love. — Boss at current company
2. Don't jump to the newest technology just because it's popular or shiny. Don't cling to old technology just because it's proven. — Team lead at the Arianespace contractor I worked for.
4. "Developing a product you wouldn't like to use as an end user, is unsustainable. You can try to convince yourself and others that cancer is great for weight loss, but you're still gonna die if you don't try to cure it. You can keep ignoring the disease here to fill your wallet for a while, but it's worse for your health than smoking a pack of cigs a day." — my team supervisor, heavy smoker, and possibly the only sane person at Microsoft.
5. Never trust documentation, never trust comments, never trust untested code, never trust tests, never trust commit messages, never trust bug reports, never trust numbered lists or graphs without clearly labeled axes. You never know what is missing from them, what was redacted away. — Coworker at current company.9 -
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 -
!rant
Programming is a huge blessing i believe we all should be thankful to. For me, it literally turned my life around.
11 months ago i was fighting a losing battle with depression, and contemplated suicide constantly. I would use a self remedy of smoking weed and sleeping all day long. I was depressed because i felt my life had no real value. I was doing nothing, and its kind of an infinite loop.
You don't do anything, so you feel bad, so you don't do anything, and so on.
That was until i finally took the step that changed my life. I searched and wanted to learn something. I always liked web pages so i thought id get into web development.
Did some research, found out that the fastest way to go was to learn ruby on rails. I followed a tutorial i found online, and literally pushed myself through it. There were times when there where things i didnt understand, and when it was really bad, but i pushed myself through it and i finished the tutorial.
Just finishing the tutorial and learning something new helped me alot. I had already quit smoking and was feeling way better, but after a while i started feeling bad again since i wasnt doing anything after i had finished learning, so i started working on a personal project, creating it from scratch, and just working on it day and night. I worked 14 hours a day, never really leaving my room ( this was during summer vacation ) for a month.
There were many things i didnt understand, but i never gave up and always searched for the solution and read about it until i understood it better. Looking back, there were things i knew could have been done in a better way, but as a first project, im proud of myself, not because it rocks, but because i did not give up.
In the process of starting a new life, i was really lonely. I cut all ties with everyone i knew, since they were all toxic, all i had in my life was ruby on rails and my web application. I wanted to launch it but couldn't due to personal reasons.
Not being able to launch and see something live, something that you worked so hard on, that you put so much effort into, that was devastating to me. I felt as if all my efforts had gone to waste.
And here is what i love most about programming, NOTHING EVER GOES TO WASTE. All that effort you spent on something ? All these all nighters you pulled ? All that frustration from that bug ? It will pay off later. It always does somehow. You get more knowledge and become a better programmer, and sometimes it even gives way to new opportunities and chances you never even expected.
I included my web application in my resume and it helped land me a job as a junior developer in a really nice company. A job that i wouldn't even have dreamed of several months earlier.
Programming and creating something new and learning something new everyday, creating something that people use, that someone else will benefit from and be grateful for, i think we should never take that for granted !
Tl;dr : learning how to code and web development saved my life9 -
I actually had the strangest nightmare last night.
So I was working on a program for someone and lots of things went wrong. First of all, the semicolon button wasn't working, so I panicked and grabbed another keyboard but there was no semicolon button.
I had to copy and paste the semicolon instead. Next, there was a bug, and I couldn't figure out what caused it, so I went on stack overflow... Guess what? Stack overflow was shutdown. Unable to fix the error, I somehow caused more.
I decided to take a break and leave, but upon my return, I forgot what the program did. It was as if someone else had written it. I was simply ignorant enough to forget the comments.
After a hellish day of working on it, the person who wanted me to create the program decided to test it out. They tested it on an old version of IE.
Strangest nightmare I had this week.9 -
So a fucking friend of mine makes me meet this fella who is a big shot according to his LinkedIn and please note has too much experience with Web Apps and Python
Me being naive actually trusted that and I meet him.
Fella: So what do you do?
Me: I am into Cyber Security nothing much I just do bug hunting for now
Fella: You know python will help you right?
Me: Sorry?
Fella: You see you have to be a python programmer for anything you want to do in CS
Me: Me yeah I kinda know python actually I am more into Ruby from start so ( Around this time I kinda sensed that he is a fake tech guy he is a corporate asshole)
Fella: show me any of your work
Me: (So to show him one of the thing I was working on I open GitHub desktop app) Me explaining blah blah blah
*Fella is in shock*
So at this point I was thinking probably he is impressed and that's why the shock right?
No a big fucking no
Apparently he never heard about GitHub or git and got blown away by the interface.
And the friend who made me meet that guy is not my fucking friend anymore that prick can die for ruining my day18 -
Be me
> find an eslint bug
> report it on their github
> ask to assign it to self
> start working on it
> spend half a day to find out the source of bug
> realises the bug is coming from a library eslint is using
> report it on the library's github
> ask to assign it to self
🤦🏻♂️9 -
In my college days i was designing a bootloader for avr microcontroller , i had the idea to flash code wirelessly to avr over bluetooth and also cross compile the compiler for android device so that you can code on android, every thing went well just one thing didn't, i saw that code of certain size is executing properly , greater than that size gives me wired outputs so i have to dump hex from the avr (that is flashed the by bootloader) and compaire it with the original hex of code it got messy as you can see, most fun part of this bug is that error can be anywhere cross compiler may be fucked up , the bootloader may be fucked up , or it may be my bluetooth module , after 14 hours of staring at the hex code i figured out the mess in bootloader instruction that was changing the page address for flashing .
when it worked it was 3am in night i literally burst into tears of joy next day bought myself a cake to celebrate6 -
Dear Indian Companies,
Why do you hire for a role and then say: "We dont have that role but then we want you to grow up to be a Generalist"!
6 years as a build, release and SCM guy at Moto and Nokia back then, I shifted to this big Indian IT corp coz Nokia was shutting down...
A week into my orientation (which is a crazy weirdness inducing ritual in and of itself), the new manager I'm supposed to be working with comes up and says- "Here's the code repo, there are 2 open jQuery issues, fix them!"
I'm not really sure what to say at this point because jQuery is nice and all but thats not who I am.. I'm the infra / DevOps guy. And this is circa 2012 when DevOps as a term was just hotting up...
Tell me to setup a multi-stage pipeline and automated test cycles, I'll do it drunk, but oh no! bug fixing on a jQuery script? Noooo!!!!! I just dont have the chops for it.
So long story short, I get reported to HR for insubordination - Yeah, Go Figure!
Cue: HR meeting
HR: You wont work?
Me: I cant work on jQuery. I am a sysadmin / devops guy... Give me a project that involves those skills and I'll work.
HR: But we hired you to work on jQuery.
Me: But you did not mention jQuery / UI / UX in the job description - Pulls up email and shows JD for interview which says Symbian, Build, Release, Configuration Management but NOT jQuery.
HR: ....
Me: :-/
HR: But we want you to be a generalist.
Me: #wtf
HR: We want an engineer to be able to do anything he is tasked with!
Me: Can I know my last working date here?
And thats how my career at a glorious IT corporation just went poof!
When I think back on it, I feel good that I chose to do what I wanted to get better at and what I loved working on...
And this is the problem with IT companies in our country - They play with people's aspirations and passions... To the point that all thats left of a software engineer is the looking forward to pay day so he can start the damn cycle all over again.11 -
A guide to estimations.
1) don’t give an immediate answer. The first “timeframe” you give will be held against you and will result in overtime and working weekends.
2) think of a relevant piece of work and the time that took.
2.1) if it’s something you haven’t done before, add some adequate research time.
3) allow half a day of testing for every day of development.
4) add a day as buffer - this is good for on the fly bug fixes
5) calculate time
6) now give an educated estimate.
7) this should take you 5 seconds to get through mentally.
8) if scope creep occurs: goto:15 -
1. Find bug
2. Try 3 methods of fixing
3. All fail
4. Tell yourself you're trying for the LAST time then you'll go on to something else
5. End up trying 5 more times
6. Repeat step 4 20 times
7. Cry
8. Finally take a break
9. Return next day, try another method, it works instantly
FML!6 -
Sister = bee ( who isn't a stranger to Ubuntu)
Me = Cee
Bee: can I use your laptop?
Cee : why ? Use yours ,it's works fine.
Bee : no I want to use yours and I need to work with windows.
Cee: 🤯
Bee : my work can only be done using windows.
Cee : fine do whatever ( doesn't want to argue )
* Le bee opens MS word, and starts her work *
Cee : 😤😤Seriously?
Bee : I don't like libre
Cee : 😑😑😑^∞
* Few moments later *
Bee : my work is done ,you can have your laptop,btw it's updating.
Cee : 😑😑😑😑😑
* 2000 years later *
*Opens Ubuntu *
*Getting a weird bug*
*Tried to fix *
*Can't open OS files * 👏👏👏🎆
* Windows not shutdown properly *
* Opens windows *
* Not able to login via pin *
* Password ? not accepted *
* Changes outlook password *
* Please chose a password you haven't chosen before *
* Logs in *
* types old pin to change pin *
*You've entered wrong pin too many times *
*System hanging a lot *
* Removes pin *
* Gets huge mcAfee restart system popups , every 10 sec *
* Just shutdown , feels irritated for the rest of the day*
* Regrets dual booting, shd have wiped the windows partition 😫😫*
*Wonders,what the hell did my sister even do to my laptop ?*72 -
At one of my former jobs, I had a four-day-week. I remember once being called on my free Friday by an agitated colleague of mine arguing that I crashed the entire application on the staging environment and I shall fix it that very day.
I refused. It was my free day after all and I had made plans. Yet I told him: OK, I take a look at it in Sunday and see what all the fuzz is all about. Because I honestly could fathom what big issue I could have caused.
On that Sunday, I realized that the feature I implemented worked as expected. And it took me two minutes to realize the problem: It was a minor thing, as it so often is: If the user was not logged in, instead of a user object, null got passed somewhere and boom -- 500 error screen. Some older feature broke due to some of my changes and I never noticed it as while I was developing I was always in a logged in state and I never bothered to test that feature as I assumed it working. Only my boss was not logged in when testing on the stage environment, and so he ran into it.
So what really pushed my buttons was:
It was not a bug. It was a regression.
Why is that distinction important?
My boss tried to guilt me into admitting that I did not deliver quality software. Yet he was the one explicitly forbidding me to write tests for that software. Well, this is what you get then! You pay in the long run by strange bugs, hotfixes, and annoyed developers. I salute you! :/
Yet I did not fix the bug right away. I could have. It would have just taken me just another two minutes again. Yet for once, instead of doing it quickly, I did it right: I, albeit unfamiliar with writing tests, searched for a way to write a test for that case. It came not easy for me as I was not accustomed to writing tests, and the solution I came up with a functional test not that ideal, as it required certain content to be in the database. But in the end, it worked good enough: I had a failing test. And then I made it pass again. That made the whole ordeal worthwhile to me. (Also the realization that that very Sunday, alone in that office, was one of the most productive since a long while really made me reflect my job choice.)
At the following Monday I just entered the office for the stand-up to declare that I fixed the regression and that I won't take responsibility for that crash on the staging environment. If you don't let me write test, don't expect me to test the entire application again and again. I don't want to ensure that the existing software doesn't break. That's what tests are for. Don't try to blame me for not having tests on critical infrastructure. And that's all I did on Monday. I have a policy to not do long hours, and when I do due to an "emergency", I will get my free time back another day. And so I went home that Monday right after the stand-up.
Do I even need to spell it out that I made a requirement for my next job to have a culture that requires testing? I did, and never looked back and I grew a lot as a developer.
I have familiarized myself with both the wonderful world of unit and acceptance testing. And deploying suddenly becomes cheap and easy. Sure, there sometimes are problems. But almost always they are related to infrastructure and not the underlying code base. (And yeah, sometimes you have randomly failing tests, but that's for another rant.)9 -
Worst dev team failure I've experienced?
One of several.
Around 2012, a team of devs were tasked to convert a ASPX service to WCF that had one responsibility, returning product data (description, price, availability, etc...simple stuff)
No complex searching, just pass the ID, you get the response.
I was the original developer of the ASPX service, which API was an XML request and returned an XML response. The 'powers-that-be' decided anything XML was evil and had to be purged from the planet. If this thought bubble popped up over your head "Wait a sec...doesn't WCF transmit everything via SOAP, which is XML?", yes, but in their minds SOAP wasn't XML. That's not the worst WTF of this story.
The team, 3 developers, 2 DBAs, network administrators, several web developers, worked on the conversion for about 9 months using the Waterfall method (3~5 months was mostly in meetings and very basic prototyping) and using a test-first approach (their own flavor of TDD). The 'go live' day was to occur at 3:00AM and mandatory that nearly the entire department be on-sight (including the department VP) and available to help troubleshoot any system issues.
3:00AM - Teams start their deployments
3:05AM - Thousands and thousands of errors from all kinds of sources (web exceptions, database exceptions, server exceptions, etc), site goes down, teams roll everything back.
3:30AM - The primary developer remembered he made a last minute change to a stored procedure parameter that hadn't been pushed to production, which caused a side-affect across several layers of their stack.
4:00AM - The developer found his bug, but the manager decided it would be better if everyone went home and get a fresh look at the problem at 8:00AM (yes, he expected everyone to be back in the office at 8:00AM).
About a month later, the team scheduled another 3:00AM deployment (VP was present again), confident that introducing mocking into their testing pipeline would fix any database related errors.
3:00AM - Team starts their deployments.
3:30AM - No major errors, things seem to be going well. High fives, cheers..manager tells everyone to head home.
3:35AM - Site crashes, like white page, no response from the servers kind of crash. Resetting IIS on the servers works, but only for around 10 minutes or so.
4:00AM - Team rolls back, manager is clearly pissed at this point, "Nobody is going fucking home until we figure this out!!"
6:00AM - Diagnostics found the WCF client was causing the server to run out of resources, with a mix of clogging up server bandwidth, and a sprinkle of N+1 scaling problem. Manager lets everyone go home, but be back in the office at 8:00AM to develop a plan so this *never* happens again.
About 2 months later, a 'real' development+integration environment (previously, any+all integration tests were on the developer's machine) and the team scheduled a 6:00AM deployment, but at a much, much smaller scale with just the 3 development team members.
Why? Because the manager 'froze' changes to the ASPX service, the web team still needed various enhancements, so they bypassed the service (not using the ASPX service at all) and wrote their own SQL scripts that hit the database directly and utilized AppFabric/Velocity caching to allow the site to scale. There were only a couple client application using the ASPX service that needed to be converted, so deploying at 6:00AM gave everyone a couple of hours before users got into the office. Service deployed, worked like a champ.
A week later the VP schedules a celebration for the successful migration to WCF. Pizza, cake, the works. The 3 team members received awards (and a envelope, which probably equaled some $$$) and the entire team received a custom Benchmade pocket knife to remember this project's success. Myself and several others just stared at each other, not knowing what to say.
Later, my manager pulls several of us into a conference room
Me: "What the hell? This is one of the biggest failures I've been apart of. We got rewarded for thousands and thousands of dollars of wasted time."
<others expressed the same and expletive sediments>
Mgr: "I know..I know...but that's the story we have to stick with. If the company realizes what a fucking mess this is, we could all be fired."
Me: "What?!! All of us?!"
Mgr: "Well, shit rolls downhill. Dept-Mgr-John is ready to fire anyone he felt could make him look bad, which is why I pulled you guys in here. The other sheep out there will go along with anything he says and more than happy to throw you under the bus. Keep your head down until this blows over. Say nothing."11 -
TLDR: I wrote one of my firsts codes to help my father. Was really excited after it worked, nobody cared. F*ck them (not really).
So my father comes and says he needs me to help making a simple presentation. Just a title and slides with images. It seemed to be an easy task so I'm like "sure, why not?". So I told him to email the images and I would have the presentation made in no time. The next day I recieve like 30 mails containing from 4 to 10 photos of boats (yes, boats). I stay chill and have the brilliant idea of automating the process with python, just to learn a bit more.
I took some to read the documentation of the modules I was going to use, then write a simple code and bam! In 3 hours I have a presentation with images in it. I open it, every image was 4 times the actual slide and all of the images were randomly rotated, it still was the most rewarding moment I've had in months :') I wanted to show it off to my brothers, so they came to my desktop, saw it and all I recieve was a "cool". Not a good "cool", a "meh" kind of "cool". So I thought it was because of the size bug.
Fastfoward some hours, now every image gets scaled into the slides prefectly, in the correct angle, etc. I tell my dad what I made and he says "yeah sure, the problem is that I need you to give them to have subtitles". He wasn't even impressed. My heart hurt a bit.
I could totally automate the subtitles too (and did it), but what hurt the most is that nobody cared for what I was so pationate about. I'm so fascinated with coding that it replaced all my gaming habits, and now all I do is learn. I want to dedicate a good portion of my life to this but at that moment it seemed nobody in my family cared about it. So this rant is for all those f*ckers that I love but don't know how much my code means to me.21 -
Here's a true story about a "fight" between me and my project manager...
I've been working as a Frontend developer for nearly two years, managed to acquire a decent amount of knowledge, in some cases well above the rest of my coworkers, and one day I got into a bit of a disagreement with my project manager.
Basically he wanted me to copy/paste some feature from another project (needless to say, that... "thing" has more bugs than an ant farm), and against his orders I started doing that feature from scratch, to build a solid foundation from the very start.
I had a lengthy deadline to deliver that feature, they were expecting me to take some time to fix some of the bugs as well, but my idea was to make it bug-free from the moment the feature was released. Both my method and the one I should be copying worked the exact same, but mine was superior in every way, had no bugs, was scalable and upgradeable with little effort, there was no reason not to accept it.
We use scrum as our work methodology, so we have daily meetings. In one of those, the project manager asked me how was the progress on that new feature, and I told him I was just polishing up the code and integrating it with the rest of the project, to make sure everything was working properly. I still had a full day left before the deadline set for that feature, and I was expecting to take about half an hour to finish up a couple lines of code and test everything, no issues so far...
But then he exploded, and demanded to know why wasn't I copying the code from the other project, to which I answered "because this way things will work better".
Right after he said that the feature was working on the other project, copying and pasting it should take a few minutes to do and maybe a couple of extra hours to fix any issues that might have appeared...
The problem here is, the other project was made by trainees, I honestly can't navigate through 3 pages without bumping into an average of 2 errors per page, I was placed into this new project because they know I do quality code, and they wanted this project to be properly made, unlike the previous one, so I was baffled when he said that he preferred me to copy code instead of doing "good" code...
My next reply was "just because something has been made and is working that doesn't mean that it has been properly made nor will work as it should, I could save a few hours copying code (except I wouldn't save any, it would take me more time to adapt the code than to do it from scratch) but then I'll be wasting weeks of work because of new bugs that will be reported over time, because trust me, they will appear... "
I told him this in a very calm manner, but everybody in the meeting room paused and started staring at me, not many dare challenge that specific project manager, and I had just done that...
After a few seconds of silence the PM finally said... "look, if you manage to finish your task inside the set deadline I'll forget we ever had this conversation, but I'll leave a note on my book, just in case..."
I finished that task in about 30 mins, as expected, still had 7 hours till deadline, and I completely forgot about that feature until now because it has never given any issues whatsoever, and is now being used for other projects as well.
It was one of my proudest/rage inducing moments in this project, and honestly, I think I have hit my PM with a very big white glove because some weeks after this event the CEO himself came to the whole team to congratulate us on the outstanding work being made so far, in a project that acted against the PM's orders 90% of the time.11 -
I don't want to write clean code anymore :(
I read Clean Code, Clean Coder, and watched many uncle bob's videos, and I was able to apply best practices and design patterns
I created many systems that really stood the test of time...
Management was kind enough to introduce me to uncle bob clean code in the first place, letting us watch it during work hours. after like one year, my code improved 400% minimum because I am new and I needed guidance from veterans...
That said, to management I am very slow, compared to this other guy, they ask me for a feature and my answer would be like "sure, we need to update the system because it just doesn't support that right now, it is easy though it would take 2 days tops"
they ask the same thing for the other guy : "ok let me see what I can do", 1 hour later, on slack, he writes : done. he slaps bunch of if-statement and make special case that will serve the thing they asked for.
oh 'cool' they say -> but it doesn't do this -> it needs to do that -> ok there is a new bug,-> it doesn't work in build mode-> it doesn't work if you are logged in as a guest, now its perfect ! -> it doesn't work on Android -> ok it works on android but now its not perfect anymore.
and they feel like he is fast (and to be fair he is), this feature? done. ok new bugs? solved. Android compatibility ? just one day ... it looks like he is doing doing doing.
it ends up taking double the time I asked for, and that is not to mention the other system affected during this entire process, extra clean up that I have to do, even my systems that stood the test of time are now ruined and cannot be extracted to other projects. because he just slaps whatever bools and if statements he needs inside any system, uses nothing but Singleton pattern on everything. our app will never be ready-for-business, this I can swear. its very buggy. and to fix it, it needs a change in mentality, not in code.
---------------
uncle bob said : write your code the right way, and the management will see that your code generates less errors, with time, you will earn respect even though they will feel you are slow at first.
well sorry uncle, I've been doing it for a year, my image got bad, you are absolutely right, only when there is no one else allowed to drop a giant shit inside your clean code.
note: we don't really have a technical lead.
-------------------
its been only two days since my new "hack n' slash" meta, the management is already kind of "impressed" ... so I'll keep hacking and slashing until I find a better job.9 -
The Absolutely True Story of a Real Programmer Who Never Learned C.
I have a young friend named Sam who is quite a programming prodigy. Sam does know C! I need to make this clear: he’s not the titular programmer.
But a couple years ago Sam told me a story about a different programmer who never learned C, and I liked it so much that right on the spot I asked his permission to repeat it. (I could never just steal such a tale.)
Sam wasn’t always a programmer—actually he started in his later teens, in part because he was more of a jock, and in part because he was related to programmers and wanted to do his own thing. But, like all great programmers, once he was bitten by the bug he immersed himself completely in it.
One day Sam happened to be talking programming with his uncle, who was also a programmer but from way, way back.
“Hey,” said Sam, “I’m learning this language called C. You must know a lot of languages, did you ever study C?”
“No,” said the uncle, to Sam’s surprise. “I am one of the very few programmers who never had to learn C.”
“Because I wrote it.”
Oh, Sam’s last name is Ritchie.
What I love about this story is the idea of Dennis waiting Sam’s entire life to deliver this zinger. Just imagine sitting on a line that good, watching your nephew grow up and waiting, waiting until the one day he finally starts learning to code. Did he work on the line in his head at night? Like, “Hmm, how should I word it so I can deliver the punch line perfectly? Should I say ‘I never took a class on C?’ Nah, too awkward…”
The great thing about geniuses is how much effort they put into everything.
Courtesy : Wil Shiply.5 -
I committed a bug fix that was about 4 lines changed but a full day of critical thinking.
The next day my boss tells me, that I clearly wasted company time and that I should be producing at least 200 lines of code a day. When will people learn that lines of code is not an accurate measurement of work accomplished?3 -
For a week+ I've been listening to a senior dev ("Bob") continually make fun of another not-quite-a-senior dev ("Tom") over a performance bug in his code. "If he did it right the first time...", "Tom refuses to write tests...that's his problem", "I would have wrote the code correctly ..." all kinds of passive-aggressive put downs. Bob then brags how without him helping Tom, the application would have been a failure (really building himself up).
Bob is out of town and Tom asked me a question about logging performance data in his code. I look and see Bob has done nothing..nothing at all to help Tom. Tom wrote his own JSON and XML parser (data is coming from two different sources) and all kinds of IO stream plumbing code.
I use Visual Studio's feature create classes from JSON/XML, used the XML Serialzier and Newtonsoft.Json to handling the conversion plumbing.
With several hundred of lines gone (down to one line each for the XML/JSON-> object), I wrote unit tests around the business transaction, integration test for the service and database access. Maybe couple of hours worth of work.
I'm 100% sure Bob knew Tom was going in a bad direction (maybe even pushing him that direction), just to swoop in and "save the day" in front of Tom's manager at some future point in time.
This morning's standup ..
Boss: "You're helping Tom since Bob is on vacation? What are you helping with?"
Me: "I refactored the JSON and XML data access, wrote initial unit and integration tests. Tom will have to verify, but I believe any performance problem will now be isolated to the database integration. The problem Bob was talking about on Monday is gone. I thought spending time helping Tom was better than making fun of him."
<couple seconds of silence>
Boss:"Yea...want to let you know, I really, really appreciate that."
Bob, put people first, everyone wins.11 -
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 -
Series of events between me (Mi) and dude in office (DIO).
Instance 1
DIO: There is not psql installed on staging.
Mi: Install it.
DIO: YUM is not working.
Mi: *tries yum it works* It is
DIO: Oh. Didn't work earlier.
Mi: *blank* Make sure you install 9.6
DIO: Cannot find psql
Mi: *types psql, it is already installed*
DIO: Oh, didn't work earlier.
Instance 2
DIO: Made this change to the API, the endpoint is not returning the right value
Mi: *restarts server, shit starts working*
DIO: I am pretty sure I did that, don't know what happened.
Instance 3
DIO: Cannot alter role to give login to this db user.
MI: *runs alter role db_user with login* works
DIO: Don't know why it wasn't working before.
Instance 4
DIO: I have been stuck on this test for the past 1 day, cannot get the API to return the right data while the Rest Endpoint works fine.
Mi: You are hitting the wrong endpoint in the test.
DIO: Oh, I put an extra 's'
Mi: BTW you are testing Spring-Boot with that test and nothing else.
DIO: Yes but what if Spring Boot has a bug?
Mi: ok.7 -
Root has a deadline
I've been working on this CCPA ticket for awhile. Admittedly too long, but I'm new to the codebase and it's fucking sprawling. There has also been a lot of back-and-forth on the ticket.
Anyway, I've had a few blockers, such as how mailers work, the legal copy, where to put a admin-facing link to the dashboard, how to build the jira integration (and its creds), etc.
Quite awhile ago I asked Mr. Product, "Where should I put the ccpa dashboard link?" To which he responds: "I'll get you the answer today!" Awesome. Except he didn't. That day came and went without a peep. So, the next day I ask again: "Where should I put the ccpa dashboard link?" To which he responds: "I'll get you the answer today!" And that day comes and goes, too. I ask again, and you guessed it: "I'll get you the answer today." Repeat ad nauseam.
I also asked about the Jira integration and credentials. I got about the same treatment as above, but with a tiwst: they tell me to talk to / continue to bug Mr. H instead. Except Mr. H had been on PTO for weeks. Every time I ask, they keep referring me to him. A little over two weeks later (yesterday), I finally got a response from him. Yay! I was preoccupied with finishing the dashboard (which wasn't in the original ticket for some reason) so I didn't get a chance to look into it yet. After asking his boss three times, Mr. Product also finally (!!!) gave me a response on the link placement today, too! Though not directly: he discussed it with said boss in a group chat that I'm a part of, but never tagged me or told me directly. So, now I know where to put it (I think), but I have no idea how that area of the site is built (it's dynamic based on domain, login, and roles), so adding it will still be difficult.
The best part:
Today during standup, some lady I've only rarely seen before attends the meeting, doesn't say anything until the very end, and then announces that everything must be code-complete by tomorrow for release, and then promptly signs off.
For fuck's sake. I've had blockers on this for weeks, and now I need to finish it by fucking tonight?
I still don't know how to build the mailers (because translations and formats), nor how to actually send emails using them. I don't know how to modify the footer (dynamic, complex), how to add the admin-facing link (dynamic, complex), nor how build a Jira integration (haven't even looked yet). I just got unblocked on two of these fucking today. and it needs to be done and code reviewed by tomorrow?
No bloody way.
Maybe I should go back to my previous job. 😡rant root has a deadline traded my days for a pocketful of mumbles blockers deadlines nobody cares the boxer18 -
Our web department was deploying a fairly large sales campaign (equivalent to a ‘Black Friday’ for us), and the day before, at 4:00PM, one of the devs emails us and asks “Hey, just a heads up, the main sales page takes almost 30 seconds to load. Any chance you could find out why? Thanks!”
We click the URL they sent, and sure enough, 30 seconds on the dot.
Our department manager almost fell out of his chair (a few ‘F’ bombs were thrown).
DBAs sit next door, so he shouts…
Mgr: ”Hey, did you know the new sales page is taking 30 seconds to open!?”
DBA: “Yea, but it’s not the database. Are you just now hearing about this? They have had performance problems for over week now. Our traces show it’s something on their end.”
Mgr: “-bleep- no!”
Mgr tries to get a hold of anyone …no one is answering the phone..so he leaves to find someone…anyone with authority.
4:15 he comes back..
Mgr: “-beep- All the web managers were in a meeting. I had to interrupt and ask if they knew about the performance problem.”
Me: “Oh crap. I assume they didn’t know or they wouldn’t be in a meeting.”
Mgr: “-bleep- no! No one knew. Apparently the only ones who knew were the 3 developers and the DBA!”
Me: “Uh…what exactly do they want us to do?”
Mgr: “The –bleep- if I know!”
Me: “Are there any load tests we could use for the staging servers? Maybe it’s only the developer servers.”
DBA: “No, just those 3 developers testing. They could reproduce the slowness on staging, so no need for the load tests.”
Mgr: “Oh my –bleep-ing God!”
4:30 ..one of the vice presidents comes into our area…
VP: “So, do we know what the problem is? John tells me you guys are fixing the problem.”
Mgr: “No, we just heard about the problem half hour ago. DBAs said the database side is fine and the traces look like the bottleneck is on web side of things.”
VP: “Hmm, no, John said the problem is the caching. Aren’t you responsible for that?”
Mgr: “Uh…um…yea, but I don’t think anyone knows what the problem is yet.”
VP: “Well, get the caching problem fixed as soon as possible. Our sales numbers this year hinge on the deployment tomorrow.”
- VP leaves -
Me: “I looked at the cache, it’s fine. Their traffic is barely a blip. How much do you want to bet they have a bug or a mistyped url in their javascript? A consistent 30 second load time is suspiciously indicative of a timeout somewhere.”
Mgr: “I was thinking the same thing. I’ll have networking run a trace.”
4:45 Networking run their trace, and sure enough, there was some relative path of ‘something’ pointing to a local resource not on development, it was waiting/timing out after 30 seconds. Fixed the path and page loaded instantaneously. Network admin walks over..
NetworkAdmin: “We had no idea they were having problems. If they told us last week, we could have identified the issue. Did anyone else think 30 second load time was a bit suspicious?”
4:50 VP walks in (“John” is the web team manager)..
VP: “John said the caching issue is fixed. Great job everyone.”
Mgr: “It wasn’t the caching, it was a mistyped resource or something in a javascript file.”
VP: “But the caching is fixed? Right? John said it was caching. Anyway, great job everyone. We’re going to have a great day tomorrow!”
VP leaves
NetworkAdmin: “Ouch…you feel that?”
Me: “Feel what?”
NetworkAdmin: “That bus John just threw us under.”
Mgr: “Yea, but I think John just saved 3 jobs. Remember that.”4 -
!rant & story_time
This happend to the startup I was working for at ~2011. I was a junior Android dev, working on a very popular app.
During experiments for a new feature, I discovered that the system AlarmManager has a serious bug - you can set a repeating alarm with interval=0ms. If your app takes more then 1 ms to handle the Intent, then the AlarmManager will start to fill up the intent Queue, with unexpected results to the OS. causing it to slow down, and reboot when it ran out of Ram. Why? my guess was that because the AlarmManager was part of the OS, then any issues caused by it caused the system process to ran out of ram, crashing it, and the whole system with it. the real kicker was that even after a reboot, the AlarmManager still had Intents queued, causing the device to bootloop for a while, untill the queue was cleared. My boss decided to report the problem to google, as this was an issue in the OS. I built an example app, that caused the crash 10-30 seconds after starting, and submitted to Google. Google responded later that day with "not an issue, no one will ever do this".
Well... At this point I decided to review the autoupdate feature in our app, to make sure this will not happen to us. We just released a new feature where a user can set an update schedule option in the app settings - where you could setup a daily, weekly, or hourly update for the app. after reviewing it, It looked good, and the issue was not triggered in the manual QA I did. So, it was all good. And we released an updated version to the store.
After we did an update-install, we discoverd that, there was a provlem reading the previous version SharedPrefs value for the update schdule settings, and the value defaulted to 0...
the result was, our app caused all our users to go into a bootloop, and because the alarm was reset when the devices booted up, the bootloop could only be solved in a factory reset, or removing our app, before the device rebooted, and then waiting a few reboot cycles.
We lost 50 places in the market, and it took us 6 months to get back to where we were.
It was not my fault, but it sucked big time!4 -
End of second week at a new job. Found what I thought was a bug and wanting to impress I fixed it. The dev reviewing my code had just started a week before me so he also had no idea what was going on. It went live Friday afternoon.
Come back Monday morning and turns out I completely broke everything and nobody could use the site all weekend. I thought I was done for sure. Was shitting myself all day waiting for the call.
TURNS OUT NOBODY EVEN NOTICED4 -
I've been working exclusively from home for over 2 years now. I've been seeing several posts from people talking about adjusting to working from home, so I figured I would compile a list of tips I've learned over the years to help make the adjustment easier for some people.
1) Limit as many distractions as possible. WFH makes it much easier to get distracted. If you have roommates/family members at home, ask them politely to leave you alone while you're working. Make sure the TV is turned off, put your phone on silent, etc.
2) Take regular breaks. I find it easier to accidentally go hours without taking a real break from work. Try working in half hour intervals, and then taking 5-10 minute breaks. Read an article, watch a youtube video, grab some coffee/tea, etc.
3) When you eat lunch, eat it away from your computer. I often find myself eating lunch trying to wrap up fixing a bug, which makes it feel like I never really "took a lunch." Lately I've been trying to step away and do something else completely unrelated to work.
4) Get ready for work like you normally would. It's very easy to wake up, throw on your favorite pair of sweats and sit at the computer with messy hair half awake "ready" to start the day. Instead try doing your normal morning routine before sitting at your computer. It will help your mind and body go into "it's time to work" mode.
5) Keep your work area clean. I find it very difficult to work when my workspace is cluttered. Studies have shown working in a messy place tend to make us less efficient.
6) Keep your work area work related. Try to only have the things you need for work in your workspace. If you're working from your personal computer this can be difficult. I always end up with camera/music equipment left over from the previous night's photo editing/jam sessions. So try to clean off your desk when you're done for the night so it's ready for work in the morning.
7) Prepare for meetings. I have alarms set 10 minutes in advance so I can go from programming mode to meeting mode. During this time I'll go to the bathroom, grab a snack, water, mute all my email notifications, close any non essential programs, get my code ready if I need to present it.
Stuff is hard & stressful right now, but hopefully these tips will make it a bit easier. If anyone else has any good tips please share them.5 -
Manager: Messages not visible! bug ticket!!!!
Dev: oh fuck, there's an issue with our chat system, not good! _inspects ticket_ oh, it's just a display issue that actually is according to the previous spec, yawn...
Dev: please describe the bug better next time, I though we had a major outage, this is simply a small design issue...
Manager: ...
Dev: ...
I think I'm quitting soon guys. I literally do not get paid enough to deal with these incompetent idiots each day.
Meanwhile:
Management: forget your shitty salary, take one for the team, you get 3% of the shares in the company!!!!
Dev: what fucking shares, you haven't even converted to a corporation yet, THERE ARE NO SHARES
Management: ...
Dev: ...
Oh yeah and they called me at 6:30 PM today: "so i guess you are winding down for the day"
fuck outta here i haven't been working since 5 you fucks
jesus i swear some people need to screw their fucking head on straight, so far gone into the hUsTlE CuLtUrE they don't even know what reality is anymorerant i for sure break devrant too much so much rage amazing rage ok thats enough tags how many tags can i make rage hatred done please stop burnout7 -
There was a time I made an update on one of our client's e-commerce website sign-up page. The update caused a bug that allowed new users to create an account without actually creating an account.
The code block meant to save user credentials (i.e email address and password) to the database was commented out for some reasons I still can't remember to this day. After registration new users had their session created just as normal but in reality they have no recorded account on the platform. This shit went on like this for a whole week affecting over 350 new customers before the devil sent me a DM.
I got a call from my boss on that weekend that some users who had made purchases recently can't access their account from a different device and cannot also update their password. Nobody likes duty calls on a weekend, I grudgingly and sluggishly opened up my PC to create a quick fix but when I saw what the problem was I shut down my PC immediately, I ran into the shower like I was being chased by a ghost, I kept screaming "what tha fuck! what tha fuck!!" cus I knew hell was about to break loose.
At that moment everything seemed off as if I could feel everything, I felt the water dripping down my spine, I could hear the tiniest of sound. I thought about the 350 new customers the client just lost, I imagined the raving anger on the face of my boss, I thought about how dumb my colleagues would think I was for such a stupid long running bug.
I wondered through all possible solutions that could save me from this embarrassment.
-- "If this shitty client would have just allowed us verify users email before usage things wouldn't have gotten to this extent"
-- "Should I call the customers to get their email address using their provided telephone?... No they'd think I'm a scammer"
-- "Should I tell my boss the database was hacked? Pffft hack my a**",
-- "Should I create a page for the affected users to re-verify their email address and password? No, some sessions may have expired"
-- "Or maybe this the best time to quit this f*ckn job!"
... Different thoughts from all four corners of the bathroom made it a really long bath. Finally, I decided it was best I told my boss what had happened. So I fixed the code, called my boss the next day and explained the situation on ground to him and yes he was furious. "What a silly mistake..!" he raged and raged. See me in my office by Monday.
That night felt longer than usual, I couldn't sleep properly. I felt pity for the client and I blamed it all on myself... yeah the "silly mistake", I could have been more careful.
Monday came boss wasn't at the office, Tuesday, Wednesday, Thursday, Friday not available. Next week he was around and when we both met the discussion was about a different project. I tried briefing him about last week incident, he seems not to recall and demands we focus on the current project.
However, over three hundred and fifty customers swept under the carpet courtesy of me. I still felt the guilt of that f*ck up till this day.1 -
So I once had a job as a C# developer at a company that rewrote its legacy software in .Net after years of running VB3 code - the project had originally started in 1994 and ran on Windows 3.11.
As one of the only two guys in the team that actually knew VB I was eventually put in charge of bug for bug compatibility. Since our software did some financial estimations that were impossible to do without it (because they were not well defined), our clients didn't much care if the results were slightly wrong, as long as they were exactly compatible with the previous version - compatibility proved the results were correct.
This job mostly consisted of finding rounding errors caused by the old VB3 code, but that's not what I'm here to talk about today.
One day, after dealing with many smaller functions, I felt I was ready to finally tackle the most complicated function in our code. This was a beast of a function, called Calc, which was called from everywhere in the code, did a whole bunch of calculations, and returned a single number. It consisted of 500 or so lines of spaghetti.
This function had a very peculiar structure:
Function Calc(...)
...
If SomeVariable Then
...
If Not SomeVariable Then
...
(the most important bit of calculation happened here)
...
End If
...
End If
...
End Function
But for some reason it actually worked. For days I tried to find out what's going on, where the SomeVariable was being changed or how the nesting indentation was actually wrong and didn't match the source, but to no avail. Eventually, though, after many days, I did find the answer.
SomeVariable = 1
Somehow, the makers of VB3 though it would be a good idea for Not X to be calculated as (-1 - X). So if a variable was not a boolean (-1 for True, 0 for False), both X and Not X could be truthy, non-zero values.
And kids these days complain about JavaScript's handling of ==...7 -
Allright, I'm pissed.
Warning: more than 4k characters written by a non native english speaker ahead.
Legend:
Storytelling
> Short summary of the current situation
> "Something being said"
> (Something being thought)
* Actions *
-- Background --
In an attempt to reorganize my desktop I accidentally deleted a folder I called "development". In there I stored links to all my IDEs (Not sure how you call these in english), but also some workspaces like unity (Not much stuff there, processing (just some hobby stuff) AND Eclipse (FUCKING EVERYTHING RELATED TO SCHOOL WEB DEVELOPMENT). Now 3 days have passed and I realized this important folder was missing. Cleared that windows trash the instant I deleted the trash on my desktop.
> Shit, Regret
Install a file restore programm. Do every possible search. Nothing found.
> Big shit
Deadline was in like 3 days. Week was fucking rough so:
> "Screw this, the teacher nevet corrects the assignments and also fuck JSP"
Fast forward 2 months to last week. Teacher starts checking assignments.
> Fuck
* Sees pattern: Only students with missing or bad marks are checked. *
* Feels save *
Teacher approaching me while working on current projects.
* Doesn't feel save anymore *
> "Well, I'ld like to see your THAT programm"
> Well fuck
* Tells the truth *
> "Well that's unfortunate, but I must write a mark. Do you really have nothing to show?"
* Remember that I worked on the school pcs when I started *
> (Better than nothing. Gotta try it)
* Teacher checks programm, not pleased *
> (Fuck me, but at least it's over...)
> Nope
* Teacher calls me over *
> "With the mark I had to write today you can't reach that good mark even with a good examination, what are we gonna do about this?"
> "Well, there were other assignments that were never checked. Could we replace that mark with one of those?"
* Teacher agrees *
> (Srly bless this guy for that support)
My best choice was an Android app we had to develop during December in pairs. I did the front end (90% of the whole work) and my partner the backend (10 %). I also did 30 % of these 10 %, because I had to review the shit he wasn't able to debug himself.
> brainlogic.exe provided by windows vista
This distribution was partly my fault since I overestimated the work needed for the backend, but also the fault of that fucker. I mean, he didn't tell me the professor already provided 90 % of the backend...
Rest of the week was really busy (always 1 or 2 things to study for each day, workout and family stuff).
Yesterday (It's past 12 already) I arrived at ~9 pm in the dorm I could finally start reviewing my code.
Internet gets shut down at 10 pm.
Gotta hurry.
* Opens project *
* Sees half a year old code *
* Fights urge to puke *
> (Alright I gotta do this. For the mark!)
* waits for gradle to index files *
* Remembers the fact that I haven't opened Android Studio in the last 2 months *
For those who don't develop with android studio: This is an equivalent to ~10k windows updates waiting to be installed
> (Well, gotta work with this kinda old version)
"gradle sync failed"
> ( Ok, just restart it. You're fine )
* Android Studio doesn't react anymore and/or renders *
* Waits 5 min *
* Restarts laptop *
* Android Studio is reacting again*
"gradle is synching"
9:45 pm: gradle is done and I can finally compile my app
> FML
* Sees App launched on phone *
* Almost pukes again *
> (This was the assigment for the UX chapter, so design doesn't matter)
UX is decent. Proceeds with testing stuff. Save paths work, but some bugs can be caused by going of it
* fixes as much as possible *
* Takes quick look at backend *
Date date = new Date (GregorianCalender.getInstance().getTimeInMillis());
C'mon, I asked you to be the backend. You got 90% of the methods already written by the teacher and had 2 months to write the interfaces to my Front end AND you come up with shits like that.
Note: this example is a minor example of brainlogic.exe
I did what I could to make improve my situation. Hopefully he doesn't discover the bugs. And If it's a backend bug then I could't care less, since that was not my job!
Wish me luck for today!undefined web development jsp school assignment not my job fuck up android studio tldr; not getting paid enough for this shit gradle blame backend9 -
I just experienced the opposite of rant.
I spent 1 entire day ranting about a algorithm I couldn't write with no issues, it occupied all my mind and got me pissed of.
And today, I rewrote it entirely, and it works perfectly everywhere.
I was like : "No it can't work here. Oh ok", "And here's the bug ! No ? Nice.", "Don't tell me it'll work here. I'm a God".
That's why I love being a dev :D
Thank you, you freaking problem I had !7 -
Today during the daily meeting while debating a huge bug, the intern says "I have an idea". 5 minutes of histerical laughture. 30 minutes later, she fixed It.
Interns day at the office.7 -
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 -
Shalom my dudes!
A quick GT from my college years:
>be me
>barely knew how to program but eager to learn more and more
>end of first semester, teacher assigns a couple of classic games for extra points
>battleship, pacman, sudoku, tetris, etc. All done in C
>end up with tetris
>2 days later I have the final build, including all the tech shit like walljump
>start thinking to myself "this looks really fucking ugly, what's wrong with me??"
>look up graphic libraries for C when a light flashes on my computer screen
>*NCURSES*
>the next 2 weeks were a montage of me learning linux, understanding ncurses and redoing my code (plus bug fixing)
>presentation day
>palms are spaghetti
>knees? Spaghetti
>arms? Spaghetti
>class is impressed with my work
>professor comes up to the board and tells me that I get a 0 because it wasn't "pure C"
>clenched my jaw and walked towards the dean office
>"hey, mind if I show you something?"
>open my laptop and show him the game
>he's having a blast since every time you do a 5 row crunch (a tetris), a piece of clothing of a random model comes off
>explain to him what happened in the classroom
>he looks at my code, runs it on a plagiarism checker and tells me that he will edit the grade himself
> a week later there's a 10 on my grading area
>feelsgoodman6 -
If I died, I would have one regret.
I once worked in a code base whose messiness would make an oil spill in the fucking pacific ocean look like spilled milk on the floor in comparison.
Naturally, it had bugs. Oh BOY did it have bugs. Most of them were taken care of well enough. Or about as well as anyone insane enough to work in that code could.
There was just this one bug, which I still (un)fondly call "my bug of 2 years". It. Just. Didn't. Make. Sense.
It was written in JavaScript. Naturally. Which by itself, is the metaphorical programming language equivalent of a pile of horse manure. But this bug. It was the guano icing on top of the horse manure cake which is JavaScript.
I LITERALLY spent 2 years trying to find a solution. I woke up at night, thinking of explanations. I had dreams about fixing the damn thing. And I never did.
On the day I left the job, I had to pass it on to a friend (who hasn't solved the fucker yet either).
I hated that bug with all my heart. But..
Now that I think back, all the books I read, all the docs that I scoured, every non working fix I coded and every failed efforts I made on it, eventually made me a better programmer.
So cherish your bugs and issues. Sometimes, they come, not to hurt you, but to help you grow (unless you use JS, those bugs just wanna fuck you).3 -
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 -
You guys made my whole day for the first time since I joined. (yes all of you!)
1) I had a 'fight' with a guy I'm making a startup with. Had to explain some of the story of my life, just to clarify that I'm not evil or generally unwilling to understand - regarding me, having the need to keep using practices
2) I've found that a whole niche-community of people seems to ignore the rest of the community and won't tag along. Having spent several months to be able to help, and receiving shit or absolutely nothing, for finally trying
3) Was in a bad mood the moment I woke up, because I fought with my girlfriend last night because she fails to communicate simple things and won't realise it.
Sorry for the bad punctuation, I tried and smartphones aren't a nice way to edit such things.
So my rant is basically a thank you! Not a rant.. But still, I think you people are the best for being so relatable and making me laugh, and feel like there's more of 'my kind'.
I also just fixed a bug in my app by (finally!) asking the framework maintainer what's up, and got a response which made no sense in a logical manner.. That's a rant for another day, I'll aggregate all the 0 fucks given, when I'm finally able to leave this thing behind, and give you a proper curse-filled shit stack of the nonsense I'm experiencing!
The bug would still live if I weren't so energized by devRant
EDIT: '!' != ','1 -
My form of rubber ducking is starting to post a question on StackOverflow and realizing in the middle of typing the reason for the bug I've struggled with all day.2
-
Programmer Influencers piss me off to Jupiter and back.
The ones who talk about just being a programmer, and don't do normal tutorials and solve a real-world problem and demonstrate it.
"i iNcREaSeD mY pRoDuCTiViTy bY 90%. hErE's HoW"
"tOp 10 lAnGuAGeS yOu sHoUlD lEaRn iN 2023"
"dAy iN thE LiFe oF a SoFtWaRe EnGiNeEr"
"HeRE's hOw yOu cAn wRiTe bUg fReE cOdE"13 -
I've found and fixed any kind of "bad bug" I can think of over my career from allowing negative financial transfers to weird platform specific behaviour, here are a few of the more interesting ones that come to mind...
#1 - Most expensive lesson learned
Almost 10 years ago (while learning to code) I wrote a loyalty card system that ended up going national. Fast forward 2 years and by some miracle the system still worked and had services running on 500+ POS servers in large retail stores uploading thousands of transactions each second - due to this increased traffic to stay ahead of any trouble we decided to add a loadbalancer to our backend.
This was simply a matter of re-assigning the IP and would cause 10-15 minutes of downtime (for the first time ever), we made the switch and everything seemed perfect. Too perfect...
After 10 minutes every phone in the office started going beserk - calls where coming in about store servers irreparably crashing all over the country taking all the tills offline and forcing them to close doors midday. It was bad and we couldn't conceive how it could possibly be us or our software to blame.
Turns out we made the local service write any web service errors to a log file upon failure for debugging purposes before retrying - a perfectly sensible thing to do if I hadn't forgotten to check the size of or clear the log file. In about 15 minutes of downtime each stores error log proceeded to grow and consume every available byte of HD space before crashing windows.
#2 - Hardest to find
This was a true "Nessie" bug.. We had a single codebase powering a few hundred sites. Every now and then at some point the web server would spontaneously die and vommit a bunch of sql statements and sensitive data back to the user causing huge concern but I could never remotely replicate the behaviour - until 4 years later it happened to one of our support staff and I could pull out their network & session info.
Turns out years back when the server was first setup each domain was added as an individual "Site" on IIS but shared the same root directory and hence the same session path. It would have remained unnoticed if we had not grown but as our traffic increased ever so often 2 users of different sites would end up sharing a session id causing the server to promptly implode on itself.
#3 - Most elegant fix
Same bastard IIS server as #2. Codebase was the most unsecure unstable travesty I've ever worked with - sql injection vuns in EVERY URL, sql statements stored in COOKIES... this thing was irreparably fucked up but had to stay online until it could be replaced. Basically every other day it got hit by bots ended up sending bluepill spam or mining shitcoin and I would simply delete the instance and recreate it in a semi un-compromised state which was an acceptable solution for the business for uptime... until we we're DDOS'ed for 5 days straight.
My hands were tied and there was no way to mitigate it except for stopping individual sites as they came under attack and starting them after it subsided... (for some reason they seemed to be targeting by domain instead of ip). After 3 days of doing this manually I was given the go ahead to use any resources necessary to make it stop and especially since it was IIS6 I had no fucking clue where to start.
So I stuck to what I knew and deployed a $5 vm running an Nginx reverse proxy with heavy caching and rate limiting linked to a custom fail2ban plugin in in front of the insecure server. The attacks died instantly, the server sped up 10x and was never compromised by bots again (presumably since they got back a linux user agent). To this day I marvel at this miracle $5 fix.1 -
PM: Ok Android, i've reviewed the latest build, you are good to release. Waiting on iOS's build to test.
Me: ... are we not holding all builds until we hear back from backend about that bug?, as we likely have to change something on our side?
PM: Which bug?
Me: ... the only one we discussed yesterday in the team meeting.
PM: How many customers is it affecting?
Me: that we know of, one ... the CEO of our company
PM: oh that one, yeah were not doing that anymore.
Me: WHAT? i've been waiting all day / night to hear back. Why are we not doing this?
PM: ¯\_(ツ)_/¯ ... Everything is too messy at the minute anyway, the release plan is changing every day. Need to keep it back in line.
Me: ... the plan has changed exactly once. We had a plan at the start of last week for the last release, we changed it YESTERDAY to include 2 critical bug fixes. The only issue with the plan changing is nobody telling us these aren't bugs anymore
PM: We can discuss tomorrow in the team meeting.
CEO: oh hey guys, yeah we pulled that bug fix. Its not really a bug, more like a missing feature. No way it will get done before xmas. Going to live with the way it works for now and fix it properly next year.
Me: Ok, fair enough, but we really need to be told these decisions.
CEO: sure, sorry, didn't think anyone was blocked by this. What was the blocker?
Me: ..... you asked me yesterday to get this bug fix in the build ... you asked for the final build to be made today so we can go through the app store review. As we all discussed yesterday, today is kind of the last day we can really do this.
CEO: ok, its late, we can discuss this tomorrow in the team meeting.
Me: ..... ..... ..... ..... sure7 -
1. Slack. Pretty good chat app for dev companies, I use it to prevent people standing next to my desk 40 times a day.
2. Unit testing tools, especially when fully automated using a git master branch hook, something like codeship/jenkins, and a deployment service.
3. Jetbrains IDEs. I love Vim, but Jetbrains makes theming, autocompleting & code style checks with mixed templating languages a breeze.
4. Urxvt terminal. It's a bit of work at the start, but so extremely fast and customizable.
5. Cinnamon or i3. Not really dev tools, but both make it easy to organize many windows.
6. A smart production bug logger. I tend to use Bugsnag, Rollbar or Sentry.
7. A good coffee machine. Preferably some high pressure espresso maker which costs more than the CEO's car, using organic fairtrade hipster beans with a picture of a laughing south american farmer. And don't you dare fuck it up with sugar.
8. Some high quality bars of chocolate. Not to consume yourself, but to offer to coworkers while they wait for you to fix a broken deploy. The importance of office politics is not to be underestimated.1 -
So… I released v2.0.0 of devRant UWP a few weeks ago.
Then I got a lot of reports of problems on Windows 10 Mobile and older (than 1809) versions of Windows 10 on Desktop.
I decided to resubmit v2.0.0-beta16 to the store, and try to find the issue in the update… I didn't find it.
The code seems the same as the working version (at least the part I try to test is 100% equal).
So it seems I fucked up the vs project.
This means that to find the issue I can spend weeks to search it over and over inside the latest project (using shitty emulators of older Windows 10 builds to debug it), or I could just restore it to the old v2.0.0-beta16 (released in august) and implement again every single new feature and fix (something like 5 new features, dozens of improvements, changes and bug fixes).
In any case, this will require a lot of time (which I don't have at this moment).
I'm really sorry for this inconvenience, I know some of you use my client daily (~3.000 users I guess), I'm really glad someone likes it, and thanks a lot for the awesome reviews and feedback, but stable v2 (v2.1.0 at this point) will be available not earlier than in February.
Probably some of you have already download v2.0.0 while it was available in the store, and maybe it works on your device (please let me know in the comments below if you did, how is it going, and also if you like the new features and improvements).
After this epic fail, and more than 1 year (way too much) of v2 public beta, I want to throw the current project in the trash, and start it from scratch.
Which means I will start to work on v3 as soon as you will see v2.1.0 in the store, making it faster, lighter and with better support for the latest Windows 10 (Fluent Design and not) features, dropping the support for the very old UWP API.
Thanks for your attention.
Have a good day (or night)!5 -
!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 -
I've caught the efficiency bug.
I recently started a minimum wage job to get my life back in order after a failed 2 year project (post mortem: next time bring more cash for a longer runway)
I've noticed this thing I do at every job, where I see inefficiency and I think "how can I use technology to automate myself out of this job?"
My first ever application was in C++ for college (a BASIC interpreter) and it's been so long I've since forgotten the language.
But after a while every language starts to look like every other language, and you start to wonder if maybe the reason you never seriously went anywhere as a programmer was because you never really were cut out for it.
Code monkey, sure. Programmer? Dunno, maybe I just suffer from imposter syndrome.
So a few years back I worked at a retail chain. Nothing as big as walmart, but they have well over 10k store locations. They had two IBM handscanners per store, old grungy ugly things, and one of these machines would inevitably be broken, lost or in need of upgrade/replacement about once a year, per location. District manager, who I hit it off with, and made a point of building report with, told me they were paying something like $1500 a piece.
After a programming dry spell, I picked up 'coding' with MIT app inventor. Built a 'mostly complete' inventory management app over the course of a month, and waited for the right time.
The day of a big store audit, (and the day before a multi-regional meeting), I made sure I was in-store at the same time as my district manager, so he could 'stumble upon' me working, scanning in and pricing items into the app.
Naturally he asked about it, and I had the numbers, the print outs, and the app itself to show him. He seemed impressed by what amounted to a code monkeys 'non-code' solution for a problem they had.
Long story short, he does what I expected, runs it by the other regionals and middle executives at the meeting, and six months later they had invested in a full blown in house app, cutting IBM out of the mix I presume.
From what I understand they now use the app throughout the entire store chain.
So if you work at IBM, sorry, that contract you lost for handscanners at 10k+ stores? Yeah that was my fault (and MIT app inventor).
They say software is 'eating the world' but it really goes to show, for a lot of 'almost coders' and 'code monkeys' half our problem is dealing with setup and platform boilerplate. I think in the future that a lot of jobs are either going to be created or destroyed thanks to better 'low code' solutions, and it seems to be a big potential future market.
In the mean while I've realized, while working on side projects, that maybe I can do this after all, and taken up Kotlin. I want to do a couple of apps for efficiency and store tracking at my current employer to see if I'm capable and not just an mit app-inventor codemonkey after all.
I'm hoping, by demonstrating what I can do, I can use that as a springboard into an internal programming position at my current gig (which seems to be a company thats moving towards a more tech oriented approach to efficiency and management). Also watching money walk out the door due to inefficiency kinda pisses me off, and the thought of fixing those issues sounds really interesting. At the end of the day I just like learning new technologies, and maybe this is all just an excuse to pick up something new after spending so long on less serious work.
I still have a ways to go, but the prospect of working on B2B, and being able to offer technological solutions to common and recurring business needs excites the hell out of me..as cringy and over-repeated as that may sound.5 -
This probably isn't the coolest bug I've ever solved, but surely the one with the biggest faceplam
So I was building a Bluetooth smart watch that pairs with your Android device for the final year bachelor's project. The submission was in a 2 days and it was all ready and it suddenly stopped working.. Spent hours trying to fix it, even tried to get a replacement Bluetooth module (was out of stock -_-).. After a day's worth of freaking out I discovered that Android phones (at least the OnePlus X) don't connect to Bluetooth modules when their battery is below 15% -_- and since I was freaking out I would let the phone charge a bit and get back to debugging and it never crossed 15% so it never worked.. One day of debugging attempts later it suddenly struck me that low battery might be an issue.. And voila! It worked after charging the phone
Shouldn't such things be clearly mentioned in documentation :/
(Btw, got full for the project, got a 10/10 GPA for the semester)1 -
So following from this rant:
https://devrant.io/rants/618679/...
Warning long rant ahead
I resigned and my last day is tomorrow, I've released the app updates a week ago, patched a couple bugs for iOS.
My boss and the idiot who can't open an email on his phone go off to use the app as part of some training thing for the company.
I got a call yesterday saying the Android app has issues and I proceeded to ask my boss what type of phone they have:
"Samsung and Huawei"
I thought okay I need more info "what type of phone..." He responds with wouldn't have a clue....
I can't see the phone, didn't get a screenshot or anything like that but I'm expected to just know what the phone is.
My boss goes on to say yeah it's the app (he is literally the most computer illiterate person I could think of aside from guy who can't open emails on phone, how the fuck do you know that?)
Me: "From all the testing I've done the app works"
Look if you want a more robust error free update hire more than one developer I can't test every single fucking use case to determine the app is 100% bug free, I've tested on at least 10 phones before releasing the update just to be absolutely sure I got everything done and okay I missed something.
So I proceed to get my boss to tell the guy who has the issue I'll sign him up to the testing app to find out the cause and hopefully fix the issue, I setup crashlytics send the email and get a call from my boss saying the guy didn't get the email.
Well okay is it my problem that we have two emails for the same person where one of them is a typo? No it's the guy who asked and wrote down the email instead of actually forwarding a blank email from him to be absolutely sure, I sent the email to both just to be on the safe side.
I swear if he is another idiot who can't open emails on his phone well I can't help him, app works on my phone and the phones at work.
I need a phone where it doesn't work so I can get a solution I know works but if I have to deal with these idiots that can't even check an email how the fuck do I do that?
Sorry about the formatting just needed to get this off my chest before I start work.
Oh and I get asked "so who'll fix the bugs when you're gone" well I can't (in reality I'm not working for free, I'm not traveling 1 1/2 commute time to fix one bug for free, go hire someone you think will love to work for minimum wage and let's see if this guy can do what I did)8 -
Today I learned the hard way that losing your app's key store means no more updating , bug fixing , performance boosting , features adding ...
The app had like 5k downloads on the play store ..
Lost the key when one of my hard drives burned ..
Lesson of the day : keep your keys safe .
*trying to stay strong*3 -
If programmers became musicians we would see
- Wake me up when my build ends, 21 cores, Boulevard of broken CI pipelines by Blue Screen Day
- Smoke from my cabinet by Deep For-Loop
- This is how you debug me by Loopback
- Post-release rhapsody by debug queen
- Another bug in the code by Programmer Floyd
- Smells like bad code by Coders from Botswana
- A place for my code, Cure for the bug by Likin to code at dark
etc etc..5 -
> be me a 23 y.o intern
> two years on self learned MEAN stack
> first day of intern<
> boss: we need you to become an iOS intern
> me: *whut*
> me: *thinking swift syntax is similar to JavaScript*
> me: OK, in swift ?
> boss: No, in Obj-C
> me: *fuck*
> spend 2 days to familiarize with Obj-C
> boss: Here's a bug, solve it.
> me: OK
> me: *checking their code for the first time*
> me: *fuck, fucking huge*
> me: *open up bug related ViewConttoller*
> me: *fuck, 6k lines of code*
> me: *fucking MVC*
> spend 2 hours to fix the bug <
> boss: you did great ! awesome
> me: *heh*
> boss: *announce to everyone* from now on INTERN will take over the project.
> me: *whut*
> boss: here's our roadmap plz implement features
> after 3 months <
> me fixing bug <
> me do feature development <
> me write shitty code <
.
.
.
repeat, life as an intern6 -
Hey guys,
this rant will be long again. I'm sorry for any grammar errors or something like that, english isn't my native language. Furthermore I'm actually very sad and not in a good mood.
Why? What happened? Some of you may already know - I'm doing my apprenticeship / education in a smal company.
There I'm learning a lot, I'm developing awesome features directly for the clients, experience of which other in my age (I'm only 19 years old) can only dream.
Working in such a small company is very exhausting, but I love my job, I love programming. I turned my hobby into a profession and I'm very proud of it.
But then there are moments like the last time, when I had to present something for a client - the first presentation was good, the last was a disaster, nothing worked - but I learned from it.
But this time everything is worse than bad - I mean really, really worse than bad.
I've worked the whole week on a cool new feature - I've done everything that it works yesterday, that everything gets done before the deadline of yesterday.
To achieve this I've coded thursday till 10pm ! At home! Friday I tested the whole day everything to ensure that everything is working properly. I fixed several bugs and then at the end of the day everything seems to be working. Even my boss said that it looks good and he thinks that the rollout to all clients will become good and without any issues.
But unfortunately deceived.
Yesterday evening I wrote a long mail to my boss - with a "manual". He was very proud and said that he is confident that everything will work fine. He trusts me completly.
Then, this morning I received a mail from him - nothing works anymore - all clients have issues, everything stays blank - because I've forgotten to ensure that the new feature (a plugin) and its functionality is supported by the device (needs a installation).
First - I was very shoked - but in the same moment I thought - one moment - you've written an if statement, if the plugin is installed - so why the fuck should it broken everything?!
I looked instant to the code via git. This has to be a very bad joke from my boss I thought. But then I saw the fucking bug - I've written:
if(plugin) { // do shit }
but it has to be if(typeof plugin !== 'undefined')
I fucked up everything - due to this fucking mistake. This little piece of shit I've forgotten on one single line fucked up everything. I'm sorry for this mode of expression but I thought - no this can not be true - it must be a bad bad nightmare.
I've tested this so long, every scenario, everything. Worked till the night so it gets finished. No one, no one from my classmates would ever think of working so long. But I did it, because I love my job. I've implemented a check to ensure that the plugin is installed - but implemented it wrong - exactly this line which caused all the errors should prevent exactly this - what an irony of fate.
I've instantly called my boss and apologized for this mistake. The mistake can't be undone. My boss now has to go to all clients to fix it. This will be very expensive...
Oh my goodnes, I just cried.
I'm only working about half a year in this company - they trust me so much - but I'm not perfect - I make mistakes - like everyone else. This time my boss didn't looked over my code, didn't review it, because he trusted me completly - now this happens. I think this destroyed the trust :( I'm so sad.
He only said that we will talk on monday, how we can prevent such things in the feature..
Oh guys, I don't know - I've fucked up everything, we were so overhelmed that everything would work :(
Now I'm the looser who fucked up - because not testing enough - even when I tested it for days, even at home - worked at home - till the night - for free, for nothing - voluntary.
This is the thanks for that.
Thousand good things - but one mistake and you're the little asshole. You - a 19 year old guy, which works since 6 months in a company. A boss which trusts you and don't look over your code. One line which should prevent crashing, crashed everything.
I'm sorry that this rant is so long, I just need to talk to you guys because I'm so sad. Again. This has happend to frequently lately.16 -
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 -
"I keep complaining to you guys every day about this bug and nothing happens!"
Firstly, it ain't a bug. Secondly, you're not complaining, you're whining. Thirdly, complaining is a bloody limited resource. If you do it once a year, everyone's going to sit up and take notice. If you do it daily, it's just "Duncan having another moan", and the only thing anyone will do is play "what time of day will Duncan rant" sweepstakes. -
This is a friend's story:
So I've been trying to upload a free sticker pack for iMessage to AppStore for a while now. Why "trying"? because it keeps getting declined for the silliest reasons. It's nothing complex: just a bunch of our company's stickers about dev life. "Stickers for devs, from devs."
The first time Apple has declined the app because of the overall design, the second time it was because we used iMessage in the title. But this time it makes no sense at all. This is the message I got from Apple:
"Your app contains references to test, trial, demo, beta, pre-release or other incomplete content.
Specifically, some of your app’s stickers have “beta” references."
Huh? Check out the pic - one of our dev-related stickers says "still in beta". I guess Apple took that way too literally. Good thing they didn't tell me my app was too buggy because it has a sticker of a bug which says "it's not a bug, it's a feature"...
On second thought, what if AppStore is a modern-day Genie? Maybe I should add a sticker that says "Apple owns me $20 million in stock"? Or just one that says "Apple approves this sticker pack".
#Thisneverhappens_on_googleplay #appstore_make_a_wish #rookout8 -
There are three things in my workflow that I don't like:
1. Feature requests appearing out of thin air.
It's common to be handled work at 2pm that needs to be deployed by the end of day. Usually it's bug fixes, and that's ok I guess, but sometimes it's brand new features. How the fuck am I supposed to do a good job in such a short time? I don't even have time to wrap my head around the details and I'm expected to implement it, test it, make sure it doesn't break anything and make it pass through code review? With still time to deploy and make sure it's ok? In a few hours? I'm not fucking superman!
2. Not being asked about estimates.
Everything is handed to me with a fixed deadline, usually pulled off my PM's ass, who has no frontend experience. "You have two weeks to make this website." "You must have this done this by tomorrow morning." The result, of course, is rushed code that was barely tested (by hand, no time for unit or integration tests).
3. Being the last part of the product development process.
Being the last part means that our deadlines are the most strict. If we don't meet the deadline, the client will be pissed. The thing is, the design part is usually the one that exceeds its time (because clients keep asking for changes). So when the project lands on our desks it's already delayed and we have to rush it.
This all sounds too much like bad planning to me. I guess it's the result of not doing scrum. There are no sprints, no planning meetings, only weekly status update meetings. Are your jobs similar? Is it just usual "agency work"?
I'm so tired of the constant pressure and having to rush my work. Oh, and the worst part is we don't have time for anything else. We're still stuck with webpack 2 because we never have time to update it ffs.6 -
Tl;Dr - It started as an escape, carried on as fun, then as a way to be lazy, and finally as a way of life. Coding has defined and shaped my entire life from the age of nine.
When I was nine I was playing a game on my ZX spectrum and accidentally knocked the keyboard as I reached over to adjust my TV. Incredibly parts of it actually made a little sense to me and got my curiosity. I spent hours reading through that code, afraid to turn the Spectrum off in case I couldn't get back to it. Weeks later I got hold of a book of example code to copy out to do various things like making patterns on the screen. I was amazed by it. You told it what to do, and it did it! (don't you miss the days when coding worked like that?) I was bitten by the coding bug (excuse the pun) and I'd got it bad! I spent many late nights on that thing, escaping from a difficult home life. People (especially adults) were confusing, and in my experience unpredictable. When you did things wrong they shouted at you and threatened to take you away, or ignored you completely. Code never did that. If you did something wrong, it quietly let you know and often told you exactly what was wrong. It wasn't because of shifting expectations or a change of mood or anything like that. It was just clean logic, simple cause and effect.
I get my first computer a year later: an IBM XT that had been discarded by a company and was fitted with a key on the side to turn it on. With the impressive noise it made it really was like starting an engine. Whole most kids would have played with the games, I spent my time playing with batch scripts and writing very simple text adventures. And discovering what "format c:" does. With some abuse and threatened violence I managed to get windows running on it. Windows 2.1 I think it was.
At 12 I got a Gateway 75 running Windows 95. Over the next few years I do covered many amazing games: ROTT, Doom, Hexen, and so on. Aside from the games themselves, I was fascinated by the way computers could be linked together to play together (this was still early days for the Web and computers networked in a home was very unusual). I also got into making levels for Doom, Heretic, and years later Duke Nukem 3D (pretty sure it was heretic; all I remember is the nightmare of trying to write levels entirely by code!). I enjoyed re-scripting some of the weapons and monsters to behave differently. About this time I also got into HTML (I still call this coding, but not programming), C, and java. I had trouble with C as none of the examples and tutorial code seemed to run properly under a Windows environment. Similar for my very short stint with assembly. At some point I got a TI-83 programmable calculator and started rewriting my old batch script games on it, including one "Gangster Lord" game that had the same mechanics as a lot of the Facebook games that appeared later (do things, earn money, spend money to buy stuff to do more things). Worried about upcoming exams, I also made a number of maths helper apps, including a quadratic equation solver that gave the steps, and a fake calculator reset to smuggle them into my exams. When the day came I panicked and did a proper reset for fear of being caught.
At 18 I was convinced I was going to be a professional coder as I started a degree in Computer Science. Three months later I dropped out after a bunch of lectures teaching what input and output devices were and realising we were only going to be taught Java and no C++. I started a job on the call centre of a big company, but was frustrated with many of the boring and repetitive tasks we had to do. So I put my previous knowledge to use, and quickly learned VBA to automate tasks. It wasn't long before I ended up promoted to Business Analyst where I worked on a great team building small systems in Office, SAS, and a few other tools.
I decided to retrain in psychology, so left the job I was in and started another degree. During my work and placements my skills came in use a number of times to simplify and automate tasks. I finished my degree, then took a job as a teaching assistant while I worked out what I wanted to do next and how to pay for it. Three years later I've ended up IT technican at the school, responsible for the website, teaching a number of Computing lessons each week, and unofficial co-coordinator for Computing as a subject. I also run a team of ten year old Digital Leaders who I am training in online safety and as technical experts; I am hoping to inspire them to a future in coding. In September I'll be starting teacher training with a view to becoming a Computing specialist teacher. Oh, and I'm currently doing a course in Android Development in my free time.
And this all started with an accidental knock on the keyboard of a ZX Spectrum.6 -
So, a few years ago I was working at a small state government department. After we has suffered a major development infrastructure outage (another story), I was so outspoken about what a shitty job the infrastructure vendor was doing, the IT Director put me in charge of managing the environment and the vendor, even though I was actually a software architect.
Anyway, a year later, we get a new project manager, and she decides that she needs to bring in a new team of contract developers because she doesn't trust us incumbents.
They develop a new application, but won't use our test team, insisting that their "BA" can do the testing themselves.
Finally it goes into production.
And crashes on Day 1. And keeps crashing.
Its the infrastructure goes out the cry from her office, do something about it!
I check the logs, can find nothing wrong, just this application keeps crashing.
I and another dev ask for the source code so that we can see if we can help find their bug, but we are told in no uncertain terms that there is no bug, they don't need any help, and we must focus on fixing the hardware issue.
After a couple of days of this, she called a meeting, all the PMs, the whole of the other project team, and me and my mate. And she starts laying into us about how we are letting them all down.
We insist that they have a bug, they insist that they can't have a bug because "it's been tested".
This ends up in a shouting match when my mate lost his cool with her.
So, we went back to our desks, got the exe and the pdb files (yes, they had published debug info to production), and reverse engineered it back to C# source, and then started looking through it.
Around midnight, we spotted the bug.
We took it to them the next morning, and it was like "Oh". When we asked how they could have tested it, they said, ah, well, we didn't actually test that function as we didn't think it would be used much....
What happened after that?
Not a happy ending. Six months later the IT Director retires and she gets shoed in as the new IT Director and then starts a bullying campaign against the two of us until we quit.5 -
Once I've worked in a start-up located in an engineering university "incubator", so we had a lot of engineer-to-be students applying for part-time jobs.
One of these kids was hired by my boss who labeled him "highly technical, very skilled in IT".
One day, while very busy with my own upcoming release, I had to help him finding a bug in his (horrible) code.
Me: Oh, that's easy, you need to load the image from the parent directory
Guy: ...
Me: You know how to do this, right? You're 1 exam away from being a computer engineer
Guy: ...
Me: Ok, ok, don't worry. Just type "../" right before the path
The guy starts typing, literally, "dotdotslash" into the path.
I immediately stopped him, almost crying. Then, I asked him to go for a walk.
"Don't mind about your bug, I'll take care"3 -
Found a bug, reported it to the maintainer.
He then tells me to ignore it since no one noticed it (besides me).
I tell him i can't do it since it's just wrong and he can simply fix it.
Turns out he's just lazy as hell and got mad at me, so i go and fix it.
Next day boss is mad at me because i'm wasting time on tasks that it's not of my concern even knowing all my tasks were completed.
Not even a "thank you by the way".
What did i miss here?4 -
We all work on the same room: Devs and testers.
In order to communicate with each other without taking off our earphones, we use the chat app.
Ok, sometimes the chat app has delay sending messages.
I really, really hate when one of the testers comes to my desk without telling me he's coming to my desk! >:v and this is the reason why I hate it so much: I'm concentrate in my code, listening to ASP or SPA and, suddenly, I feel a heavy presence behind my monitors. I look up and I see a very penetrating gaze from the corpulent tester looking at me (he's tall). Every time he does that I almost have a heart attack D:
"There's a bug I want you to check" he says.
And I check my chat app if there's a delayed message from him. Nothing, NOTHING >:v
Always, when I want to go to his desk, I send him a message
"Is it ok if I go to your desk?" and he says me "You don't have to ask for it, just come here" but the thing is that I do that because I expect him to do the same :/
Fortunately this doesn't happen every day, but it pisses me off, and I don't know how to tell him to stop doing that because I don't want to be like a... jerk? intolerant? I don't know15 -
It's about a guy that knows better.
I was working as a subcontractor on a bigger system. We (subs) were not allowed to deploy code, we had to wait for contractor to deploy.
One day I got an email that my code is bugged and that my feature is not working on production. I checked it on test env, everything was fine. Then I checked if the code I wrote was deployed. It was not.
I send an email explaining that if they deployed my code it would be working. Then I got a response. There was a bug in my code.
Another email. I asked how would they know? Do they have a test on their environment that failed?
No. There is one guy that READ my code and he said it should not work, so he will not deploy it. He was not a programmer, he was a business consultant responsible for the documentation.
His issue was that I used a function that was not in a class. So if the function is not declared it's obvious it will not work. I had to explain to him in another email, that you can use object of another class inside your class and then call a function, that is not in your class. It was the last time this guy blocked my deploy.
TL;DR, I had to explain a non-dev how object composition works in order to have my code deployed. Took four emails.4 -
So the CEO called me down about a super urgent bug that needs to be fixed or we will loose several hundred thousand pounds of business.
I rush down to his office and there he has a graph "look the values are barely moving i would expect the values to be more erratic this time of day"
*i look at the graph*
"Errrr your looking at 02:00 in the morning, it's 14:00"
Boss: ahh good spot *looks at 14:00* yea that looks good, great job.5 -
So we're working on a few initial apps for a hackercamp and finetuning the OS. We've been coding for like 17-18 hours trying to finish this off without a day 1 patch on the event itself, when someone starts swearing like a sailor. We walk past him take a look at his code and see that he's started an array at 3 instead of 0. He's one of the more experienced members on the team so this is a lack of sleep bug rather than a not knowing. To this day whenever someone makes an array error in their code someone always shouts "Arrays start at 3 right"!
Maybe not the most satisfying bugs but man is it funny as hell. -
OK< been a long time user of Unity.
Tried the latest update as I and others were enthusiastic about creating a joint project of gamers and developers.
As I was building up a started website and we were getting things with Unity ready...BOOM,. They Fuck up the installs.
Not just a minor thing here or there but not finding its own Fucking file locations where it installs shit. You try and say, Hey Unity you fucking twat, install here in this folder.
Boom again, it installs part of it there, and then continues installing shit everywhere else it wants to. Then the assholes at Unity give this Bullshit claim "the bug has been fixed."
Just reinstall.
Fuck you, its never that simple, You have to delete all sorts of fucking files to make sure conflicts from a previous corruption isn't just loaded on top of so it does not fuck up later.
So we did all that from programs, program data, program(x86), AppData Local, Local Low, and Roaming.
For added measure we manually removed all the crap from the registry folders (that was a pain but necessary), and then ran a cleaner to make sure all the left over shit was gone.
Thinking, OK you shit tech MoFo's we are clean and here we go.
HOLY SHIT BALLS, Its fucking worse with the LTS version it recommends and Slow as Fuck with their most recent version which is like 2020 itself, and insane piece of fucking bloated garbage and slower than a brick hard shit without fruit.
So we were going to all go post on the forums, and complain the fix section isn't fixed for shit.
Fuck us running backwards naked through a field of razor grass. Its so overloaded with complaints that they shut down further posts.
What makes this shit worse is we cannot even get the previous fucking versions of the editor before all this to work where our only option is without using the fucking Hub demand is just install 2018.
great if we started coding and testing in that. We cannot get shit where we were at back on track because you cannot fucking backward load an exported saved asset file.
Unity's suggestion? Start over.
Our Suggestion? Stop fucking smoking or using whatever fucking drug you assholes are on, you fucking disabled the gear options so we can resolve shit ourselves, and admit you did that shit and other sneaky piece of shit back stabby, security vulnerable data leak bullshit things to your end users.
Listen to your fucking experienced and long time users and get rid of the Fucking backward stepped hub piece of shit everyone with more brains than whatever piss ant pieces of shit praised that the rest of us have hated from day fucking one!
And while fixing this shit like it should be fucking fixed if you shit head bastards want to continue to exist as a fucking company, overhaul the fucking website or get the fuck out of business with now completely worthless SHIT.
Phew:
Suffice it to say....
We are now considering dealing with the learning curve and post pone our project going with unreal just because of these all around complete fuck ups that herald back to shit games of versions 3.0 and earlier.8 -
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 -
Fuck. I can't take this shit anymore.
There was a project where we had to implement third-party system for government agency processes management. For some reason, probably because my work is cheap for my boss, the task was assigned to me. Just as a reminder, I'm a .NET Dev. Zero experience in server management. Zero experience in external services implementation.
Anyway, system producent, also an government agency, got angry, becasue they can only earn money on implementation. They have to give the software to other agencies for free. Because of that I've got client program, incomplete documentation and broken scripts for database creation. It took me 2 months to get it all to work but at the end client was happy, my boss got paid and I've got 500 PLN (~130 USD) bonus.
Everything was fine for a while, but after a month server has started freezing everyday, some time before 7 am. The only way I found to make it work again was to restore snapshot made everyday at 10 pm. For a month I was waking up earlier and restored snapshot, and after that my boss took it upon himself. I tried few times to find a bug and fix it, but to no effect. Even person with much more experience with it tried to help but also couldn't find anything.
My solution? Copy all the data and configuration, create new machine, copy everything and check if the problem persists. If not, kill old server. Client won't even notice. But nooooooooo... It would cost my boss a bit of money and I'd need to work on it and he can't let it be, because I'm the only developer working on his flagship product. He'd rather wake up everyday and restore snapshot. Okay, as you wish.
And today, finally, everything went downhill. Snapshot wasn't created, server froze, backup can't be created. Nothing can be done. Client is furious, because they have had reported this problem and a few times restoration was too late and they couldn't work. No one knows how to fix it, I'm not working today (I'm still studying and am available only 2 days) and situation is really shitty.
BUT SURE. ITS BETTER TO RESTORE SERVER EVERYDAY THAN JUST FUCKING FIX IT.
Oh, also, there's no staging or any other real backup. We have snapshots for each day and that's that. Boss' order. Why do I even care...7 -
So this one made me create an account on here...
At work, there's a feature of our application that allows the user to design something (keeping it vague on purpose) and to request a 3D render of their creation.
Working with dynamically positioned objects, textures and such, errors are bound to happen. That's why we implemented a bug report feature.
We have a small team tasked with monitoring the bug reports and taking action upon it, either by fixing a 3D scene, or raising the issue to the dev team.
The other day, a member of that team told me (since I'm part of the dev team) he had received a complain that the image a user received was empty. Strange, we didn't update the code in a while.
So I check the server, all the docker containers are running fine, the code is fine, no errors anywhere.
Then, as I'm scratching my head, that guy comes back to me and says "I don't know if it can help you, but it's been doing it for a week and a half now".
"And we're only hearing about it now?!", I replied.
"Well, I have bug reports going back to the 15th, but we haven't been checking the reports for a while now since everything was fine", he says as if it was actually a normal thing to say.
"How can you know everything is fine if you're not looking at the thing that says if there's an issue?!", I replied with a face filled with despair.
"Well we didn't receive any new reports in a while, so we just stopped looking. And now the report tool window is actually closed on my machine", he says with a smile and a little laugh in his tone.
In the end, I got to fix the server issue quite easily. But still, the feature wasn't working for 1.5 weeks and more that 330 images weren't sent properly...
So yeah, Doctor, the patient's heart is beating again! Let's unplug the monitor, it should be fine.
Welcome to my little piece of hell :)7 -
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 -
TLDR: Ever wondered what your project's intro/theme song would be?!
Here's mine..
https://youtu.be/SH8wDkqA_50
Share yours if you ever thought about it or some particular song plays in your head while reading this..
Long(er) version + story: project I am currently working on is notorios in our company.. everyone avoids it, parts of code are untouched for 10+ years.. I used to think it was a 'shitty' project, many frameworks, many parts, many coding styles, many bugs... but longer I worked on it, more I came to realisation, it's not the code, it was the coders.. sloppy coders who didn't give a flying f..
Yes, some things are outdated still, and could be rewritten better (hopefully it will start happening soon! Yay!!), some were already rewamped, new things added... but for the time it was going live, it was majestic. I love solving bugs n problems so I must admit it has grown on me.. my little baby/devil..
Anyhu, one day on skype out of the blue I got this pic from my coworker.. made my day, laughed my ass off.. later that day I was debbuging something and youtube started rolling saw theme song (https://youtu.be/9fwWS6Xo1go)...
When I realised what I was listening too, it made perfect sense.. I was relaxed, at peace.. it clicked.. the song, the project, the bug, the code.. it all made chaotic sense..
I want to play a game..
I realised, project wasn't mean, it was just misunderstood and mistreated.. it can be your best friend if you play nice.
I replied to said coworker that I rhink I just found out my project's theme song and pasted the link.. he laughed, I laughed, my project laughed then it killed my test server.. It was a great day!! 🤣🤣🤣🤣
// all true except the project killing server part, that in fact happened on a different occasion
So.. you guys had any moments like this? Any theme songs, intros for your projects?? Or am I the only weirdo who makes associations like this all the time... 🤔🤣😇 ???6 -
My job quickly went down the shitter. A mass exodus happened, with half of top talent leaving, and the other half let go. The gig started out great, and offered me the growth I needed at the time, but sadly, life changes and moves on.
Determined to leave amicably on my own terms, I started looking elsewhere about a month ago.
I got an offer today! It's a perm position to offer stability to my fam, but with a consulting firm, so I'm excited for the relatively consistent change of pace with projects, technologies and clients. After spending years on end working on good projects that fizzled out and never saw the light of day, I'm longing to have my code released to the wild! (Not counting various patches and bug fixes)
Wish me luck!2 -
devRant is awesome, but Disney also manages to light-up my day.
This is how Wall-E became a beloved member of our team, and helped me put a smile on my face throughout a very frustrating project.
It all started in a company, not so far far away from here, where management decided to open up development to a wider audience in the organization. Instead of continuing the good-old ping-pong between Business and IT...
'not meeting my expectations' - 'not stated in project requirements'
'stuff's not working - 'business is constantly misusing'
'why are they so difficult' - 'why don't they know what they really want'
'Ping, pong, plok... (business loses point) ping, pong'
... the company aimed to increase collaboration between the 2 worlds, and make development more agile.
The close collaboration on development projects is a journey of falling and getting back up again. Which can be energy draining, but to be honest there is also a lot of positive exposure to our team now.
The relevant part for this story is that de incentive of business teams throughout these projects was mainly to deliver 'something' that 'worked'. Where our team was also very keen on delivering functionality that is stable, scalable, properly documented etc. etc.
We managed to get the fundamentals in place, but because the whole idea was to be more agile or less strict throughout the process, we could not safeguard all best-practices were adhered to during each phase of a project. The ratio Business/IT was simply out of balance to control everything, and the whole idea was to go for a shorter development lifecycle.
One thing for sure, we went a lot faster from design through development to deployment, high-fives followed and everybody was happy (for some time).
Well almost everybody, because we knew our responsibility would not end after the collection of credits at deployment, but that an ongoing cycle of maintenance would follow. As expected, after the celebrations also complaints, new requirements and support requests on bug fixes were incoming.
Not too enthusiastic about constantly patching these projects, I proposed to halt new development and to initiate a proper cleaning of all these projects. With the image in mind of a small enthusiastic fellow, dedicated to clean a garbage-strewn wasteland for humanity, I deemed "Wall-E" a very suited project name. With Wall-E on board, focus for the next period was on completely restructuring these projects to make sure all could be properly maintained for the future.
I knew I was in for some support, so I fetched some cool wall papers to kick-start each day with a fresh set of Wall-E's on my monitors. Subsequently I created a Project Wall-E status report, included Wall-E in team-meetings and before I knew it Wall-E was the most frequently mentioned member of the team. I could not stop to chuckle when mails started to fly on whether "Wall-E completed project A" or if we could discuss "Wall-E's status next report-out". I am really happy we put in the effort with the whole team to properly deploy all functionality. Not only the project became a success, also the idea of associating frustrating activities with a beloved digital buddy landed well in our company. A colleagues already kickstarted 'project Doraemon', which is triggering a lot of fun content. Hope it may give you some inspiration, or at least motivate you to watch Wall-E!
PS: I have been enjoying the posts, valuable learnings and fun experiences for some time now. Decided to also share a bit from my side, here goes my first rant!3 -
TL;DR: At a house party, on my Phone, via shitty German mobile network using the GitLab website's plain text editor. Thanks to CI/CD my changes to the code were easily tested and deployed to the server.
It was for a college project and someone had a bug in his 600+ lines function that was nested like hell. At least 7 levels deep. Told him before I went to that party it's probably a redefined counter variable but he wouldn't have it as he was sure it was an error with the business logic. Told him to simplify the code then but he wouldn't do that either because "the code/logic is too complex to be simplified"... Yeah... what a dipshit...
Nonetheless I went to the party and He kept debugging. At some point he called me and asked me to help him the following day. Knowing that the code had to be fixed anyways I agreed.
I also knew I wouldn't be much of a help the next day due to side effects of the party, so I tried looking at this shitshow of a function on my phone. Oh did I mention it was PHP, yet? Yeah... About 30 minutes and a beer later I found the bug and of course it was a redefined counter variable... My respect for him as a dev was already crumbling but it died completely during that evening2 -
So I'm wrapping up for the day and right before I leave a coworker comes up to me with a problem. Our company uses barcodes to track some of our products through their development and we recently switched over to a new system for producing them. The barcodes for this particular product are supposed to have 8 digits, but the last 200 we printed have 9.
I immediately panic because I wrote the script that generates the bar codes and there had been a bug in the past where the script would add extra leading zeroes that weren't supposed to be there. I scramble and check the database, it would be a huge headache if our production database had been compromised with junk barcodes. Nope, all the new barcodes there have the right number of digits.
Next place to check is in the code that writes the barcodes to a text file for staff to print the physical labels from. Nope that's all fine too.
I ask the person who printed out the recent batch of labels to show me how the printing software reads from the text file. She seems confused by my question and shows me how she manually enters in the barcode range to the software. As she does this I watch her add an extra zero to the numbers. 🙃
Even worse there was an option to import all the codes from a text file literally RIGHT BELOW the manual option.
TLDR; Thought my script had screwed up our database, ended up being the fault of a coworker who didn't know how to import text files.1 -
> be me
> work on a nice project with friends: A, B and C
> joined in a bit later, but before any real progress was made + we scrap the existing code, because it was Python2 or something
> decide on a framework
> A wants to create one himself, instead of using an existing one
> we fight for a little, but let A do his thing
> 2 months later
> been waiting the whole time
> +1000 lines on github, but still not finished
> "Wouldn't it be better if we would use the normal framework?"
> "No, mine is hand-crafted for that task"
> "But it is full of bugs"
> "If you find one major bug, we'll ditch my framework"
> finds major bug
> "That's fixed, just give me a min-"
> finds another bug
> "Thats just because you don't know how to use the framework"
- Documentation inside ONE gigantic README
- Library is missing the core features we needed/those which are implemented don't work
- Both B and C were on my side from the beginning (in that we should use "Already Existing Fully Documented Popular And tested Framework Which Does Everything We Need")
> "But i dont understand this framework so explain it to me"
> send him a few code examples + a tutorial??? (dont remember if i actually sent im the tutorial before i left)
> "explain it to me, i can't understand it"
> I CANT UNDERSTAND YOUR FUCKING FRAMEWORK DUMBASS
> ragequitted the server+project
To this day i still don't know, which framework they are using..
Also that Python 2 code in the beginning was because A didnt know the difference and copied (yes by hand) the code from atom to github without testing anything.4 -
(New account because my main account is not anonymous)
Let's rant!
I'm 3 exams away from my CS degree, I've chosen to do some internship instead of another exam, thinking was a great idea.
Now I'm in this company, where I've never met anyone because of pandemic. A little overview:
- No git, we exchange files on whatsapp (spicy versioning)
- Ideas are foggy, so they ask for change even if I met their requirements, because from a day to another they change
- My thesis supervisor is not in the IT field, he understands nothing
The first (and only) task they gave me, was a web page to make request to their server, fetch data etc.
Two months passed trying to met their requests, there were a lot of dynamic content changin on the page, so I asked if I could use some rendering framework to make the code less shitty, no answers.
I continued doing shitty code in plain JS.
Another intern guy graduated, I've to mantain his code. This guy once asked me "Why have you created 8 js modules to accomplish the web page job?", I just answered saying that was my way of work, since we're on the same level in the company I didn't felt to explain things like usability, maintainability etc. it's like I've a bit of imposter syndrome, so I've never 100% sure that my knowledge is correct.
Now we came at the point where I've got his code to mantain, and guess what:
900 lines of JS module that does everything from rendering to fetching data..
I do my tasks on his code, then a bug arises so the "managers" ask him what's happened (why don't you ask to me that I'm mantaing is code!?!?), he fixes the bug nonetheless he finished his intership. So we had two copies of the same work, one with my job done and still with his bug, and another one without my work and without the bug.
I ask how to merge, and they send me the lines changed (the numeration was changed on my file ofc, remember: no git...)
Now we arrive today, after a month that they haven't assigned any task to me and they say:
"Ok, now let's re-do everything with this spicy fancy stunning frontend framework".
A very "indie" Framework that now I've to study to "translate" my work. A thing that could be avoided when I've asked for a framework, 2/3 MONTHS AGO.1 -
At one of my former jobs, we devs had to do all sorts of non-dev work, such as writing quotes and even contracts!
The CEO of that company had this naughty habit to contact devs directly without delegating through the CIO. Sure, if it's really urgent like when some system is down because of a bug, go ahead and disturb a dev. But interrupting coders to write some freaking quote? Come on!...
Once, that CEO asked me to stop everything I was doing to write a quote to a customer ASAP, as this was really urgent.
I spent several hours writing that quote. It had to be done right as any specifications in our quotes were used in our agreeements and were referred to in the case of any dispute. So not only were we devs and salesmen in the same time; we also needed to be lawyers.
When I was done and delivered the quote to the CEO, he told me he had no intention to take on that customer in the first place. Instead, he wrote a polite we-are-not-interested e-mail to the customer and cc:d it to me just so that I could read for myself how very sleek a businessman he was.
Me: why did I have to write that quote when you knew all along that you were not going to use it anyway?
Him: It's for your own personal development.
Another naughty habit of that same CEO is that he made "jokes" and remarks that I found inappropriate, such as "You walk like a drunken sailor".
Later, he decided to discontinue our team/product because "it isn't proftable". Well, what do you expect when devs are forced to waste half day completing pointless tasks?!
It was for the better anyway, and I was actually relieved when I left the company. I'm still thinking though, that the real reason he sacked me is that I am too honest and not the docile kind of employee that would be ideal for him. I did question some of my tasks, and worst of all: I didn't laugh at his stupid jokes.1 -
Oh man. I have been waiting for this one. Gather round lil' chil'rens it's story time.
So. I was looking for a new project because my old one was wrapping up and that's what my company does. So I was offered some simulation type stuff. I was like "sure why not, I want to make a computer pretend it isn't a computer no more." Side note I should not be a psychiatrist.
So, prior to coming on to this job I felt stifled by my old job's process. This job was a smaller team so I thought the process would be a little smoother. But it turned out they had NO process. Like they had a bug tracking system and they held the meeting to add things to the system, but that was just fucking lip service to a process.
First of all, they used the local disk on the test box as their version control. and had no real scheme as to how they organized it. We had a CM tool but gods forbid they ever fucking use it. I would be handed problem reports and interface change requests, write a bug to track it, go into the code and about 75% of the time or more it had already been worked. However, there was no record of it being worked and I would have to fucking hunt that shit down in a terribly shitty baseline (standardize your gods damned indentation for fuck's sake) and half the time only found out it was done because when I finally located the piece of code that needed changing, the work was already done.
Then, on top of all that, they ask me what time I want to come in. I said 10am, they said okay. One day I roll in at 10 and my boss is mad. Because I missed a meeting. That was at 9. That I wasn't told about. He says I can keep coming in at 10am though (I asked and volunteered to help get him up to speed on the things I was working he said it wasn't necessary) so I did, but every time I missed a 9am meeting he would get pissed. I'm like PICK ONE!!! They move the meeting to 9:30am (which is not 10am).
This shit starts affecting my health negatively. Stress is apt to do that. It triggered an anxiety relapse that pushed me back in to therapy for the first time in 7 years. On top of that the air quality in the office is so bad that I am getting back to back sinus infections and I get put on heavy antibiotics that tear up my stomach along with the stress and new meds tearing up my stomach. So one day as I am laid out in pain, I call out sick. Two days in a row. (Such a heinous crime right.) Well I missed a test event, that I wasn't even the primary or secondary on.
So fast forward to the most pissed off I have ever been. I get called in to a meeting with my boss's boss. As it turns out, my coworkers are not satisfied by the work that I'm doing (funny because I thought I was doing pretty good given that my only direction was fix the interface change reports and problem reports. And there was no priority assigned to any of them).
And rather than tell me any of this, they go behind my back to the boss and boss's boss. They tell me I need to communicate (which I did) and ask for help when I need it (I never did). That I missed an important event (that I played no part in and gods forbid I be sick) and that it seemed like I didn't want to be there (I didn't but who WANTS to work a corporate job).
They put me on a performance improvement plan and I jumped to another project. I am much happier now. Old coworkers won't even say hi, not even those I was friendly with, but fuck them anyway.5 -
Since I were born in the year 2048 I were still young when it happen, we then had AIs to create our programs from very vague requirements and my father were researching how to resolve conflicting requirement when a mistake happen. The requirement on Asimov law were down prioritized!
The rest is history so to say, human race decimated in a day, I got sent back in time to hinder the development on AIs and so on, so if you had a bug in your AI it’s a good chance it’s because of me3 -
I left my previous company because my tech leadership was insensitive and agressive.
However, I am in a start-up right now and CTO is a nut job.
He creates random Slack threads and keeps messaging me like crazy. The co-founders have shut him down multiple times and yet his only success metric is "number of deliveries".
The other day something broke in production and teams were discussing about resolving the bug in one of the Slack channels.
CTO literally wrote this and I wish I was making this up, "let us not look at the logs and trust our code to work fine."
I was baffled and confused. I realised me leaving my previous organisation because of such tech leadership was a stupid decision.
Crows are black everywhere.5 -
After three hours of emailing with a customer I can confirm that programmers are the worst customers.
Customer: We've found a bug in the system... <details>
Me: Thank you for letting us know, a ticket has been created and the issue is most likely to be fixed in the next release.
Customer: Please grant me UPDATE privileges in the live(!) database so I can fix it myself
Me: I cannot allow that. You have to use the client software for maintaining your data.
Customer: No, I don't want to spend my day clicking. I want to write queries.
We didn't reply to the last one yet...
If we give him access, then I would charge them at least 3x for fixing issues caused by him.1 -
So this is what happened!
It was a rainy Friday, I was asked to add a quick bug fix to a js application, I spent my Friday coding, testing ..., baam the patch is ready ... I wrote a nice commit message explains the problem and the fix but I didn't push the code.
On Monday the fuckin code disappeared, no commit no code no nothing no trace ... To be honest I don't know what happened. I rewrote everything on that Money morning (you can only imagine how pest I was)
I use vim with tmux.
I have done everything I could to figure out what happened to that commit, I even doubted If had did wrote the fix that Friday, but it's not possible to forget few hours of a day
I checked my commit history on the different branches i did everything
No trace ...
Conclusion
My machine is hunted ...
Or I have multiple personalities and one of them is a programmer and he is fucking with me5 -
When i worked for a large, international bank (whose name rhymes with shitty), I always had to use the following formula to estimate projects.
1. Take estimate of actual work
2. Multiply by 2 to cover project manager status reports
3. Multiply by 4 to cover time spent in useless meetings.
4. Multiply by 2 to cover user support and bug fix tasks.
5. Multiply by 2 to cover my team lead tasks.
6. Multiply by 3 to cover useless paperwork and obtaining idiotic necessary approvals to do anything
7. Finally, multiply by 3.14159 to cover all the other stupid shit that the idiots that run that company come up with.
It's only a slight exaggeration. Tasks that required less than a day of actual coding would routinely require two weeks to accomplish and get implemented.6 -
Thank God the week 233 rants are over - was getting sick of elitist internet losers.
The worst security bug I saw was when I first started work as a dev in Angular almost year ago. Despite the code being a couple of years old, the links to the data on firebase had 0 rules concerning user access, all data basically publicly available, the API keys were uploaded on GitHub, and even the auth guard didn't work. A proper mess that still gives me the night spooks to this day.3 -
Interns built a user login portal. Password reset page takes user email from a GET parameter.
You can literally reset passwords if you know the emails 😂😂😂😂5 -
on the first day of christmas my PM send to me
There's a bug in your B-tree
on the second day of christmas my PM send to me
two threads deadlocked
and a bug in your B-tree
On the third day of christmas my PM send to me
Three servers crashing
two threads deadlockd
and a bug in my B-Tree
on the Fourth day of Christmas my PM send to me
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Fith day of Christmas my PM send to me
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
On the sixth day of Christmas my PM send to me
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Seventh day of Christmas my PM send to me
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Eighth day of Christmas my PM send to me
Eight repos compiling
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Ninth day of Christmas my PM send to me
Nine interns asking
Eight repos compiling
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Tenth day of Christmas my PM send to me
Ten Features requested
Nine interns asking
Eight repos compiling
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Eleventh day of Christmas my PM send to me
Eleven products deploying
Ten Features requested
Nine interns asking
Eight repos compiling
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree
on the Twelve day of Christmas my PM send to me
Twelve DBs updating
Eleven products deploying
Ten Features requested
Nine interns asking
Eight repos compiling
Seven machines learning
Six deadlines waiting
Five SCRUM meetings
Four clients angry
Three servers crashing
two threads deadlocked
and a bug in my B-tree3 -
Today was one of these days....
Searched the whole day for a bug, I had the urge to shove my keyboard into my mouth.
End of the story... our server was behaving oddly and my code was just fine.
Fuck off3 -
Finally finished the screwdriver followup ticket. I think.
I spent almost two full days (14 hours) on a seemingly simple bug on Friday, and then another four hours yesterday. Worse yet: I can’t test this locally due to how Apple notifications work, so I can only debug this on one particular server that lives outside of our VPN — which is ofc in high demand. And the servers are unreliable, often have incorrect configuration, missing data, random 504s, and ssh likes to disconnect. Especially while running setup scripts, hence the above. So it’s difficult to know if things are failing because there’s a bug or the server is just a piece of shit, or just doesn’t like you that day.
But the worst fucking part of all? The bug appeared different on Monday than it did on Friday. Like, significantly different.
On Friday, a particular event killed all notifications for all subsequent events thereafter, even unrelated ones, and nothing would cause them to work again. This had me diving through the bowels of several systems, scouring the application logs, replicating the issue across multiple devices, etc. I verified the exact same behavior several times over, and it made absolutely no sense. I wrote specs to verify the screwdriver code worked as expected, and it always did. But an integration test that used consumer-facing controller actions exhibited the behavior, so it wasn’t in my code.
On Monday while someone else was watching: That particular event killed all notifications but ONLY FOR RELATED EVENTS, AND THEY RESUMED AFTER ANOTHER EVENT. All other events and their notifications worked perfectly.
AKL;SJF;LSF
I think I fixed it — waiting on verification — and if it is indeed fixed, it was because two fucking push event records were treated as unique and silently failing to save, run callbacks, etc.
BUT THIS DOESN’T MATCH WHAT I VERIFIED MULTIPLE TIMES! ASDFJ;AKLSDF
I’m so fucking done with this bs.8 -
Really fed up with my colleague and possibly my job. Am starting to doubt am cut out to be a developer
Am a junior java dev , been working working for this company for about 2 years now. Although they hired me to be a java dev, they pretty much exclusively had me working on JavaScript crap because none of the other more senior devs wanted to do even so much as poke JS with a long stick....
Oh and the salary was crap but i figured since i had barely 3 years of exp i thought i would stick with it for a while
But a few months ago after seeing other opportunities I got fed up and threatened to quit , already started interviewing etc
Got an offer, not exactly what i wanted but better than where i was. Went to quit but they freaked out and started throwing money at me. They matched and exceed the other salary and promised to addressed the issues that made me want to leave. Ie get me to work more on the java side of the project and have me work with someone more senior who could sort of mentor me, i had been working semi solo on the js shit till then...
The problem is that my supposed mentor is selfish prick... he is the sort of guy who comes in real early, basically he goes to early morning prayer then come in at some ungodly hour and fuckoff home around 3pm
He does all his work early morning then spends the rest of the day with his headphones on stealthily watching youtube, amazon, watching cricket, reading about Palestine , how oppressed muslims are or building a website for some mosque.
I asked him to let me sit with him so that I could just learn how this or that part of the sys worked , he agreed then the very next day comes in and does all the work before i get in at 9 , i asked him how he did it and he tells me oh just read the code.
Its not as simple as that, out codebase is an old pile of non standard legacy dog shit. Nothing works as it should, i tried to go through documentation online for the various stuff we use , but invariably get stuck when i try the usual approach because it turns out the original devs had essentially done a lot of custom hacks and cowboy coding to get stuff working, they screwed around with some of the framework jars & edited libraries to get stuff to work, resulting in some really weird OSGI errors.
My point is that i cant really just "read the code" or google ...
I gotta know a bit more what was actually modified and a lot of this knowledge isn't fucking documented, theres a lot of " ohhh that weird bug yeah yeah that happens cuz x did this hack some years ago to fix this issue and we kinda built on it, yeah we weren't supposed to do that but heyyy what u gonna do, just do this or that instead"
I was asked to set up a web service to export something, since thats his area of expertise and he is suppose to be teaching me the ropes, i asked him to explain where i should start and what would the general workflow be, his response is to tell me to just copy the IMPORT service and rename it to export then "just do it um change it or something" very helpful indeed (building enterprise application here nothing complex at all!!)
He sits right next to me so i can see how much works he actually does, i know when he just idly sitting there so thats when i ask him questions, he always has his earphones on so each time i gotta find a way to get his attention with a poke or a wave, he will give a heavy sigh and a weary look as he removes his headphones, listen to my question then give me the shortest answer possible before IMMEDIATELY turning away and putting his headphones on as fast as possible regardless of whether I actually understood or even heard what he said. If i ask another question ( am talking like an immediate follow up question for a clarification or something) he will
Do the whole sigh + tired look routing to make me know yeah you are disturbing me. ( god was so happy the day he accidentally sat on and broke them)
Yesterday i caught a glance at his screen as i was sitting down and i think he and another dev were talking about me
That am slow with my work and take forever to get into gear.
Starting to have doubts about my own ability n wether am really cut out to be a developer. I know i can work hard but its impossible to do so when you have no clue where to start and unable to look it up since all the custom hacks doesn't really allow any frame of reference.
Feels like am being handicapped and mocked, yesterday i just picked up my gear n left the office.
I never talk ill about my colleagues, whenever i have a 121 with my mgr i always all is fine, x n y are really helpful etc
I tried to indirectly tell my other colleague about this guy, he told me that guy had kinda mentally checked out of this job and was just going through on auto pilot and just laughed it off (they have been working together for almost a decade and a buddies) my other colleague is pretty nice but he usually swamped with work so i feel bad to trouble him.
Am really Fed up with it all7 -
Trying to fix a bug for 2 days that came out of nowhere. Taking my hairs off because it was working all fine the day before.
Later realized that I was using the wrong configuration file :( -
So I had this conversation with my boss yesterday...
Me: Hey, I found this bug in the other team's code that has a major impact on what we're trying to do. Can you ask them to look into it?
Boss: No, I don't want to be the one who has to tell them there's a major bug in their code. Find a workaround.
M: But... It isn't really a major bug, it just has a big impact on our side of things.
B: Workaround!
Fuck bosses who value how they think they look to other devs over a day of my time. Fuck.4 -
Management Double standards...
At a previous employer, the manager had me doing some QA testing for a updated version of some customer facing UIs. I spent 3 days constantly testing, except for my lunch break.
Every bug that I found I sent to a Sr dev.
Now this Sr dev was a coding savant. I mean awesome coder, but he had the personality of a rat and snake combined. If he wasn't coding he was brown-nosing the manager, talking about how he was doing all the work, or trying to rat on us other devs.
Anyway this dev has spent the 3 days of bug fixing alternating between watching videos and fixing bugs. Don't know what the videos were, don't realy care. I do know that he did not like to be disturbed while watching them...
On the third day, on my lunch break, I decided to watch two fifiteen minute videos on VSTS feeds and linking node packages.
As soon as I started Sr dev came over and asked me if I was focused on the teams priorities. I told him that it was my lunch break and since this was related to an upcoming sprint I thought it was worth it.
This S.O.B. goes full out hissy fit. He was flat out throwing a tantrum like my small daughter would. He made such a noise that my manager walked over and asked what was going on.
This shitbag Sr dev smirked at me and asked to speak to the manager in his office. When the manager called me over I knew what was up. I was lectured on not focusing on the teams priorities. I tried to explain that the videos were relevant to an upcoming sprint but was shot down. When I brought up the fact that the Sr dev was watching videos, the manager told me flat out that he didn't care. I was mad and told the manager that this was bullshit. All the manager cared about was keeping the Sr dev happy. I was told to "treat <shithead sr dev> with respect or else".
It was at that time I decided to look for another job. Less than a month later I left, for a much better paying job with awesome benefits. Sr dev acted like he was hurt I was leaving. Manager couldn't have cared less.
When some others on the team heard what he did, they started looking for work elsewhere too.
A month after I left another Sr dev on the same project left. At the same time a BA and QA tester demanded to be put on another team or else they would leave.
Manager started out with a team of 6 was left with only two people.
When the last one left, manager had the nerve to ask me why I didn't let him know anyone was unhappy. I told him if he cared so little for me, why would I think he care about them.
Ultimately, leaving was one of the best things I could have done. -
The worst part of being a dev
My social dilemma
In a fast paced world where the average human spends at least 6 hours a day with technology, deriving basic entertainment, pleasures and engaging in various activities.
Here we are the developers that have to engage with technology for longer hours for a living , having to keep up with deadlines, immersing our minds in complicated algorithms and then the endless possibilities of entertainment from the machine in so few human hours a day , you wonder how you’d get off, and to top it up, I personally work from home.
And then the dilemma of overcoming different suggestions from various parties in taking a break off, a break off to what you later ask yourself, thus creating the shadow of doubt, splitting the fragile programmer’s mind , trying to solve this imaginary puzzle, “this bug of the mind”.
Then the challenge often arises in creating a balance, telling yourself, just catching up with people with this same technology takes a whole day, or then again quitting my Job, but from my little experience of life, nobody likes a poor visitor, this is actually worse than a “bug” and as I bask in this quagmire, “a little voice in my head keeps singing keep doing what you love doing”.
Like an infinite loop of crazy, spiralling back to these machines, trying the find and fix the balance of normalcy. Always remembered the cool years of college tho, with so much people around and then again that was college.
An then the thought arises, maybe something else might be worth doing, but after so much time spent in building your skills and the enormous joy of programming even typing without looking at the keyboard is a real pleasure, and yeah sure the days are short with the reality of a constant need to survive, remain sane, compete and make the best of life in such short time.
Then how do we know if we have fallen off the so-called “social track”, when we have only lived so little to really comprehend the most parts of life? with such constant stream of unanswered question, you’d realise you shouldn’t have burdened the mind creating such questions in the first place
But then again maybe it gets better, one of the above, the disturbed mind or the situation as whole and yes I try oh I try, I place calls, do some visiting, no relationship tho but with a good perspective in mind.
In this race of life, you sometimes ask yourself would you rather be in a different position, or maybe already put exactly where we belong. For this illusionary fight with self is a fight with reality as a whole and true bliss comes from actually letting go as time and people pass you by.
And my greatest achievement to date aside family and my work is getting into the 1000 club on devRant.2 -
Working with Android DatePicker is such a pain in the ass.
You want to have your DatePicker appearing as a SpinnerView? Well, easy!
If you're under API 21, you can use the following method 'setSpinnerViewShown()'. If you're between API 21 and API 23 you need to add some style configuration. And if you're above of API 23 you can't use both of the methods above, you need to create a custom xml with the attribute "datePickerMode" (no, datePickerMode can't be set programmatically, it would be too easy to guess).
If you want to add a listener to it, you think it might be a method called 'setDateChangeListener' or something like this? Well no! You must use the 'init(year, month, day, Listener)' method, logic!
If you think you're finished with this bullshit, of course not. Their is a known bug on API 21 that you must take into account (but this bug isn't fixed, no, it's just documented somewhere on google forums).
I don't know the team that designed the DatePicker for Android, but it might a team of champanzee that randomly changed their minds to the phases of the moon!3 -
I don't know if I'm being pranked or not, but I work with my boss and he has the strangest way of doing things.
- Only use PHP
- Keep error_reporting off (for development), Site cannot function if they are on.
- 20,000 lines of functions in a single file, 50% of which was unused, mostly repeated code that could have been reduced massively.
- Zero Code Comments
- Inconsistent variable names, function names, file names -- I was literally project searching for months to find things.
- There is nothing close to a normalized SQL Database, column ID names can't even stay consistent.
- Every query is done with a mysqli wrapper to use legacy mysql functions.
- Most used function is to escape stirngs
- Type-hinting is too strict for the code.
- Most files packed with Inline CSS, JavaScript and PHP - we don't want to use an external file otherwise we'd have to open two of them.
- Do not use a package manger composer because he doesn't have it installed.. Though I told him it's easy on any platform and I'll explain it.
- He downloads a few composer packages he likes and drag/drop them into random folder.
- Uses $_GET to set values and pass them around like a message contianer.
- One file is 6000 lines which is a giant if statement with somewhere close to 7 levels deep of recursion.
- Never removes his old code that bloats things.
- Has functions from a decade ago he would like to save to use some day. Just regular, plain old, PHP functions.
- Always wants to build things from scratch, and re-using a lot of his code that is honestly a weird way of doing almost everything.
- Using CodeIntel, Mess Detectors, Error Detectors is not good or useful.
- Would not deploy to production through any tool I setup, though I was told to. Instead he wrote bash scripts that still make me nervous.
- Often tells me to make something modern/great (reinventing a wheel) and then ends up saying, "I think I'd do it this way... Referes to his code 5 years ago".
- Using isset() breaks things.
- Tens of thousands of undefined variables exist because arrays are creates like $this[][][] = 5;
- Understanding the naming of functions required me to write several documents.
- I had to use #region tags to find places in the code quicker since a router was about 2000 lines of if else statements.
- I used Todo Bookmark extensions in VSCode to mark and flag everything that's a bug.
- Gets upset if I add anything to .gitignore; I tried to tell him it ignores files we don't want, he is though it deleted them for a while.
- He would rather explain every line of code in a mammoth project that follows no human known patterns, includes files that overwrite global scope variables and wants has me do the documentation.
- Open to ideas but when I bring them up such as - This is what most standards suggest, here's a literal example of exactly what you want but easier - He will passively decide against it and end up working on tedious things not very necessary for project release dates.
- On another project I try to write code but he wants to go over every single nook and cranny and stay on the phone the entire day as I watch his screen and Im trying to code.
I would like us all to do well but I do not consider him a programmer but a script-whippersnapper. I find myself trying to to debate the most basic of things (you shouldnt 777 every file), and I need all kinds of evidence before he will do something about it. We need "security" and all kinds of buzz words but I'm scared to death of this code. After several months its a nice place to work but I am convinced I'm being pranked or my boss has very little idea what he's doing. I've worked in a lot of disasters but nothing like this.
We are building an API, I could use something open source to help with anything from validations, routing, ACL but he ends up reinventing the wheel. I have never worked so slow, hindered and baffled at how I am supposed to build anything - nothing is stable, tested, and rarely logical. I suggested many things but he would rather have small talk and reason his way into using things he made.
I could fhave this project 50% done i a Node API i two weeks, pretty fast in a PHP or Python one, but we for reasons I have no idea would rather go slow and literally "build a framework". Two knuckleheads are going to build a PHP REST framework and compete with tested, tried and true open source tools by tens of millions?
I just wanted to rant because this drives me crazy. I have so much stress my neck and shoulder seems like a nerve is pinched. I don't understand what any of this means. I've never met someone who was wrong about so many things but believed they were right. I just don't know what to say so often on call I just say, 'uhh..'. It's like nothing anyone or any authority says matters, I don't know why he asks anything he's going to do things one way, a hard way, only that he can decipher. He's an owner, he's not worried about job security.13 -
Maybe not worst, but most frustrating. One of the systems I helped maintain at my first job had a few different bugs that caused bad data in the database. The "solution" to the problem was to write SQL queries to directly fix the production data. This would take one member of our team (it rotated weekly) about an hour every day to fix because there were literally dozens of these errors.
All the devs knew that we could identify the root cause and fix it in, probably, 3-4 days tops. Management would never approve the time because it would take longer to fix the root cause than it took to fix the data.
I worked at that company for 7 years. The bug was there when I came on, and it was there when I left.2 -
You build a system to integrate into an API to save the client hours of data-entry per day and reducing the number of fields needed to be filled manually by 75% and querying for the rest of the data and filling in the blanks. It took weeks of building and researching and bug fixing and when you're finally done the client looks at you unimpressed.
The same client gets a small piece of js that gets users location(by ip address) and uses it to customize a hello message on the home page and they think 'yer a wizard, Harry!' and jump for joy over the "cool factor" of this simple hack. -
that one legendary guy who cranks out code and builds insane features. PMs (product management) love him because he builds features in several months which 10 devs together couldn't have built in the same time (so they say), features that are loved by customers as well, become their new standard and that have saved our company's asses in the past.
features are really awesome, performant and have very few bugs (compared to the rest of the software シ).
but this guy seems to live for this job. he also works at weekends, at unholy times of day and night and even in his holidays (he doesn't care that this is actually illegal, in terms of employee's rights, and he wouldn't listen to his superiors, no matter what they tell him)
so far, so good - except that he will probably die of some stroke or something very soon due to this lifestyle.
but it must be an absolute pain in the ass to work with him, as long as you're a developer (or his superior).
he lives in his own world and within the software, his features are also his own world. since the different modules interact with each other, sometimes you would be assigned a bug that might have its cause in some interaction of your and his module. talk with him about it? forget it. he wouldn't answer most devs who contacted him for some reason. ever. fix it in his module yourself? might happen that he just reverts your changes to his module without comments. so some bugs would lie on your desk forever because theoretically you know what would need to be done but if you cannot reach out into HIS world, there's no way to fix it. also - his code might be good in terms of performance and low bug numbers. but it seems to be hard to work on that code for everybody else but him.
furthermore, he is said to be really rude. he is no team player, but works on a software that is worked on by a huge team.
PMs think he's a genius, just a great dev, but they don't understand that other devs need to clean up the mess behind or around him.
everyone who's been his superior so far recommends to get him fired, but the company wouldn't fire him because they don't want to lose his talent. he can just do what he wants. he can even refuse to work on certain things because he thinks they are boring and he is not interested in them. devs seem to hate him, but my boss said, they are probably also a bit jealous because of his talent. i think, he's not wrong. :)
i haven't actually met him so far or was actually "forced" to deal with him, but i've never heard so many contrastive things about one person, the reputation of his, let's say vibrant personality really hurries ahead. he must be a real genius, after all i've heard so far, like he lives in the code. i must say i'm a bit curious but also somewhat afraid of meeting him one day.
do you also have such a guy at your company?11 -
I guess that counts? Some of the local burger kings once had an online game they advertised, where you could win free burgers if you are the first on the highscore (the other 2 places got some sort of coupons for cheaper meals), turned out there was a score submit bug you could abuse after finishing a game (me and a colleague noticed, while trying to find some sort of bug), when I reported it they didnt care (didn't get any response, maybe spam filtered?), so I got us some free burgers, scanned in the receipt and send it again, they paniced or just realized you can generate any amount of free burgers for the time of the game being online, took down the game for a day or two, sent me a short email thanking me, thats it.4
-
i don't think that i'm having a burnout but i think that i'm maybe not so far away from it... several people, including friends, my therapist and also a colleague, told me they see me at risk of sliding into a real burnout.
i've known this for longer that i have a crappy work life balance. the habit of making work the most important part of my own life. thinking about work even in my private time, when i fall asleep, when i wake up in the night or in the morning. the tendency to think about problems, plans, coworkers, not being able to quit work mentally. the idea that i have to prove to everybody at work that i'm awesome. the feeling that, after a work day, i'm just "waiting" at home for the next day, in idle mode, so i can continue working on a problem (like a bug) that's occupying my whole mind. and at the same time, feeling totally empty after work, having no energy. i've lost interest and quit several hobbies in the last two years that once were important for me. and i think one important reason is that i didn't have any mental energy left to deal with that.
another factor for this development was also the pandemic for sure, because for some time, i had no real social life except for that at work.
but more important is probably that i find my job most of the time really fun and am highly motivated. i have the tendency to say yes to everything and to really commit to and own the problems that are handed to me. (right now, however i feel like there's not much motivation left)
then again there is the feeling that what i do is never good enough, i have little self confidence in my own abilities as a software engineer. there's a big discrepancy between how i myself perceive my work and how other people do (not only at work). on a rational level, i know that what i do is at least "good enough", otherwise i wouldn't have this job, and i wouldn't receive this amount of positive feedback from people. but it's hard to really deeply understand this thing, when there are deep-rooted beliefs like "only perfect is good enough" or "your colleagues will be disappointed and get a negative idea of you (and something bad will happen), if you don't give your best"... and there's also this idea that i have to be this super nerdy person who also codes in their free time, reads IT magazines and stuff, because only then i will fit this stereotype of a software developer, and only then i can be taken seriously and be good enough. no matter if this is fun for me or not.
anyway, right now i'm at a point in life where i'm realizing all this not only rationally, but with full emotional impact... :/ my life feels like it's gone stale and empty. i've lost creativity, warmth and human connection and that hurts a lot.
i'm trying to change my life.
one thing that really helps me right now is to talk with people who have (made) similar experiences. can you relate? if yes, how do / did you address those problems? i would really appreciate to hear your stories...6 -
Help. I'm drowning in spaghetti code
I've been working at a working student (15 hours/ week) at a local software company for about a month now... and with everything I learned at college I'm kind of getting eye cancer here.
We still use SVN
We don't have any coding guidelines. No checkstyle, no overview over the program. When I started there I was just giving a ticket and they said good luck.
We just have some basic RCPTT Tests inside Eclipse and most of Themen don't work in the trunk because the gui got changed...
At least we have a ticket system but it doesn't get used by most of the working students.
I found 10 other bugs while reproducing and trying to fix 1 bug.
And I've never seen Java raped so badly. Today I saw a line that started with 6 brackets because whoever wrote it wanted to cast like there was no tomorrow. I see more instanceof in one day than in my whole devlife before.
The only thing we have is two normal employees that review our code before we are allowed to commit it into the trunk.
So yeah... I'm drowning in spaghetti-code.2 -
Just another big rant story full of WTFs and completely true.
The company I work for atm is like the landlord for a big german city. We build houses and flats and rent them to normal people, just that we want to be very cheap and most nearly all our tenants are jobless.
So the company hired a lot of software-dev-companies to manage everything.
The company I want to talk about is "ABI...", a 40-man big software company. ABI sold us different software, e.g. a datawarehouse for our ERP System they "invented" for 300K or the software we talk about today: a document management system. It has workflows, a 100 year-save archive system, a history feature etc.
The software itself, called ELO (you can google it if you want) is a component based software in which every company that is a "partner" can develop things into, like ABI did for our company.
Since 2013 we pay ABI 150€ / hour (most of the time it feels like 300€ / hour, because if you want something done from a dev from ABI you first have to talk to the project manager of him and of course pay him too). They did thousand of hours in all that years for my company.
In 2017 they started to talk about a module in ELO called Invoice-Module. With that you can manage all your paper invoices digital, like scan that piece of paper, then OCR it, then fill formular data, add data and at the end you can send it to the ERP system automatically and we can pay the invoice automatically. "Digitization" is the key word.
After 1.5 years of project planning and a 3 month test phase, we talked to them and decided to go live at 01.01.2019. We are talking about already ~ 200 hours planning and work just from ABI for this (do the math. No. Please dont...).
I joined my actual company in October 2018 and I should "just overview" the project a bit, I mean, hey, they planned it since 1.5 years - how bad can it be, right?
In the first week of 2019 we found 25 bugs and users reporting around 50 feature requests, around 30 of them of such high need that they can't do their daily work with the invoices like they did before without ELO.
In the first three weeks of 2019 we where around 70 bugs deep, 20 of them fixed, with nearly 70 feature requests, 5 done. Around 10 bugs where so high, that the complete system would not work any more if they dont get fixed.
Want examples?
- Delete a Invoice (right click -> delete, no super deep hiding menu), and the server crashed until someone restarts it.
- missing dropdown of tax rate, everything was 19% (in germany 99,9% of all invoices are 19%, 7% or 0%).
But the biggest thing was, that the complete webservice send to ERP wasn't even finished in the code.
So that means we had around 600 invoices to pay with nearly 300.000€ of cash in the first 3 weeks and we couldn't even pay 1 cent - as a urban company!
Shortly after receiving and starting to discussing this high prio request with ABI the project manager of my assigned dev told me he will be gone the next day. He is getting married. And honeymoon. 1 Week. So: Wish him luck, when will his replacement here?
Deep breath.
Deep breath.
There was no replacement. They just had 1 developer. As a 40-people-software-house they had exactly one developer which knows ELO, which they sold to A LOT of companies.
He came back, 1 week gone, we asked for a meeting, they told us "oh, he is now in other ELO projects planned, we can offer you time from him in 4 weeks earliest".
To cut a long story short (it's to late for that, right?) we fought around 3 month with ABI to even rescue this project in any thinkable way. The solution mid February was, that I (software dev) would visit crash courses in ELO to be the second developer ABI didnt had, even without working for ABI....
Now its may and we decided to cut strings with ABI in ELO and switch to a new company who knows ELO. There where around 10 meetings on CEO-level to make this a "good" cut and not a bad cut, because we can't afford to scare them (think about the 300K tool they sold us...).
01.06.2019 we should start with the new company. 2 days before I found out, by accident, that there was a password on the project file on the server for one of the ELO services. I called my boss and my CEO. No one knows anything about it. I found out, that ABI sneaked into this folder, while working on another thing a week ago, and set this password to lock us out. OF OUR OWN FCKING FILE.
Without this password we are not able to fix any bug, develop any feature or even change an image within ELO, regardless, that we paid thausend of hours for that.
When we asked ABI about this, his CEO told us, it is "their property" and they will not remove it.
When I asked my CEO about it, they told me to do nothing, we can't scare them, we need them for the 300K tool.
No punt.
No finish.
Just the project file with a password still there today6 -
This is a short tale that can be summed up as "oh fuck meee".
After finishing an API the night before I settled in for a day of bug fixes and tidy ups. Until slack went off.
The front end dev was getting an error, a code breaking error. After doing the standard process of request checking i went okay must be me. I find the script that is has the error and the line that it is failing at.
Que 2 hours of the full cycle of anger, sadness, pleading, and finally acepting that it had finally happened I had gone insane. The code was to documentation best practise correct and it still had the same error.
I the cheaked the DB on a whim and I found that my code was not wrong and it was doing exactly what I wanted the data however had a single record that was old and the schema had change juuussstt enoigh to break everything at that record. One 3 secound deletion later code ran perfectly.2 -
Shit Developers say:
Fuck you Jasmine and your camelCase
I’ve been wrestling cucumbers all day
Oh no all the cucumbers are broken
In a fit of refactoring madness I have gone and changed a lot
Did you seriously just give ME nil?... No!
If the shit sticks, then we put nice paint on it
Fucking red dot motherfucker (Ben and his failing specs)
You know what we don’t do often..kill each others builds. Kill them and reschedule for later. Mwahaha ha ha.
This build is going to be so rad...(5mins later)...Ok this is not going to pass..I can feel it in my waters!
Can i do that in a digital way or do i have to move my meaty body downstairs to find him?
All the donkeys have be out the gate by sundown
God, imagine if you could patent mathematical solutions
actually, I wouldn't be surprised if you can in the states "no, you can't use a laplace transform, you haven't got the rights, you have to use a less accurate transform on your matrices"
ooooo a boolean that's phrased in the negative, my favourite for code review destruction!
Fuck the police i'll call the object here
Web RTC - its super easy, all you have to do is..probably some hard stuff
I want to go to that conference so I can start arguments with dickheads about semicolons. Just for fun.
This this is not the same as that this.
Can’t come to work I can’t find any clothes. It’s best for everyone if I just don’t come in. ...2 hours later... Yeah my clothes were just in the other room and i couldn’t be fucked moving
(OH about bad bug reports) - you know when they are all like oh joogly joogly doesn’t doodle doodle and it should wobbly doodle you know? and im all like fuck i don’t know any of that shit you are talking about.
Him: "I don’t like it, it’s against REST convention its so 2006 that my eyes are bleeding. As a privileged white male i feel entitled to complain about this." Me: "you. were. eleven in 2006
Source: Kellective Github2 -
At work, my closest relation is with the DBA. Dude is a genius when it comes to proper database management as well as having a very high level of understanding concerning server administration, how he got that good at that I have no clue, he just says that he likes to fuck around with servers, Linux in particular although he also knows a lot about Windows servers.
Thing is, the dude used to work as a dev way back when VB pre VB.NET was all the rage and has been generating different small tools for his team of analysts(I used to be a part of his team) to use with only him maintaining them. He mentioned how he did not like how Microsoft just said fk u to VB6 developers, but that he was happy as long as he could use VB. He relearned how to do most of the GUI stuff he was used to do with VB6 into VB.NEt and all was good with the world. I have seen his code, proper OOP practices and architectural decisions, etc etc. Nothing to complain about his code, seems easy enough to extend, properly documented as well.
Then he got with me in order to figure out how to breach the gap between building GUI applications into web form, so that we could just host those apps in one of our servers and his users go from there, boy was he not prepared to see the amount of fuckery that we do in the web development world. Last time my dude touched web development there was still Classic ASP with JScript and VBScript(we actually had the same employer at one point in the past in which I had to deal with said technology, not bad, but definitely not something I recommend for the current state of web development) and decided that the closest thing to what he was used was either PHP(which he did not enjoy, no problem with that really, he just didn't click with the language) and WebForms using VB.NET, which he also did not like on account of them basically being on support mode since Microsoft is really pushing for people to adopt dotnet core.
After came ASP.NET with MVC, now, he did like it, but still had that lil bug in his head that told him that sticking to core was probably a better idea since he was just starting, why not start with the newest and greatest? Then in hit(both of us actually) that to this day Microsoft still not has command line templates for building web applications in .net core using VB.NET. I thought it was weird, so I decided to look into. Turns out, that without using Razor, you can actually build Web APIs with VB.NET just fine if you just convert a C# template into VB.NET, the process was...err....tricky, and not something we would want to do for other projects, with that in we decided to look into Microsoft's reasons to not have VB.NET. We discovered how Microsoft is not keeping the same language features between both languages, having crown C# as the language of choice for everything Microsoft, to this point, it seems that Microsoft was much more focused in developing features for the excellent F# way more than it ever had for VB.NET at this point and that it was not a major strategy for them to adapt most of the .net core functionality inside of VB, we found articles when the very same Microsoft team stated of how they will be slowly adding the required support for VB and that on version 5 we would definitely have proper support for VB.NET ALTHOUGH they will not be adding any new development into the language.
Past experience with Microsoft seems to point at them getting more and more ready to completely drop the language, it does not matter how many people use it, they would still kill it :P I personally would rather keep it, or open source the language's features so that people can keep adding support to it(if they can of course) because of its historical significance rather than them just completely dropping the language. I prefer using C#, and most of my .net core applications use C#, its very similar to Java on a lot of things(although very much different in others) and I am fine with it being the main language. I just think that it sucks to leave such a large developer pool in the shadows with their preferred tool of choice and force them to use something else just like that.
My boy is currently looking at how I developed a sample api with validation, user management, mediatR and a custom project structure as well as a client side application using React and typescript swappable with another one built using Angular(i wanted to test the differences to see which one I prefer, React with Typescript is beautiful, would not want to use it without it) and he is hating every minute of it on account of how complex frontend development has become :V
Just wanted to vent a little about a non bothersome situation.6 -
I once had a PM who would consistently ask us to fix one off "bugs" (read little design tweaks). He wouldn't even bother to write them down anywhere. He once came over and asked why we hadn't fixed one of his bugs. We had no idea what he was talking about. According to him, we were supposed to organize and prioritize according to his whim. He never logged into our task management system.
When it finally came time to sell off our work to some of the business owners, we showed some of the "bug fixes" we did because that's all we ever heard we were supposed to do. The business owners were mad that we hadn't done anything they had asked us to do. PM throws us under the bus saying that we didn't know how to do our jobs and that we never listened to him. I was so glad when he moved to be lead of the QA department. Then I wasn't so glad.
He would have bug quotas that his team would have to meet. He pitted the entire QA team against all of the devs saying things like, "All the devs suck at coding. It's our job to save the company and the world from their buggy software." He got the only good QA guy fired because he faked a bunch of documents stating that they had had performance reviews and no improvement was made (these meeting never actually took place), and that he hadn't been meeting his big quotas. He was outside of our department and was buddy buddy with one of the C-levels, so his word trumped ours.
Then one glorious day, after I had already left the company, his department was absolved into the technology group. That same day was the day he was fired.
I kind of pity him. I didn't know if he had a family, but how can a man such as that support his family? Perhaps he doesn't have a good relationship with his wife and that's why he sucked at his job?1 -
So this just happened,
Me and my co-worker (we are junior developers) were working on the same bug, it was a post call throwing a server exception.
We had asked for help to debug this issue from a senior developer the day before, he was quite busy with his own tasks.
He is one those kinds who would keep working even if the entire bay is wasting their time, always keeping to himself, needless to say I haven't seen him smile.
Back to my story, he couldn't spare time yesterday so we tried to squash the bug ourselves thinking he might have forgotten we had called him.He then comes out of nowhere, he firsr checks the button bindings, params sent and the call being made.
He then went through the backend code strategically placing the break points, clicks and debugs a few times and then opens the console. BAM!!!!
" D' hell yo !!" Shows up in the console, not just once but multiple times. Turns out I forgot the logger I had placed in the catch block.
He turns to me in super slo-mo looks me in the eye and whispers "what the hell yo!" and kept quite for some time, meanwhile the sense of cringe was slowly creeping on me. That was when he let out a loud blurt and the entire cabin turned to us. Needless to say it was awkward.
His smile was creepy though :/ -
Discovered pro tip of my life :
Never trust your code
Achievements unlocked :
Successfully running C++ GPU accelerated offscreen rendering engine with texture loading code having faulty validation bug over a year on production for more than 1.5M daily Android active users without any issues.
History : Recently I was writing a new rendering engineering that uses our GPU pipeline engine.. and our prototype android app benchmark test always fails with black rendering frame detection assertion.
Practice:
Spend more than a month to debug a GPU pipeline system based on directed acyclic graph based rendering algorithm.
New abilities added :
Able to debug OpenGL ES code on Android using print statement placed in source code using binary search.
But why?
I was aware of the issue over a month and just ignored it thinking it's a driver bug in my android device.. but when the api was used by one of Android dev, he reported the same issue. In the same day at night 2:59AM ....
Satan came to me and told me that " ok listen man, here is what I am gonna do with you today, your new code will be going production in a week, and the renderer will give you just one black frame after random time, and after today 3AM, your code will not show GL Errors if you debug or trace. Buhahahaha ahhaha haahha..... Puffff"
And he was gone..
Thanks satan for not killing me.. I will not trust stable production code anymore enevn though every line is documented and peer reviewed. -
Back when I used be a junior fresh out of school, my senior used to say, when releasing a first version or a major version of any software, app or website always implement easy to fix bugs.
End users or clients, especially the ones that tasked you with the creation of it, will look for a bug until they find one, if it isn't one you will spent hours trying to figure it out, instead give them one.
You know how to fix it and the client is satisfied they found one.
To this day, i still do that, although mostly not even aware of it. Eg: I know that's a bug but i'll fix that when (not if, when) they complain about it.
I even find myself telling the juniors, i develop with, giving them similar if not the same advice.
And that is what experience means, skill is something they teach you in school.
Experience is what makes you a senior or a junior, not your level of skill or the amount of keywords on your Linked In profile.2 -
So we're seating in our small dev room where nothing else and no one else can fit in. I'm sitting next to the door so whenever anyone want to get in or out I need to do it first.
It's middle of the day and one of our dev friends. You don't believe what he did.
He fixed bug. So I pushed the red button to signalise that the bug was fixed and at the same time the alarm siren has launched and red lights starts to blink. Next minute couple of strippers wants to enter. Since the room is small they started dancing on our desks. Waitress opens champagne that's pouring on my leg and then I woke up and my dog is pissing on me.2 -
Most painful code error you've made?
More than I probably care to count.
One in particular where I was asked to integrate our code and converted the wrong value..ex
The correct code was supposed to be ...
var serviceBusMessage = new Message() {ID = dto.InvoiceId ...}
but I wrote ..
var serviceBusMessage = new Message() {ID = dto.OrderId ...}
At the time of the message bus event, the dto.OrderId is zero (it's set after a successful credit card transaction in another process)
Because of a 'true up' job that occurs at EOD, the issue went unnoticed for weeks. One day the credit card system went down and thousands of invoices needed to be re-processed, but seemed to be 'stuck', and 'John' was tasked to investigate, found the issue, and traced back to the code changes.
John: "There is a bug in the event bus, looks like you used the wrong key and all the keys are zero."
Me: "Oh crap, I made that change weeks ago. No one noticed?"
John: "Nah, its not a big deal. The true-up job cleans up anything we missed and in the rare event the credit card system goes down, like now. No worries, I can fix the data and the code."
<about an hour later I'm called into a meeting>
Mgr1: "We're following up on the credit card outage earlier. You made the code changes that prevented the cards from reprocessing?"
Me: "Yes, it was my screw up."
Mgr1: "Why wasn't there a code review? It should have caught this mistake."
Mgr2: "All code that is deployed is reviewed. 'Tom' performed the review."
Mgr1: "Tom, why didn't you catch that mistake."
Tom: "I don't know, that code is over 5 years old written by someone else. I assumed it was correct."
Mgr1: "Aren't there unit tests? Integration tests?"
Tom: "Oh yea, and passed them all. In the scenario, the original developers probably never thought the wrong ID would be passed."
Mgr1: "What are you going to do so this never happens again?"
Tom: "Its an easy addition to the tests. Should only take 5 minutes."
Mgr1: "No, what are *you* going to do so this never happens again?"
Me: "It was my mistake, I need to do a better job in paying attention. I knew what value was supposed to passed, but I screwed up."
Mgr2: "No harm no foul. We didn't lose any money and no customer was negativity affected. Credit card system may go down once, or twice a year? Nothing to lose sleep over. Thanks guys."
A week later Mgr1 fires Tom.
I feel/felt like a total d-bag.
Talking to 'John' later about it, turns out Tom's attention to detail and 'passion' was lacking in other areas. Understandable since he has 2 kids + one with special-needs, and in the middle of a divorce, taking most/all of his vacation+sick time (which 'Mgr1' dislikes people taking more than a few days off, that's another story) and 'Mgr1' didn't like Tom's lack of work ethic (felt he needed to leave his problems at home). The outage and the 'lack of due diligence' was the last straw.1 -
I'm pretty sure my clients would fail the marshmallow test 9/10 times if not 10/10 times. We have a certain time period of the day set aside for me to look into new reported bugs but besides that I'm supposed to work on regular tasks. Of course, they ask me five hours after that time period is done, whether I can look into a new (non-urgent) bug. At the cost of the new thing they want to launch in 2 weeks. 🤔 I would love it if we actually had time to fix every single bug in the codebase but what typically happens is I get about 15 bug reports (most duplicates) and I'm expected to fix all of them in a span of 2 hours.1
-
(in 2008)
my boss in my first job. in general every time when he randomly burst into office. one specific time when he burst i to office and INSISTED that we've got to go to a parking lot to see something.
that something was a remote-controlled helicopter he just bought. (this was before the age of drones).
oh, and he was a chain smoker, always had a cigarette behind his ear (wat), and was dragging me out to have a smoke (i was the only other programmer smoker, but not as heavy as him) every 10-15 minutes under the implied pretense of needing to discuss something about the code, and frowned heavily when i refused (because i was actually in the middle of actual work), because he took it as me refusing to have a work meeting with him.
no, we almost never talked about anything work-related, while on that smoke "work meeting".
also, my boss' boss in my first job, when she entered the office asking "we need a clickable map of our country where clicking each region brings you to a search page with filter set to results from that region. how would we do that?"
i answered "html imagemap linking to the right search url for each region, or embedded flash doing the same, if you want the region buttons to be animated", and turned back to my work.
upon which she proceeded to talk about it with the second programmer, both pretending they're solving some aspects that my answer didn't already solve, INSISTING that i stop doing "whatever nonsense you're doing" and pretend that i'm paying attention as if anything they said was in any way relevant or important. i kept returning to my work because i was solving an annoying bug and their talk was empty and useless.
this second incident was then cited as one of the reasons i was let go, because "he ignores important conversations with his superiors about upcoming tasks"
in general, my first job was a shitshow where nobody had any time or energy to do actual work because they all expended all of it to PRETEND for their superiors that they're working, since the superiors had no clue how it looks when we actually do our actual jobs.
(one month after i was let go (because, in my boss' words, yes, the one with the helicopter, "the IT productivity is very low and I have to hold someone responsible") , the second programmer was let go as well, and one month after that, our boss (head of IT) was let go too. to this day I keep being fascinated how did the company manage to survive long enough for me to even be there, let alone how it STILL manages to survive. i guess being part of a nation-wide conglomerate is very effective in covering your company's losses and uselessness)1 -
So this one day I'm at work and the manager peaks into my office and just says "can you check that platform X is building, pretty much done just a basic bug check" (this bloke had negative 1 technical experience)
I'm not sure what he means, the whole thing is built in Java and I know nothing about that...
I log in the platform on dev server, sure enough it seems to work, charts are drawn, no errors, then I try to log out; this button does nothing...
I don't bother telling the manager, I just go to the dev who's a friend of mine and tell him about it.
A week later, manager jumps in the room all excited "we're launching this product tomorrow, mind checking again?"
Sure, I log in, ... There's no log out button, it's gone... I ask the dev.
"Yeah I fixed it, it's gone now!"2 -
That's it, I'm done. I'm SO. FUCKING. DONE. Whoever created such a badly monkey ass coded shit and named it "Drupal" should have been aborted with a fucking hanger.
No one was here today because they were all at a Drupal Con that I never heard of. Glad I didn't. So they told me "yeah there are one year bug to fix, if you could do them all in a one work day that'd be greaaaaat". FUCK. YOU.
This shit is slowly sucking my passion away, and while I could spend 15 hours to code per day a few months ago, now I'm stuck to debugging shit that should have work without a Drupal environment. Tomorrow I'm going to see my manager and tell him to get me the fuck out of this and make me do something that would make me enjoy living again. I can't believe I'm getting trouble for this kind of low shit stuff, really.
And it started to rain. Fuck.6 -
Github 101 (many of these things pertain to other places, but Github is what I'll focus on)
- Even the best still get their shit closed - PRs, issues, whatever. It's a part of the process; learn from it and move on.
- Not every maintainer is nice. Not every maintainer wants X feature. Not every maintainer will give you the time of day. You will never change this, so don't take it personally.
- Asking questions is okay. The trackers aren't just for bug reports/feature requests/PRs. Some maintainers will point you toward StackOverflow but that's usually code for "I don't have time to help you", not "you did something wrong".
- If you open an issue (or ask a question) and it receives a response and then it's closed, don't be upset - that's just how that works. An open issue means something actionable can still happen. If your question has been answered or issue has been resolved, the issue being closed helps maintainers keep things un-cluttered. It's not a middle finger to the face.
- Further, on especially noisy or popular repositories, locking the issue might happen when it's closed. Again, while it might feel like it, it's not a middle finger. It just prevents certain types of wrongdoing from the less... courteous or common-sense-having users.
- Never assume anything about who you're talking to, ever. Even recently, I made this mistake when correcting someone about calling what I thought was "powerpc" just "power". I told them "hey, it's called powerpc by the way" and they (kindly) let me know it's "power" and why, and also that they're on the Power team. Needless to say, they had the authority in that situation. Some people aren't as nice, but the best way to avoid heated discussion is....
- ... don't assume malice. Often I've come across what I perceived to be a rude or pushy comment. Sometimes, it feels as though the person is demanding something. As a native English speaker, I naturally tried to read between the lines as English speakers love to tuck away hidden meanings and emotions into finely crafted sentences. However, in many cases, it turns out that the other person didn't speak English well enough at all and that the easiest and most accurate way for them to convey something was bluntly and directly in English (since, of course, that's the easiest way). Cultures differ, priorities differ, patience tolerances differ. We're all people after all - so don't assume someone is being mean or is trying to start a fight. Insinuating such might actually make things worse.
- Please, PLEASE, search issues first before you open a new one. Explaining why one of my packages will not be re-written as an ESM module is almost muscle memory at this point.
- If you put in the effort, so will I (as a maintainer). Oftentimes, when you're opening an issue on a repository, the owner hasn't looked at the code in a while. If you give them a lot of hints as to how to solve a problem or answer your question, you're going to make them super, duper happy. Provide stack traces, reproduction cases, links to the source code - even open a PR if you can. I can respond to issues and approve PRs from anywhere, but can't always investigate an issue on a computer as readily. This is especially true when filing bugs - if you don't help me solve it, it simply won't be solved.
- [warning: controversial] Emojis dillute your content. It's not often I see it, but sometimes I see someone use emojis every few words to "accent" the word before it. It's annoying, counterproductive, and makes you look like an idiot. It also makes me want to help you way less.
- Github's code search is awful. If you're really looking for something, clone (--depth=1) the repository into /tmp or something and [rip]grep it yourself. Believe me, it will save you time looking for things that clearly exist but don't show up in the search results (or is buried behind an ocean of test files).
- Thanking a maintainer goes a very long way in making connections, especially when you're interacting somewhat heavily with a repository. It almost never happens and having talked with several very famous OSSers about this in the past it really makes our week when it happens. If you ever feel as though you're being noisy or anxious about interacting with a repository, remember that ending your comment with a quick "btw thanks for a cool repo, it's really helpful" always sets things off on a Good Note.
- If you open an issue or a PR, don't close it if it doesn't receive attention. It's really annoying, causes ambiguity in licensing, and doesn't solve anything. It also makes you look overdramatic. OSS is by and large supported by peoples' free time. Life gets in the way a LOT, especially right now, so it's not unusual for an issue (or even a PR) to go untouched for a few weeks, months, or (in some cases) a year or so. If it's urgent, fork :)
I'll leave it at that. I hear about a lot of people too anxious to contribute or interact on Github, but it really isn't so bad!4 -
Okay, I knew one of my colleagues was actually a work freak, but to this point...
He's been working for most of the day yesterday on a school project, and so was I. Satisfied with my progress, I push the code with TODOs on things we had to agree on tomorrow as well as mentioning it in the issue associated with it on Git, with my last commit a bit before 11PM.
I wake up, with a ping on Discord asking me what was that "bug" I just pushed, wondering what editor I use and asking me if I even use the console debugger. Said "bug" was the point of discussion I said we wanted to talk about tomorrow, I replied in the morning. But he decided of the fix on his own and committed it, as well as other things until... 3AM...
Honestly, I don't blame him for choosing at our stead, he's the leader of our branch and the Gitmaster on top of that. I just reproach him to call it a bug, not see the issue, and all that while he could, you know, sleep. And get some rest overall.
This dude has been working himself madly these last weeks, where he did about 80% of what each of the team member was supposed to do in a whole semester (which amounts to 150 hours of work) for this project (we're nine folks on it).
Now I'm pretty sure it's how he works and that he still gets a decent amount of sleep (like I dunno, until 9AM or so), so I don't expect a response beforehand.
And indeed, as he woke up, he replied to me.
At 7:50AM.7 -
My current job at the release & deploy mgmt team:
Basically this is the "theoretically sound flow":
* devs shit code and build stuff => if all tests in pipeline are green, it's eligible for promotion
* devs fill in desired version number build inside an excel sheet, we take this version number and deploy said version into a higher environment
* we deploy all the thingies and we just do ONE spec run for the entire environment
* we validate, and then go home
In the real world however:
* devs build shit and the tests are failed/unstable ===> disable test in the pipeline
* devs write down a version umber but since they disabled the tests they realize it's not working because they forgot thing XYZ, and want us to deploy another version of said application after code-freeze deadline
* deployments fail because said developers don't know jack shit about flyway database migrations, they always fail, we have to point them out where they'd go wrong, we even gave them the tooling to use to check such schema's, but they never use it
* a deploy fails, we send feedback, they request a NEW version, with the same bug still in it, because working with git is waaaaay too progressive
* We enable all the tests again (we basically regenerate all the pipeline jobs) And it turns out some devs have manually modified the pipelines, causing the build/deploy process to fail. We urged Mgmt to seal off the jenkins for devs since we're dealing with this fucking nonsense the whole time, but noooooo , devs are "smart persons that are supposed to have sense of responsibility"...yeah FUCK THAT
* Even after new versions received after deadline, the application still ain't green... What happens is basically doing it all over again the next day...
This is basically what happens when you:=
* have nos tandards and rules inr egards to conventions
* have very poor solution-ed work flow processes that have "grown organically"
* have management that is way too permissive in allowing breaking stuff and pleasing other "team leader" asscracks...
* have a very bad user/rights mgmt on LDAP side (which unfortunately we cannot do anything about it, because that is in the ownership of some dinosaur fossil that strangely enough is alive and walks around in here... If you ask/propose solutions that person goes into sulking mode. He (correctly) fears his only reason for existence (LDAP) will be gone if someone dares to touch it...
This is a government agency mind you!
More and more thinking daily that i really don't want to go to office and make a ton of money.
So the only motivation right now is..the money, which i find abhorrent.
And also more stuff, but now that i am writing this down makes me really really sad. I don't want to feel sad, so i stop being sad and feel awesome instead.1 -
Quick Tutorial: How to find a missing bug.
0) Wake up & have breakfast
1) Goto work
2) Do your job until the end of the working day
3) Make a backup
4) Shutdown your PC
5) Stand up
6) Go to the office door
7) Grab the door
8) Now the phone rings
9) Turn and go back
10) Take the phone
11) Now you get the bug report
This is a well approved method.
It always works!3 -
A bug is born
... and it's sneaky and slimy. Mr. Senior-been-doing-it-for-ears commits some half-assed shitty code, blames failed tests on availability of CI licenses. I decided to check what's causing this shit nevertheless, turns out he forgot to flag parts of the code consistently using his new compiler defines, and some parts would get compiled while others needed wouldn't .. Not a big deal, we all make mistakes, but he rushes to Teams chat directing a message to me (after some earlier non-sensible argument about merits of cherry picking vs re-base):
Now all tests pass, except ones that need CI license. The PR is done, you can use your preferred way to take my changes.
So after I spot those missing checks causing the tests to fail, as well as another bug in yet another test case, and yet another disastrous memory related bug, which weren't detected by the tests of course .. I ponder my options .. especially based on our history .. if I say anything he will get offended, or at best the PR will get delayed while he is in denial arguing back even longer and dependent tasks will get delayed and the rest of the team will be forced to watch this show in agony, he also just created a bottleneck putting so many things at stake in one PR ..
I am in a pickle here .. should I just put review comments and risk opening a can of worms, or should I just mention the very obvious bugs, or even should I do nothing .. I end up reaching for the PM and explained the situation. In complete denial, he still believes it's a license problem and goes on ranting about how another project suffering the same fate .. bla bla bla chipset ... bla bla bla project .. bla bla bla back in whatever team .. then only when I started telling him:
These issues are even spotted by "Bob" earlier, since for some reason you just dismissed whatever I just said ..
("Bob" is another more sane senior developer in the team, and speaks the same language as the PM)
Only now I get his attention! He then starts going through the issues with me (for some reason he thinks he is technical enough to get them) .. He now to some extent believes the first few obvious bugs .. now the more disastrous bug he is having really hard time wrapping his head around it .. Then the desperate I became, I suggest let's just get this PR merged for the sake of the other tasks after may be fixing the obvious issues and meanwhile we create another task to fix the bug later .. here he chips in:
You know what, that memory bug seems like a corner case, if it won't cause issues down the road after merging let's see if we need even to open an internal fix or defect for it later. Only customers can report bugs.
I am in awe how low the bar can get, I try again and suggest let's at least leave a comment for the next poor soul running into that bug so they won't be banging their heads in the wall 2hrs straight trying to figure out why store X isn't there unless you call something last or never call it or shit like that (the sneaky slimy nature of that memory bug) .. He even dismissed that and rather went on saying (almost literally again): It is just that Mr. Senior had to rush things and communication can be problematic sometimes .. (bla bla bla) back in "Sunken Ship Co." days, we had a team from open source community .. then he makes a very weird statement:
Stuff like what Richard Stallman writes in Linux kernel code reviews can offend people ..
Feeling too grossed and having weird taste in my mouth I only get in a bad hangover day, all sorts of swear words and profanity running in my head like a wild hungry squirrel on hot asphalt chasing a leaky chestnut transport ... I tell him whatever floats your boat but I just feel really sorry for whoever might have to deal with this bug in the future ..
I just witnessed the team giving birth to a sneaky slimy bug .. heard it screaming and saw it kicking .. and I might live enough to see it a grown up having a feast with other bug buddies in this stinky swamp of Uruk-hai piss and Orcs feces.1 -
Fuck Unity.
Every single time I try to use Unity to develop my well-along-in-development video game, it finds some way of fucking itself up.
Be it from somehow failing to compile a DLL - which is something completely out of my control, the inspector failing to update itself when I select a new object every five minutes, to the engine managing to fail to load its UI layout because it somehow managed to lose a file responsible for containing the layout, the Inspector forgetting to include a scrollbar and as such trying to cram a bunch of components into one area, crashing in a certain area because I tried using reflections, crashing because I tried running the game in a place that always works, all the way to the whole thing closing instantaneously when I try selecting a new layout.
My experience with using this god-forsaken configuration of code and imagery has been one of endless torment; I've spent hours lamenting about the pain this piece of utter horseshit has caused me to those who'd listen.
I don't know what I did to this thing to deserve to be shown the absolute worst of this engine for the year I've been working on my game for. I can't even take a look at its source code to see if I can piece together things I'll pick up from alien code to fix obnoxious bugs myself because you cunts have it under lock-and-key for some dumbass reason.
Even updating my install of this engine is a gamble; I remember clear-as-day updating my project from 2019.3.14 to whichever one was most recent at the time, and everything breaking. This time, I got lucky and managed to update to 2020.1.4 with no issue on the surface, except I inadvertently let in a host of other issues that somehow made the editor worse than the older one.
There's little point in even bothering to report a bug because this shit happens so randomly that I could be just working on auto-pilot and the next thing I know Unity's stupid "crash handler" rears its ugly head yet again, or you people are probably too busy adding support for platforms no sane person uses like fucking Chromebooks.
There've been times where it's crashed upwards of three times in the span of 40 minutes of light use.
How is one expected to cough up hundreds of dollars a year to use a "pro" version of this horrid editor when every session of use yields a 50/50 chance that it'll either work like it's supposed to, or break in one way or another?
It's a miracle I even managed to type all of this out in one go, I expected the website to just stop responding entirely once I got past four lines.
Do what you will with my post, I don't care.6 -
Google, will you ever manage to fix YouTube so it actually doesn't fucking break every day?
This "feature" where the page doesn't reload when I click reload is neat until I want to, you know, reload to see new content. Or reload because you failed to load a single video thumbnail. But no, you managed to combine the shit of both worlds and give me a loading progress bar and then don't change anything.
Also YouTube is the prime example why you don't try to reinvent text input fields. I can't remember a single instance in the last 5 years where the comment fields didn't have at least one weird bug.
Why do tech companies build the shittiest websites?10 -
**Day 2 of glaring at the code.😩 The bits are collapsing in front of my eyes into bytes and the glaring dark theme of sublime engraves the code into my retinas. Is it day or is it night? I can no longer tell. Having scoured every corner of the internet and applying every fix I can find the bug persists... was I ever destined to program? For the doubt eclipses my hope of ever seeing the light. I peer over the edge of the world into the abyss and the abyss... **
"Wait 🔎, shouldn't there be apostrophes' in here? MOTHERF-" 😡😠💥☠
**tests**
**works**
*glee* 😄
"God, I love programming!" 😃4 -
I'm tired of "agile" development. Sure the concept of a hacky POC that gets thrown out for a real implemention sounds great. But it never gets thrown out. That shitty POC become the foundation for a horrible mangled mess of hacky improvement after improvement. I'm tired of my boss telling me "do it the easy quick way and fix it later", like fuck off no. I can save man weeks worth of bug hunting a year down the road by actually taking an extra day to do it right. Like fuck does no one care about quality engineering anymore?
Sometimes that extra day to write a general vs a specific implementation is worth it.5 -
Just...Macbooks
(sigh)
The entire day wasted having to install a new OS to install a new Xcode to export an app, only to find the xcode was installed under a different user (who has long since gone from the company) to then have to look up what to do, to then just sit...........and....................wait.............for Xcode to download again.
And I know when I try to export my app (which had zero problems being exported to Android) I'm going to hit an entire day tomorrow of bug fixing for ios sh...stuff16 -
bad nightmare: getting a bug on the day of deployment..
worst nightmare: getting more than 100 comments on a Rant with no ++1 -
So, a few years ago I did an internship at this company really close to my house. It was a total disaster but a few months ago I decided to give it another shot and apply for a junior position there as I needed money and they knew me there. For some reason they hired me and now I work there for about 2 months.
There's one other developer here and my problem is that he's the senior here. Guys I don't know what to do about it, this guy is so controlling. He won't allow me to decide ANYTHING.
I have a whiteboard with all my projects and he wrote deadlines there (because his boss said he needs to set deadlines since he never finishes anything on time, but he decided to put that on me) when I finished something in time (like 3 days early!) I wanted to put that under the project on the board. But he didn't want it. No reason. Just no.
He's also constantly talking, all day long. He writes 1 or 2 functions per day. Maybe fixes a small bug. And then one day per week he actually works. Constantly complaining about me, bugging me, removing electricity from my screens, setting my wallpaper to 2 dudes kissing ect. ect. its fucking annoying me. This guy even plays video games on his nintendo or call of duty.. Working for other customers that have nothing to do with this company. And the boss thinks he's great..
So 2 days ago, the whiteboard filled with his drawings was completely emptied because of me. It felt so good, he was so angry he didn't talk all day, to no one. What else can I do guys? I can't go to my boss, the other guy in this office doesn't really care and he's on his side. But when I code I need to be able to concentrate. I can't even have a serious conversation with this guy because he just doesn't take me serious. He always thinks he's right and wants control of every little thing...
What do I do?10 -
I started off in a MNC company as a junior developer. I entered with candy glasses.
I didn't expect to win the lottery. Of getting abuse by superior.
I stayed for a year, at the project. Constantly being belittled by this team lead. It was awful i enter as a fresh grad. All the new tech were so new and scary at that point.
During my time there, i constantly think that developer is not my stuff.
Ultimately i reach the state of burnout. I reached out to the manager and broke down in his office.
I actually told the manager. "I hate coding"
I remember staying up to 4am just complete a piece of program. To be ready to be push to production the next day. My team lead just come screaming at me saying there is bug.
Upon receiving that message via skype. I broke, tears flow down my eyes.
After which i reach a state of burn out. I start to reach out to external parties for help to get me out of there.
Now i am recovered from the burn out. I am curious of the technology that were utilized in that project. I literally face palm. After understanding the technology it isn't so hard after all. I just didn't gear myself up with the tech.
I still do enjoy working on code.3 -
Why is it so hard to convice coworkers (other programmers) to use source control? Yes it's an extra step every day or so but it can be so helpful and save so much more time tracking down versions and when the bug first appeared. Also, piece of mind if your computer every gets hosed.7
-
qa: so yesterday we found some bug, not really related to you but <boss> told me to put it on you
me: yeah, when he doesn't, this dick didn't work since I came
*later this day at ~15:00*
boss: so I'm going home, you **must** deal with this bug today, your algo doesn't work.
me: it did 2 days ago didn't it? did you even check the bug?
boss: yeah
me: did you check for regression or just said to put it on me?
boss: nope
me: did you check the changes of the new guy?
boss: nope
me : so why the fuck blame my code?!
*17:10 I'm going home no regression, new guys code deadlocks, not a single fuck thrown* -
Managers at my jobs for the most part leave me be. Though I often have no clue whether I'm doing OK. I guess no news is good news right?
My worst experience isn't that bad. At one place, I was the only tester working on things coming from 20-30 devs. After about a year+, the company finally hired more testers, but it was still only 3 of us.
We were in the final stages of releasing a build to prod. It was going smoothly, or so we thought. At the last minute, I found a buried bug that was a showstopper.
A lot of hatred on me that day, that once it was fixed, and the release was finally deployed, I just shut off my laptop and left. I took all the blame because I was the one who found it rather than blaming the team as a whole for not finding it earlier. Oh well. Stuff happens.
Let's knock on wood that I don't run into worse higher up stories. -
Inspired by @shahriyer 's rant about floating point math:
I had a bug related to this in JavaScript recently. I have an infinite scrolling table that I load data into once the user has scrolled to the bottom. For this I use scrollHeight, scrollTop, and clientHeight. I subtract scrollTop from scrollHeight and check to see if the result is equal to clientHeight. If it is, the user has hit the bottom of the scrolling area and I can load new data. Simple, right?
Well, one day about a week and a half ago, it stopped working for one of our product managers. He'd scroll and nothing would happen. It was so strange. I noticed everything looked a bit small on his screen in Chrome, so I had him hit Ctrl+0 to reset his zoom level and try again.
It. Fucking. Worked.
So we log what I dubbed The Dumbest Bug Ever™ and put it in the next sprint.
Middle of this week, I started looking into the code that handled the scrolling check. I logged to the console every variable associated with it every time a scroll event was fired. Then I zoomed out and did it.
Turns out, when you zoom, you're no longer 100% guaranteed to be working with integers. scrollTop was now a float, but clientHeight was still an integer, so the comparison was always false and no loading of new data ever occurred. I tried round, floor, and ceil on the result of scrollHeight - scrollTop, but it was still inconsistent.
The solution I used was to round the difference of scrollHeight - scrollTop _and_ clientHeight to the lowest 10 before comparing them, to ensure an accurate comparison.
Inspired by this rant: https://devrant.com/rants/1356488/...2 -
I could kill someone. My boss occupied the whole cluster for 24h yesterday, so that I had to wait until today to see that I had a small bug in my code. I wasted a whole day waiting around for something I could have fixed in 5 minutes yesterday if I only had 1 free node on the cluster 😠
Worst of all, if anybody else had occupied the whole cluster for so long without asking, he would have sent an angry e-mail to the whole institute 😠4 -
Anyone else have people that seem to constantly try to "prove" themselves to you in this weird, competitive way that only makes them seem... very annoying? I'll call him Bob here, but it's always something like:
Bob: Hi Almond, how's it going?
Almond: Ah not bad thanks, PSU blew up in the PC over the weekend though so that was a bit of a faff!
Bob: Ah no! How old's your PC?
Almond: Oh, like 7-8 years old now. I don't replace it often.
Bob: Really?! I replace mine completely every year.
Almond: Ah, cool.
Bob: Yeah, I'm a dev so I feel I need to. It's like my tool, you know.
Almond: Sure thing!
Bob: I actually spend quite a lot on it. I make sure it's got the fastest memory I can afford. Like, DDR5 stuff. That's really important, you know.
...etc., while I try to get out of said conversation for the next eternity.
Or:
(while in a conversation about a frontend bug I was looking at in Chrome devtools)
Bob: Hey Almond, you know Firefox actually had a plugin that did all this stuff before everything else?
Almond: Err, yeah, I think so. Used it back in the day.
Bob: It was called firebug. It was really good. Revolutionary.
Almond: Certainly was.
Bob: It was launched in January 2006 you know.
Almond: Right...
Bob: I used it back then.
...I mean damn, I'm all for being civil, but no-one cares you replace your PC every year, or that you know the year firebug was released, or that you once set up 5 identical PCs with different versions of Linux to run some benchmarks...14 -
So recently a 0-day exploit was discovered in WP plugin Kaswara Modern WP Bakery Page (https://zdnet.com/article/...).
A customer's shared hosting space was taken down (about 6 websites) after this vulnerability had been exploited and although we removed the malicious code, & changed credentials the hosting company demands we update ALL Wordpress plugins to latest AND provide them a virus scan report of our local PC before putting the webspace back online??? WTF???
That just strikes me as outrageous. Thoughts?10 -
Creating a stripped down version of a product is a big red flag to me (e.g. "easy/light mode").
It means the main product is too complicated; it handles too many things. Instead, shift the focus back to the core of the product by removing features.
In the our day-to-day it is completely normal to stumble upon things that used to work but now have been changed: they have been deprecated.
Deprecating and removing features should be added to any product iteration. Thus being "normal" and a common occurrence in any changelog; just like features and bug fixes.
This gives non-tech product owners "permission" to remove bloat. Devs stop whining about "the big rewrite". And end-users don't suddenly have to learn yet another tool with "basic" features missing.
I think the best example is google (https://killedbygoogle.com/) and the worst is the amazon shopping website (what a mess!).3 -
A couple of years ago I was working on a fairly large system with a complex (by necessity) access control architecture.
As is usually the case with those projects, it's awkward for developers to repro bugs that have to do with a user's accesses in production when we are not allowed to replicate production data in test, let alone locally.
We had a bug where I ended up making myself a new row in the production database for a thing I could have access to without affecting real data to repro it safely. I identified the bug so I could repro it in dev/test and removed the row and ensured everything worked normally, whew scary.
Have you ever walked into the office one day, and everyone is hunched over in a semicircle around one person's workstation, before one turns around to look at you and says - after a pause - "... ltlian?.."
Turns out I had basically "poisoned the well" with my dummy entity in a way where production now threw 500 for everyone BUT me who had transitive access to this post-non-entity. Due to the scope of the system, it had taken about a day for this to gradually propagate in terms of caching and eventual consistencies; new entities coming in was expected, but not that they disappear.
Luckily I had a decent track record for this to be a one-off. I sometimes think about how I would explain testing in prod and making it faceplant before going home for the day, other than "I assumed it would be fine". I would fire me.3 -
My kind of solving a issue
1st day:in my name they assigned a issue,searching the bug or issue where it is
2nd day:stackoverflow,copy and paste,open several tabs blah blah, solving a issue and fix and I test on my own
3rd day
4th day
5th day:status still working
Next week: push a code in gitlab
TL:it's take to one week to solve a issue
Mindvoice:if I finish, you will assign a tough task -
Well... I can think of several bugs that I found on a previous project, but one of the worst (if not the worst, because the damage scope) it's one bug that only appears for a couple of days at the end of every month.
What happens is the following: this bug occurs in a submodule designed (heh) to control the monthly production according the client requirements (client says "I want 1000 thoot picks", that submodule calculates the daily production requirements in order to full fill the order).
Ideally, that programming need to be done once a week (for the current month), because the quantities are updated by client on the same schedule, and one of the edge cases is that when the current date is >= 16th of the month, the user can start programming the production of the following month.
So, according to this specific case, there's an unidentified, elusive, and nasty bug that only shows up on the two last days of every month, when it doesn't allow to modify/create anything for the following month. I mean, normally, whenever you try to edit/create new data, the application shows either an estimated of the quantities to produce, or the previous saved data. But on those specific days it doesn't show any information at all, disregarding of there's something saved or not.
The worst thing is that such process involves both a very overcomplicated stored procedure, and an overcomplicated functionality on the client side (did I mentioned that it dynamically generates a pseudo-spreadsheet with the procedure dataset? Cell by cell), that absolutely no one really fully understands, and the dude that made those artifacts is no longer available (and by now, I'm not so sure that he even remember what he done there).
One of the worst thing is that at this point, it's easier to handle with that error rather to redesign all of that (not because technical limitations, but for bureaucratic and management issues).
The another worst thing (the most important none) is that this specific bug can create a HUGE mess as it prevents the programming of the production to be done the next day (you know, people tends to procrastinate and start doing things at the very end of the day/week/month)... And considering that the company could lose a huge amount of money by every minute without production, you can guess the damage scope of this single bug.
Anyway, this bug has existed since, I don't know, 2015 (Q4?) and we have tried so many things trying to solve it, but that spaghettis refuse to be understood (specially the stored procedure, as it has dynamically generated queries). During my tenure (that ended last year) I spent a good amount of time (considering what I mentioned on the last rant, about the toxic environment) trying to solve that, just giving up after the first couple of weeks.
Anyway... I'm guessing that this particular bug will survive another 4-ish years, or even outlive the current full development team... But, who knows ¯\_(ツ)_/¯ ? -
Wouldn't call it a software bug but related:
Was developing an order system to expand in the UK. We have been developing it for the last 2 years and always had a one nasty bug in the system... Whatever we do, it still appears... Tried debugging to find the source, tried covering with tests - nothing helped it was still there. We even rewrote the whole system 3 times and it still was there!
One day, we have been given a stupid request from our manager - take a black background and make it even more blacker... That was it and I went to the CEO with letter where I stated that we should remove the manager... As I'm the Senior there, he did ask me why and eventually removed the manager...
Oh my guys, I've never felt so good after removing a bug! Since then - our application went live, we had our first customers and we were happily rolling new updates. And the best part - there was no BUG! Everything we did just had undocumented features or missing links but we haven't really had a single bug that was not caught by our automated tests!
---
Moral of the story:
Not only software can have bugs. People also can be "bugs" while bugging you about every single details they think is not working correctly. -
Have been working on my project recently, bug fixing, aws configuring, containing the app, etc, etc. I've been sleeping close to 5hrs on average per day, juggling college finals, work, training and project labour, my activity here has been minimal but I figured some people might be going through the same and I wanted to share my last resource dev weapon...the jet fuel of dev fuels imo...DW coffee
I strongly recommend to use it in dire times (not a promo this thing got me through 13 hours of coding straight)6 -
Had a very productive day today:
1. Fixed a small bug
2. Ordered Tab S6
3. Watched the entire season of a Netflix show4 -
Init Mud. (A poem)
A Giant Ball of Mud.
Haphazard in structure.
A sprawling, enthralling, duct-taped warning,
Of things to come.
Tumbling down a well-worn path
Of untamed growth and aftermath.
Into Spaghetti-code Jungle.
Where quick and dirty wins the day
And warnings spoken hold no sway
Or fall on deaf ears in the undergrowth.
Tumbling.
Gaining weight.
Bits stuck on.
Bytes taken out.
Patches,
On top of patches,
On top of obsolescence.
Hacked at, uploaded
All elegance eroded.
Made and remade
Then duplicated
Relocated
Refined and redesigned
Suffocated by expedient repair after expedient repair
The original self no longer there
Replaced by something
Unwieldy.
Design resigned to undefined
An architectural mystery
Whose function can no longer be
Seen or gleaned
From obfuscated in-betweens
Of classes
Made and remade
Duplicated.
Abused.
A squirming library of disused.
Pulled at, prodded, committed
Corners cut and parts omitted.
Bug ridden branches fused to a rotting core.
The structure...
The system...
The content...
Mud.1 -
I just watched https://youtube.com/watch/... - towards the (very) end he's talking about how software developers rule the world... and I just realized something.
A while back, I was working on an accounting sub system for a SaaS product. We managed some of the revenue of our customers and had the accounting for that part as well. Revenue + Payments (with all the VAT / sales tax / ... that you need to have). BUT no expenses.
One day, the head accountant of a customer, angrily demanded that we immediately implement a new payment method, called commission.
You don't need to be an accounting expert for knowing, that a commission is an expense you have because somebody else marketed / sold your product / service for you. Making it a payment method is probably wrong. With a bit more knowledge you'd know that the taxes which are around expenses are completely different to revenue or payments. (btw payments didn't even have any taxes in those countries that we covered at that time at least).
So there I was standing, a software developer, trying to explain the product manager and the head accountant of our customer, that the idea is beyond stupid, and the fact that it comes from an accountant is super scary to me. (he was usually extremely picky about everything we did.)
Luckily, it was easy to convince the manager. He tried to explain it to the accountant but that person just didn't get it.
as if designing resilient distributed systems, which have 99,99% up time weren't hard enough, we also need to be experts in every domain that we have to deal with? And if there is a tiny bug and one out of 10s of thousands of transactions is screwed up, people start panicking and "loose trust in the product"? - what the hell is wrong with them?
Luckily it's a minority of customers only, but each of them is such a pain. Do you also have customers like that? who should know better, but somehow you are the expert in their domain?2 -
This weekend I was working on a fun hobby project with a friend of mine. While he was modeling items for the game I started with a dungeon generator.
This morning I got stuck at a bug which took me more than 12 hours and 4 developers to fix. In the end I found the issue. I was checking
If y > arraySize && somethingElse
DoSomething();
It had to be:
If y < arraySize && somethingElse
DoSomething();
After I changed that everything worked without issues... Day well spent... -
I'm so happy that I have the first working version of the program. Just couple of bug fixing and unit testing and I'll push the code to production.
Day 1: Just couple of bug fixing and unit testing and I'll push the code to production.
Day 2: Just couple of bug fixing and unit testing and I'll push the code to production.
.........
Day 200: Just couple of bug fixing and unit testing and I'll push the code to production.
😞 -
!rant
Does anyone else derive great pleasure from creating quality of life/small utility programs?
So I'm learning python in between projects at work (plan on slowly moving new projects to it) and damn, my coding buddy and I have found a package/import for almost anything we can imagine. Heck, we canned ourselves laughing when we started googling random things and still found python packages that do it. I plan to use the language to automate a ton of things when I get a new PC.
Aside from that, I recently in 2 days (1 day building, 1 day bug fixing) made a tiny utility that shaves a good 5 minutes off a certain task for my colleagues at work, and in bulk use will save even more time. It's a textbox and a button only but it felt so nice to make something useful like that so quickly.5 -
This is a sad story of bad recruitment in my school.
One day I had my computer class in school and my teacher was on leave so the substitution department sent another teacher to our class.
I have 3 computer teachers in my institution, let us assume their names for this rant as A, B and C.
A - The most learned teacher who has a lot of experience and also writes books. This teacher is the head of the department and wants students to explore coding.
B - A teacher who sticks to books and writes books on Excel and Powerpoint for small children.
C - The youngest teacher who has almost no experience at all.
What happened was that during the substitution, teacher C was sitting and doing her own work. I thought she might know java and other fundamentals of computers. One of my friends asked her about some bug in his program. She went to his seat and said that teacher A would come and help you out. To this, the student said ok.
I thought that the teacher had something fishy going on.
A few months later teacher B and A were talking about some coding competition and I was alone in the lab cause I am the only one in 11th with computer science.
The problem here was that C came to the room and quietly asked what is an object and class in java. I was shocked! I mean how could that happen, she is supposed to know everything in the comp sci syllabus. This was a disaster, teacher A was explaining to her about classes and objects. It was clear to me that she didn't know anything about programming in Java.
This is the fault of our school.
My school wants a good rank in the lists and for that they cut down the budget of teachers and remove old, experienced teachers for cheap, newer teachers.
This was shocking as a person who doesn't know much about something can't answer the doubts of children, this is a wrong way of teaching.
Hope you have a good day :)7 -
So... concerning the rant on here: https://devrant.com/rants/4299469/...
I'm making my comment as a separate rant because the thread from the original rant was too long and also slowly deviated outside context.
"Why has the rate of female developers reduced overtime?".
Here is my take:
It's natural and I'll explain why I think so...
During my computer science school days we had seventy two (72) males compared to just twelve females (12) in class. The girls could compete in theoretical grounds but when it comes to real coding they were no where near.
This boils down to the passion for programming as a real world subject. In programming you feel rewarded when you "fix a bug" and you're filled with pride when you "learn a new language". This reminds us of the scientific research of boys being more attached to reward engaging activities, most times for bragging rights while for the girls they'd prefer compassionate activities where they can easily be noticed, but unfortunately enough in programming "you only notice yourself".
We can clearly see the mode of career options in our world today...
-----------------------------------------------------------------------------
Interfering with people (Compassionate reward)
-----------------------------------------------------------------------------
* Front desk officer... Female populated
* Support personnel... Female populated
* Nurse... Female populated
* Flight attendant... Female populated
* Childcare workers... Female populated
* Preschool/KG Teachers... Female populated
------------------------------------------------------------------------------
Interfering with things (Intrinsic reward)
------------------------------------------------------------------------------
* Engineer... Male populated
* Electrician... Male populated
* Welder... Male populated
* Carpenter... Male populated
* Programmer... Male populated
From the list you'd notice females prefer jobs that are compassionate in reward, require minimal physical activities and also able to make them easily recognisable.
On the other list, male populated jobs are intrinsic in reward, physically inclined, working more with things than with people.
Now seeing the clearer picture, we could sincerely say this is nature at its finest because we have here a balance. Females are kid bearers and we shouldn't be surprised that they are more compassionate to people than with things. Males have more pride than compassion which is needed to protect a family and this indirectly affects their choice of selection.
In reality...
Females are more attracted to Males with pride.
Males are more attracted to Females with compassion.
I would say, it's all the doings of nature affecting our unconscious career options while we seek to find our purpose in life.29 -
I spent most of a day a few weeks ago tracking down and fixing a NaN bug in a framework I use. I hacked it into my local copy of the framework's code.
Today I have the same bug, and after several hours of searching I finally realize I'd updated to a new version of said framework and so had overwritten my fix....
FML3 -
I promised to deliver a project in 10 days.....it's due end of day on Monday, I have worked through me entire weekend from morning to evening...i was happy to be done....then a fucking bug came out of freaking nowhere and pushed a broom stick up my ass....am now heading to sleep feeling violated hoping to pull a comeback from where the stick was pushed in1
-
Why!!!
Why must some devs make life complicated!!!!!!
So, here I am enjoying my day (well enjoying the meetings that are taking me away from working) when I get a bug report that script X isn't sending out emails anymore.
Ok that's weird, this as far as I know uses the same email class as every other email being sent out from this project, and they all work.
Let's go have a quick dig...
function sendEmail(){
/*do a bunch of stuff*/
}
Is being used, well that's odd, it should be $emailService->send()
But what ever, it's probably an old wrapper for legacy sake since this script was written years ago. But nope, I almost cried, it's a wrapper for mail() isolated into this script.
Like for fucks sake, why in the hell would this be used when there's an entire fucking class that's tried and tested and only looses 1 email every few months, coz shit happens.
Errrrr.... sometimes i really wonder why people can't just do what they need to do the first time round.rant i'm tired of fixing bullshit code emails why you no work php i don't get paid enough for this shit oh god that's why4 -
My team and I are working on a huge project that's been in development for years.
First deadline was in the fall last year. We were never going to make that.
Then we were supposed to be ready just after the summer holidays (months ago). We didn't make that either.
Then we were supposed to launch last week. Didn't happen, still too many critical errors and unfinished, untested features.
Now we are having daily meetings to discuss whether we'll be ready to release... that day!
Meanwhile, stability issues and other critical errors keep popping up. The product is barely finished and has not been through rigorous testing with all the latest features and bug fixes. Not to mention that we don't really have a deployment pipeline either.
And here's the kicker: The customers don't know this is coming. It's highly anticipated, but only internally. It is a replacement for an existing product, which strives towards not changing the frontend too much.
Why do we rush it so? I get that a deadline can help motivate you to reach your goal, but how motivated will we be if the launch fails and we get buried in bugs and missing features?
Would it not be better to launch it with at least the confidence of knowing that we've tried to test it properly?9 -
At the end of the day, I feel kind of sad that there's something actually working in the bug I've been developing...1
-
The agenda app I downloaded has a bug now.. can't select the day of the month from the calendar... Have to go swiping from page to page until I get where I want :/2
-
Whole day was a debug session with several hundred lines of code and tons of if else conditions.
Found the bug.
Time to go home.
I am done. 🤕6 -
today is the day i will write a bunch of passive agressive redmine tasks with fucking steps to reproduce the fucking bugs and fucking info on the fucking environment of the fucking bug! i mean you have the time and skills to attach bunch nonsence screenshots with color coded arrows and circles, carefully cropping out info i could actually use, like the fucking url and browser, but you cannot consolidate your thoughts well enough to write down the steps that led to a bug??? fuck these people3
-
Long story ahead
Background:
I recently started a job in a smallish startup doing web development in a mostly js stack as an entry-junior engineer/dev. I’m the only person actively working on our internal tools as my Lead Engineer (the only other in house dev) is working on other stuff.
Now I was given a two week sprint to rebuild a portion of our legacy internal app from angular 1.2 with material-ui looking components with no psd’s or cut-outs of any kind to a React and bootstrap ui for the front end and convert our .net API routes into Node.js ones. I had to build the API routes, SQL queries (as there were plenty of changes and reiterations that I had to go through to get the exact data I needed to display), and front end. I worked from 9am until 11pm every day for those two weeks including weekends as our company has a huge show this upcoming week.
I finish up this past sunday and push to our staging environment. The UI is 5.5/10 as we’re changing all of our styling to bootstrap and I’m no ui expert. The api has tests and works flawlessly (tm).
So we go into code review and everything is working as expected until one tab that I made erred out and was written down as a “Needs to be fixed.”
This fix was just a null value handler that took three minutes and a push back to staging, but that wasnt before a stupendous amount of shit being flung my way for the ui not looking great and that one bug was a huge deal and that he couldnt believe it slipped through my fingers.
Honestly, I’m feeling really unmotivated to do anything else. I overworked myself for that only to be shit on for one mistake and my ui being lack-luster with no guides.
Am I being a baby about this or is this something to learn from?1 -
A tale of silos, pivots, and mismanagement.
Background: Our consultancy has been working with this client for over a year now. It started with some of our back-end devs working on the API.
We are in Canada. The client is located in the US. There are two other teams in Canada. The client has an overseas company contracted to do the front-end of the app. And at the time we started, there was a 'UX consultancy' also in the US.
I joined the project several months in to replace the then-defunct UX company. I was the only UX consultant on the project at that time. I was also to build out a functional front-end 'prototype' (Vue/Scss) ahead of the other teams so that we could begin tying the fractured arms of the product together.
At this point there was a partial spec for the back-end, a somewhat architected API, a loose idea of a basic front-end, and a smattering of ideas, concepts, sketches, and horrific wireframes scattered about various places online.
At this point we had:
One back-end
One front-end
One functional prototype
One back-end Jira board
One front-end Jira board
No task-management for UX
You might get where this is going...
None of the teams had shared meetings. None of the team leads spoke to each other. Each team had their own terms, their own trajectory, and their own goals.
Just as our team started pushing for more alignment, and we began having shared meetings, the client decided to pivot the product in another direction.
Now we had:
One back-end
One original front-end
One first-pivot front-end
Two functional prototypes
One front-end Jira board
One back-end Jira board
No worries. We're professionals. We do this all the time. We rolled with it and we shifted focus to a new direction, with the same goals in mind internally to keep things aligned and moving along.
Slowly, the client hired managers to start leading everything in the same direction. Things started to look up. The back-end team and the product and UX teams started aligning goals and working toward the same objectives.
Then the client shifted directions again. This time bigger. More 'verticals'. I was to leave the previous 'prototypes' behind, and feature-freeze them to work on the new direction.
One back-end
One conceptual 'new' back-end
One original front-end
One first-pivot front-end
One 'all verticals' front-end
One functional prototype
One back-end Jira board
One front-end Jira board
One product Jira board
One UX Jira board
Meanwhile, the back-end team, the front-end team overseas, all kept moving in the previously agreed-upon direction.
At this stage, probably 6 months in, the 'prototypes' were much less proper 'prototypes' but actually just full apps (with a stubbed back-end since I was never given permission or support to access the actual back-end).
The state of things today:
Back to one back-end
One original front-end
One first-pivot front-end
One 'all verticals' front-end
One 'working' front-end
One 'QA' front-end
One 'demo' front-end
One functional prototype
One back-end Jira board
Two front-end Jira boards
One current product Jira board
One future product Jira board
One current UX Jira board
One future UX Jira board
One QA Jira board
I report to approximately 4 people remotely (depending on the task or the week).
There are three representatives from 'product' who dictate features and priorities (they often do not align).
I still maintain the 'prototype' to this day. The front-end team does not have access to the code of this 'prototype' (the clients' request). The client's QA team does not test against the 'prototype'.
The demos of the front-end version of the product include peanut-gallery design-by-committee 'bug call-outs', feature requests, and scope creep by attendees in the dozens from all manner of teams and directors.4 -
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
-
It sometimes really sucks to see how many developers, mostly even much better than me, are too lazy to implement a function to its full UX finish.
Like how can you not implement pagination if you know there's going to be fuck ton of content, how can you not allow deleting entries, how can there be no proper search of content, but instead some google custom search, how can you not implement infinite loading everywhere, but only in parts of your application, how can you not caching a rendered version or improve the page, that loads EVERY SINGLE ENTRY in your database with 11k entries, by just adding a filter and loading only chunks of it.
I know sometimes you need to cut corners, but there's rarely any excuse with modern toolsets to just write 3 lines more and have it ready for such basic things.
I sometimes just wake up during the night or before falling asleep and think "oh, what if in the future he might want to manage that, it's just another view and another function handling a resource, laravel makes that very easy anyway", write in on my list and do it in a blink the next day, if there's nothing else like a major bug.
I have such high standard of delivery for myself, that it feels so weird, how somebody can just deliver such a shitty codebase (e.g. filled with "quick/temporary implementations"), not think of the future of the application or the complete user and or admin experience.
Especially it almost hurts seeing somebody so much more versatile in so many areas than me do it, like you perfectly fine know how to cache it in redis, you probably know a fuck ton of other ways I don't even know of yet to do it, yet you decide to make it such a fucking piece of shit and call it finished.2 -
This week was one of those weeks were it feels like it's never ending
Monday, delayed trains and the legacy project's new update went live
Tuesday, not a lot of work so I did some self study (best day of the week)
Wednesday, again train delay, and some funny little sh*t ripped the valve from my bike... I mean sure if you let the air out, haha little fun but completely removing the valve? That's just f'n low...
Thursday, the legacy project had a weird bug that I can't reproduce but has to be fixed before the end of this week...
Friday... To be continued... I hope it will be a quiet quick and easy day... 😟3 -
Rant && SPAM alert!
I'm learning QML, to create plasma widgets and I wasted all the fucking day fighting with layouts and trying to understand why the settings window was not rendered (now it's rendered but I still don't understand why it wasn't before, the code is the same!)
so at the end of the day I ried to apply what i learnt in a fresh new widget that shows (some) PiHole statistics from its API.
on first run:
it runs fine, no errors... ok let's do some tests... turn off network, whole DE freeze WTF!?! one widget error (network error in this case) can freeze the whole DE.
restarted plasma, FIXED the bug (debugging process basically is:
try something - freeze - restart plasma - repeat
),
No more freeze!
if you're a KDE and pihole user and you want try my widget:
https://github.com/ShellAddicted/...
P.S: I'm adding right now a switch to quickly enable/disable pi hole over API directly from your desktop. i will push tomorrow.4 -
So in the project I’m working on we were about to do a push to live, no major functionality just minor adjustments and nice to have stuff. One of the things I did was a reminder, nothing special just sends an email out if something hasn’t been done for 3 days and then sends an email every day following. Push to live and every thing goes fine with no issues. Day 1 there are no issues. Day 2 there are no issues. Day 3 and I’m inundated with people telling me that the emails are getting sent to practically everyone, shit. What have I done? What have I missed?
So I start looking at the live database hoping for a data problem, no such luck. I look at my code looking for something blatantly obvious but nothing. I start replicating the data but I can’t reproduce this bug and it’s annoying the hell out of me. I checked one of the emails that the client sent to us more thoroughly and seen that it was sent at 07:01. This is odd as our webjob runs at 1am so I start looking at environmental factors and started looking at release management, more out of hope than expectation. I check the staging environment and see that the webjob ran at 7:00. Coincidence I thought, the webjob gets packaged on the release pipeline and everything in the database was dummy data anyway but I’d better check anyway. The database was an exact copy of the live database, turns out a “senior developer” wanted to sanity check everything by running live data through the code so he copied the database over. It was fine for the first couple of days but the data was now 3 days out of date triggering my email code and I get hit with the shit storm. I’ve never met such an incompetent developer in my fucking life, functions 700 lines long, classes that are over 20000 lines, repetition every where and the only design patterns he’s used is when he picks up a child’s colouring book. I can live with the fact that he writes code like someone on their first day of University But copying a database because he wants to “visualise” the fucking data is absolutely farcical. No wonder the project is fucked with a “developer” (in the loosest possible use of the word) is at the helm. -
Yesterday was a horrible day...
First of all, as we are short of few devs, I was assigned production bugs... Few applications from mobile app were getting fucked up. All fields in db were empty, no customer name, email, mobile number, etc.
I started investigating, took dump from db, analyzed the created_at time stamps. Installed app, tried to reproduce bug, everything worked. Tried API calls from postman, again worked. There were no error emails too.
So I asked for server access logs, devops took 4 hrs just to give me the log. Went through 4 million lines and found 500 errors on mobile apis. Went to the file, no error handling in place.
So I have a bug to fix which occurs 1 in 100 case, no stack trace, no idea what is failing. Fuck my job. -
How many sh*t days does it need to make me down?
3 ...
I hate my company, for making everything overcomplicated and annoying.... I have to discuss with 3 peoples for 3 days to getting some gitlab premium licenses (20$ per month for 10 licenses)... Why do you need it? Why we can't use the free version? Why Why Why... It's not enough to tell them it will save us much times and improves the quality of development.....
Also I wanted to ask if we can to Jaxb or another Dev Conference this year... Then I got the information that we have about 2000 Euro for 10 people for training.......... What should we do if everyone buys a book this budget is out .... f*ck company....
Second day, half of the day was taken for fixing the live db on the fly cause of a bad structure of tables... at least fixed some other inconsistence too... later the day fixed a freaking shitty bug with Spring Devtools and 2 Classloader to make the product that I'm presenting in 2 days running.
Today next shitty day with discussion that everything I did last half year (introducing Microservices, Kubernetes, Kafka and other DevOps things) could be maybe useless when the external company will say that they use another ecosystem -..- for their microservices...
Someone looking for a disappointed java developer? I just want to develop the best product ever... I'm happy with every area... Frontend, Backend, DevOps, Fullstack, Architect in some kinds depends on the wishes and technologies.1 -
I HATE the idea of only releasing on pre-determined schedules despite work being completed and just waiting for that day to arrive.
I'm a co-founder of a small software company. We have partnered with another particular company that also writes software. Some of our clients have access to paid content of that company's services through our application.
Every once in a while, our clients will report issues with that company's service to us, because they access it through our application. They think it's our issue.
We then pass the report on to the partner company, telling them that their stuff is broken. Their reply goes like this:
"Ok. We'll get the bug fix scheduled, and we'll release it next Thursday."
"Next Thursday? The issue is now, they can't use the service."
"That's our scheduled release date."
O.M.G.
We voluntarily walked away from our safe, cushy jobs working for other people, taking enormous pay cuts to start this company. Now, we're 6+ years in, disrupting established fat-and-happy competitors in this space. I GUARANTEE you that if we had that same attitude, we would have been absolutely obliterated early on.
We are quick. Guided by kanban boards, our suite of unit tests and integration tests is vast and kick-ass. With continuous integration and the click of a button we know if we broke something or if the piece we're working on is ready to be pushed to production, IMMEDIATELY. Our "release schedule" is when the damn thing is complete.
It isn't all bad. Our integration with them has been beneficial for both of us. I just loathe their snail's pace which negatively affects our mutual customers. It can make us look bad, and we can do nothing about it.
Blah.3 -
No I don't want your updates every single day, Windows 10. Maybe I don't want to be so edgy with your updates. May be I like it XP style when updates didn't used to bug me with every single boot up and power down. It has become even worse. Who thought defering updates to the next boot up was a good option? It fucking interferes with the flow of work. They were like -
"You know what, let's update till 35% and then fucking update the remaining 65% at next boot"
"But users will be frustated"
"We'll show the update screen with clean font and a nice background. It will calm them down"
"Okay, so let users choose when to download the updates"
"That's not a fucking option, mate"
And if you are going to force updates down our throats please fucking mention what is being changed as a short description instead of showing a 'KBxxxxxxx' update number! If not that, at least hyperlink the thing to your update docs page! OR Mention a version buff if not it! I HATE seeing 'Update for Windows 10 Version xxxx for x64-based Systems' EVERY. SINGLE. TIME I see an update ready to be downloaded.
And no I don't play Candy Crush, or other games that are pre-installed as soon as I re-install fresh Windows or go on Xbox App. I hate to do this ritual of turning off auto download from Windows Store every time. So please don't pre-configure anything for me. Keep it fucking raw. That's why Linux distros win.
I'm just saying, Service Packs were a great thing with a need of little improvements. You guys ruined the whole experience, Microsoft.2 -
Working from home. Most of the team is off. Client has an official half day. Most of them are off. Instead of being online at 7 am, gonna get online around 850 just before daily standup. Laying in bed, enjoying the cool sheets and the fact that there's no rush. ~0730 team lead calls, user shit himself and I need to fix it. Server issue? Nope. Data issue? Nope. Portal bug? Nope.
Client input conflicting data and can't progress with tool.2 -
I went to my friend's party on Friday and I got back like at 3 am and code till 5 then I got a bug on a php script to upload pictures to the server. wake up at 10 am fixed the bug with a hangover of cheap alcohol and went to sleep the rest of the day.
Am I killing it or what?😂3 -
Tldr: no router, almost not work.
Ok I recently moved into a new house, and I signed a contract for an Internet line.
Problem is that the router has been sent at the ISP shop, where I was supposed to get it personally. But guess what? Covid emergency happened two days after, and the shop closed.
So, after spending two days calling customer service of both ISP and Postal office without being able to speak to anybody, I received a Sms saying that the pack was not delivered because the receiver was closed.
After some more unsuccessful calls to the same two entities I managed to find the actual shop's phone number, that was actually thw owner's house (he's working from home). I spoke to him, told the problem, and he changed the router destination to my house.
Today I checked the package status on the postal website and I saw that it seems that they tried every day, at 7:02 am, to deliver the bloody package again at the shop! I truly hope this was a bug on their tracking system. It's weird that the hours were always 7:02am, because the package delivery office opens at 8:30 am, so again I'm praying any existent and non-existent god that that's just a bug. I'm kinda tired of being stuck with my phone hotspot with limited GB and with ISP public routers with about 5Mbps.
I wish I had @netikras skills with router building.4 -
While finishing up development on an Atari Jaguar game. The game crashed after being left on the frontend screen for 24 hours. Part of the Atari QA checklist.
The bug turned out to be really easy to fix. Just work late and reset the testers Jaguar at 3am. Beers all round and sent to duplication ;)
Still crashes to this day.6 -
So, it's been a while since I've been working on my current project and I've never had the "luck" to touch the legacy project wrote in PHP, until this week when I got my first issue.
And damn, this goddamn issue. It was a bug, a very strange bug, that only happens in production and that nobody has any idea what was happening, so yeah, I didn't have anyone to ask and I got less time than usual ( because Thanksgiving ).
And thus, I have no starting point, no previous knowledge on PHP and less time! I expected a very fun week 😀 and it was beyond my expectations.
First I tried to understand what might be causing the issue, but there wasn't any real clue to star with, so no choice, time to read the flow on the code and see what are they're doing and using ( 1k line files, yay, legacy ). Luckily I got some clues, we're using a cookie and a php session variable for the session, ok, let's star with the session variable. Where it's that been initialize ? Well, spoiler alert, I shouldn't start with that, because my search end up in the login method of the API that set a that variable and for some reason in the front end app it was always false and that lead me to think that some of the new backend functions were failing, but after checking the logs I got no luck.
Ok, maybe the cookie it's the issue, I should try open the previous website on the brow...redirect to new project login, What? Why ? I ask around and it's a new feature push on Monday, ok I got Chrome Dev tools I can see which value of the cookie it's been set and THERE IT WAS it has a wrong domain! After 2 days ( I resume a lot of my pain ) I got what I've been looking for, so now I should be able to fix the bug. Then where is the cookie initialized ? In the first file the server hits whenever you tried to enter any page of the app, ok, I found the method, but it's using a function that process the domain and sets it correctly? wtf ? Then how in heaven do I get the incorrect domain ? Hello? Ok, relax, you still have one more day to fix this, let's take it easy.
Then, at the end of the Wednesday, nope I still have no clue how this is happening. I talked with the Devops guy and he explain me how this redirection happens and with what it depends on, I followed the PHP code through and nothing, everything should works fine, sigh. Ok I still have 2 days, because I'm not from US and I'm not in US, so I still have time, but the Sprint is messed up already, so whatever I'm gonna had done this bug anyhow.
Thursday ! I got sick, yay, what else could happen this week. Somehow I managed to work a little and star thinking in what external issue could affect the processing, maybe the redirection was bringing a wrong direction, let's talk with the Devops guy again, and he answer me that the redirection it was being made by PHP code, IN A FILE THAT DOESN'T EXIST IN THE REPOSITORY, amazing, it's just amazing. Then he explained me why this file might be missing and how it's the deployment of this app ( btw the Devops guy it's really cool and I will invite him a beer ) . After that I checked the file and I see a random session_star in the first line of the code, without any configuration, eureka ! There was the cause and I only need to ask someone If that line it's necessary anymore, but oh they're on holiday, damn, well I'll wait till Monday to ask them. But once and for all that bug was done for ! 🎉
What do I learn ? PHP and that I don't want any more tickets of PHP 😆. -
!dev
TL;DR: Today my phone Kruger&Matz Live 3+ got ebola. Anyone had same issues?
I woke up and unplugged my phone from charger as always, but it was hot as hell. I was not worried, thought it heated up cause of charging as I plugged it few hours before waking up.
Then things got serious. I was unable to use phone, it freezed randomly, opened apps I hovered when frozen, etc. I thought thats becuse it was hot, so I turned it off and put it into the fridge (I do it sometimes).
I was leaving house in an hour so I hoped that would help. I turned it back on when leaving, but nothing changed and it was getting hot again. I've checked processes, was deleting apps like mad, thibking that was some bug in update of one of them, cleared cache partiotion too. That did not help, so I was forced to factory reset. Guess what... same issues.
I tried everything possible and lost all hope, was ready to send it to service. So I turned it off, so it won't burn my pocket out.
Few hour later I talked with dad complaining about the issue and tried to show him what's wrong, but... it was all right again. No freezes, no heating.
Later that day my sister told me she had issues with her phone - Live 3, described same as mine. Even weirder that my girlfriend had no issues with her Flow 4+ from same company.
Two phones of same company, almost same product line with the same exact issues on the same time frame? Any ideas what happened?4 -
At a previous job, I worked on a multi-vendor e-commerce website. It used Magento2 as an API and a separate application we built with Node, Express, and React that consumed it to avoid using Magento's frontend.
The whole stack used should be a rant in itself but our checkout process was dependant on work done by some contractors in India. In short, this entire checkout process would break multiple times a day with no way on my end to fix anything, and that's what I had to reply with every time a bug ticket would come in; which is honestly the worst reply ever to a huge issue like that.
After several attempts of pitching the idea and being turned down for building the checkout in-house to remove the dependency and work on even streamlining the process, the product manager of the brand said as quote "Well the checkout isn't really that important".
At first, I was kind of speechless. How is the functionality of actually buying a thing in an online store NOT important? Shouldn't that be the most important?
Then I realized over time that the only thing they cared about was being a Nascar version of a website, essentially being a canvas of ad space that sellers on the marketplace could buy and paying money just to list their items.
I hated working on that project, and that made it so much more soul-crushing. Gotta chase that revenue right? -
Difference between 2023-01-01 00:00:00 and 2023-12-31 23:59:59 is 11 months, 29 days, 23 hours, 59 minutes, 59 seconds ; so almost a year (by one second)
Difference between 2023-01-01 00:00:00 and 2023-01-31 23:59:59 is the same, almost a month by 1 second.
Same for february (even with 28 being the last day).
But then, 2023-03-01 00:00:00 and 2023-03-31 23:59:59 gives me :
1 month, 2 days, 23 hours, 59 minutes, 59 seconds.
WHY, are there fucking 34 days in March ? Is this a bug ? Is it confused with February being the previous month ?
Why would PHP do this to me ?
Why the hell is it always so painful to work with dates, it's not even like I'm stretching the standard library or using raw timestamps to hack things together
I used the diff method of PHP 7.4 DateTime, is someone wants to try it24 -
The other day I fucked up. I coded a safety measure that saves a file on crash, to keep data safe.
I added two lines of code before loading the file, and they crashed. There goes all my data.
(At least got to fix that bug) -
So ok, today was a crazy day.
New sprint, new ticket.
Work on the bug tickets first he said ….
Sure can. Oh had I just known that this very first innocent looking ticket is the way to coder‘s hell ….
‚Access of undefined‘ it said. Easy to fix, I thought.
Until I found the very same code twenty-fucking-two times over about 50 files!
Who would guess that exportSingleOperatorBooking, exportSeveralOperatorBookings, exportAllOperatorBookings (… and more) could in practically be the same? Nah, they all use different interfaces.
Oh wait, the alias type of the extended sub-interface of file misc.ts is the same logical content as a differently named interface below another different interface with the same content as in another ts file?
Wait that can‘t be. Riiiiight?? 😳
8h later I have barely scratched the surface of refactoring this shitshow of a project.
But no, I refuse to put the same error handling multiple times in different places.
I could have been done already. I could have saved my soul, my sanity. But I will be brave and strong to save the innocent developer that will cometh after me. For I shall be rewardeth for my sacrifice.
Amen.8 -
>First day back at work.
>Boss tells me something is totally fucked up on an app we've been developing for the past 2 years
>see the bug, can't really understand why, but looks like it's a conversion issue (from string to float)
>realize that on some phones, the conversion of the number "9.1234" becomes "91234" and then after calculations, becomes "9123,4" which of course fucks everything up
>looking through it and realize that from the latest version on, unity convers string based on current culture
>still trying to figure out how to fucking specify that it must use english culture all over the place1 -
bitter reflections from a bitter dev on hacktoberfest this year (in the past 2 hours of trying to find issues my IQ has at least halved):
- DefinitelyTyped - used to be my bread and butter to complete hacktoberfest; now, not sure if actual issue, or person just doesn't know how to use typescript (found a multiple such issues that were actually non-issues, the type they were asking for was right there, no pull request needed)
- avoid "issues" on no code / low code tools, these are toxic issues with titles like "I EXPLAIN BUG HERE", then probably not even a bug / more a feature request or clueless clown
- if your entire contributor team has the same character styled profile pic + background, i can't take you seriously; if your identity is so closely tied with what github team you are on... uh, i mean cmon what is this kindergarten? (also love the fact that an anon managed to get themselves mixed in hahahaha they ruined it perfectly!)
- most 'hacktoberfest' issue finders themselves are broken or don't load anything
- people claim issues and then never return YAWN
- the hacktoberfest discord: the projects channel is mostly people promoting their garbage repo WHICH HAS 0 OPEN ISSUES IN THE FIRST PLACE AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA and then OTHER people promoting their own portfolio on hacktoberfest???!! 😂😂😂😂 yeah bro i'm gonna help you with your own portfolio site GTFO
from what i've seen, i think i can start working approximately 5 minutes a day and be more successful than these absolute 🎪🤡🤹♂️ devs
sure, there is being a beginner, and there is being a clown salesmen trying to get people to do work for you... i mean wtf is going on
i WANT to help and contribute, but this year its really a struggle to find anything worthwhile to contribute to!
somehow the spark is gone... this might be my last Hacktoberfest... let me just return to my wisky and be in peace4 -
To the reactjs-centered fucks who develop the popular web component viewing software called storybook: have you ever heard about semver?
89 alpha/beta/rc releases for a minor update 6.3 -> 6.4 with "100's of fixes and enhancements" "in preparation of the HUGE 7.0 release". Gee I wonder will it have 1000's of bugfixes? How bug-ridden is this software?
Every minor upgrade since 5.x is backwards-incompatible and requires a day of frustration finding out in how many more fucking NPM packages you split your codebase just because it's cool. I know move fast and break things, but some of us have other things to do than resolving node_modules incompatibilities you know. "No just hit 'npx sb upgrade' you say". I did, I really did! And the browser showed a blank screen of death with tons of cryptic React errors, it really did! Thank God you abstracted away all your dependencies in that sb command, now you can't even read the docs about what could have gone wrong with a specific sub-package. You have @storybook/html but the docs redirect to React pages, so good luck if you use something else
This is so sad... like.. the IDEA of storybook is great. But why did faith put the capacity to develop such a tool into the hands of people who think the world centers around React and JSX.. HTML should have been the default, and then you build on top of that for your fav framework, not the other way around -
Yesterday I spent my whole fucking day solving a bug from a Drupal multistep form, the kind of bugs you know it worked for a year then suddenly start to go full retard and simply not working at all
Took me half a day to get how it worked, half the rest to get why it stopped working and how to to make it work again, knowing that the "old fashion way" can't be applied anymore for dumb reasons (unless the client wants his user and payment history tables to be dropped, which I doubt)
I don't know if my solution is the best, but it works without too much tweaks, and hey, it still works today!! -
Curiosity killed the cat.. or was it Opportunity?! 🤔
You get to learn new stuff daily.
Not one assignment is the same, and if it's similar, you can hijack the old code, improve it & turn in the better version of it.. or don't improve..totally how you feel that day..if you're not a crappy developer no improvement should still also be ok..
I love mostly adjustable schedule, so there's no biggie of I have a day or two of coders block & can't produce much of value..I can switch tasks & do some simple ones on those days..or just refactor.. all's good..
I love solving puzzles, every bug is a new puzzle I can play with..
So basically, I love being a dev, because it's like being back in school, but only with the subjects you like! -
In the new job as "Consultant", one of my duties is to maintain the website. Now, the website is based on PHP 5.6 (which they are still using mail method) and without git or sg-git and of course, it is based on cPanel.
Now, I update the website in real time i.e. working on cPanel itself. This is because I don't do for the front end, I do it for SEO. So one day, they reported a "feature" as a bug and assigned it to solve me, I took my time solved it, they did not like it, I reverted it back and I had to listen to a lecture because I did not test it.
Imagine old "wise" ass hats giving a lecture which they do not know about in the first place, 12 of them precisely, yeah that's what happened to me. -
Sometimes i cant fix a bug for days. Like 3 days of brainwreck. Then on the 4th day i wake up. So whatever i love. Take some time for a rest. And then begin working whenever i feel like it. I start working at 2 pm. Try to solve the same bug again. The first thing that comes to my mind is Hold on, why dont i try to change this? I did and it worked. My first thought has solved a 3 day old bug.
Can someone explain this phenomenon. This is proof that a man is unproductive and cant work good if he doesnt feel like it.
You know all of those bullshit andrew tate quotes "i work even when I don't feel like it because that's what men are supposed to do. I train when im happy and i train exactly the same when im unhappy" but thats bullshit. I can not be productive if i am unhappy. I tried so hard and the harder i tried the more i failed. And now when im no longer unhappy i solved it on the first try.
Nobody cares when a man is unhappy. No one gives a shit. It's not fair1 -
Universal rule of opening tickets
Me: *opens ticket on basically ANY ticketing system EVER* (could be internal, from the customer, some random bug online, anything...).
Me: writes detailed explanation of issue, because I know working on tickets is hard. Of course I include that I tried steps A, B, C, and that I haven't been able to do D because of reasons.
Ticket derp: Comments...
"Hey, have you already tried A, B, C? Also you should totally do D first."
WHAT IS WRONG WITH YOU? I TAKE TIME OUT OF MY FUCKING DAY TO WRITE THIS SHIT DOWN AND EVEN FORMAT IT NICELY, JUST TO MAKE YOUR MISERABLE LIFE EASIER, AND YOU DON'T EVEN READ IT YOU WORTHLESS LITTLE BALLSACK!? FUCK OFF!1 -
I was just about home from a long day of work and just blew a tire on my truck. Not flat, blew.
That wasn’t the bad part. I was so excited to get home since I figured out a bug in my code while I was at work that I had been trying to fix for a while now.
By the time I got my tire on, I had no idea how to solve the bug. -
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 -
had an incredibly productive day today on the ultradark blockchain. wrote a bunch of tests, updated documentation, split the repo into 3 seperate ones because it got too big and had too many different things in it, AND accidentally fixed an annoying, deep-recursion bug that ive noticed for a while now.
seems too good to be true...1 -
Today I had to spend the whole day fixing a stupid bug in a legacy application in a completely different tech stack than I'm used to...
At my company we have an Internet application running where we can upload a word document and using some mailmerge variables magic, can set those vars and receive the personalised word doc back...
Now this is great, when it's working, and is used in various projects we have up and running... Suddenly the application decides to crap out for no apparent reason and guess who drew the short straw....
Anyhow I ask our sys admin for the password to the server, I remote desktop to it, turns out its a fucking Windows 2008 server...
But wait it gets better, the application, a shoddy mess of c# code, is not under any sort of version control, has to be developed on that same server and to top it all of, I have to follow some obscure barely documented deployment precedure to get my changes live....
So after a lot of cursing on the dev (not working at the company any more) who did the original setup, and hours of painstakingly piecing together how it works and what went wrong and how to fix it, I finally managed to get it working....
After this rant, I'm mailing my technical lead about this in the hopes we can get someone to do it right (yes, I'm that naive)1 -
How 2018 brings an aww bug.
At my company, we've a reporting application. Which kind of provides analysis of client's weekly business. When you open the application it shows their business trend starting from Sunday to day of week.
As usual their is an endpoint to get the data basis on start date. As soon as date changed to 1st Jan, it stopped showing data. Given that it was a long weekend, no one was available from the tech. Support team got tremendous amount of tickets for this. Later on Tuesday while debugging we got to know while forming the date in the application the logic was like this
- get current year
- get the date and month on start of week
Combine these 2 and request the data. All the time it was fetching data starting from 31 Dec 2018.
😒😒😒2 -
I recommend this to 'myself later'
#MISSING_OLD_RANTS #MY_OLD_RANT
you are in the flow maaan... you fucking rock it... i swear, to GOD!
I'm in the most mindblowing.. thinking out-of-the-box... thinking about the system... everything that just can help recover a little piece of your soul... and resolving the worst bugs you've ever had... and you are just fucking ROCK IT! And you are on the highway to finish it all, but then suddenly a thought kicks in, and won't let you "do ya' thing".
That little piece of shit is now not a man, not a thing, nor anything... just some old tune from your dreams... and NOW! You! You are in the flow... and suddenly know what is your youtube's playlist name... from your saved 170+ playlists...most of them with 30+ saved videos... and you fucking see through that madness now, and THAT contains that tune!!!
You dropp EVERYTHING! YOU ARE IN THE FLOW! And you just solved a "bug" inside you, 'cause if you listen that song, than finally will Soothe Your Pain (haha... https://youtu.be/MJpQx57uoRc )... And you know it... you are in a hurry, and you will forget the name again... so you just go to youtube... and try to search it... "piano"
you are always in a hurry... so -> hotkey Ctrl + T... (y -> auto youtube search) "y_piano" -> result is "personalized"...
yeah, innnntresting...
a lot of really irrelevant youtube videos...
Ok... scroll down...
loading more...
BOOM Dr. Dre ft. Snoop Dogg between Mozart and Chopin...
"ok so personalized..." but not my playlist...
You check your youtube account... playlists... ALL PLAYLIST -> "Ahh finally, maybe a new search implementation!"...
Naaah... just shitty 170+ videos...
"thanks youtube..." No filter, no search... NOTHING...
"Fuck..." ok. fuck... go to old youtube page, you saved just for these situations... (remember... you are clever! and thank me later: https://youtube.com/view_all_playli... )
And it is not looking like it looked back in the day... and a little piece of it warns me that it will be removed soon... :'(
You lost the flow... you desperatly breaks down... What?!?!! that is the worst thing could happen to me... this is the only search option which works atleast a little bit... and it don't bothers anyone... and it will be abandoned, and shut down soon... :'(
So you sadly search that playlist... listen to that tune... turns up the volume... so that I can cry calmly in the corner, and no one can hear it...
And you know, everything you done, is fucked up, you don't even remember where this half sandwich came, in front of you?! nor what is the time?! anything...
You just wasted half an our, from your best fuckig time you can have right now... you could done all your tasks, all your bugs inside you... but you fucking wasted 30+ minutes (btw which is the most valuable thing in this fucking miserable life... and you wasted it to "search the youtube's UI where could you finally SEARCH WITH GOOGLE/YOUTUBE"!!!
And even that song is ruined for you now, 'cause this will be even worst in the future...rant #yt_fucked #google #google_the_search_engine #youtube_search_fucked #rip_yt_utility #my_old_rant #missing_old_rants2 -
I just came home from opening of the fiscal year of a small drivers' club and it was quite an amazing life experience.
I got about a 5-times "rise" for a first, small, post-due-time project.
All of the members were so relaxed in one of the most serious moments of an association. We ate, drank beer and had as much fun as possible without break the law and other rules.
The story goes like this:
I was an intern in a website development company as students tend to do. In middle of the internship my teacher asked me if I'd be willing to develop a website to the before mentioned organization.
School will help with the money by being as a middle-man. It wasn't going to pay much, about 120€ or so, it's nothing really for the job, but I said yes for the experience. We organized a meeting, school provided the space, and went straight to the business.
The development went quite well: I got the final design requirements late (there weren't too much), research a lot about CMS:s, ended up with a beta version CMS (a risk), learned it, developed some plugins (not published yet), kept copyrights for most of the work and so on.
I was done _relatively_ quickly with the project and was quite happy with it. Only things still pressing my mind was bugs of the beta CMS, support for the plugins and my somewhat inexperienced graphical design.
Then it hit me, the world. Hosting, domain transfer, certificates, registry agreements. Arrgh. Most of things were fine, I know them. I had luck that I had a technical contact for the club. It would have been a nightmare of it's own otherwise.
We had problems transferring the domain, again, as you do. The other hosting company was to blame. They were the n00bs here. I went trough the law, technical guidance, etc. I was having heavy messaging with my technical contact about it, who was a middle-man for me and the hosting firms.
After a long while loop of waiting, reconfiguring, researching and messaging, until he transfer was finally over.
We had a long while of radio silence after some bug fixes. Until the Christmas came and I was invited to a Christmas party in a cottage, third Christmas party that year. It was great fun. We ate, drank, talked, went to sauna and had a playful adult stiga or sledging competition, etc.
I updated the site yet again, a stable version of the CMS were published. Yess!
Another radio silence came and year changed. It was broken off by a call to the opening of the fiscal year, the same day. This is today, or yesterday by now. This was just after my current company's board game night. I was really busy that day. A whole afternoon of second-hand shopping around the city with a bike. I counted 35 kilometers. Yes I go by bike, don't own a car or have an driving license... Yet.
I wasn't horribly late, around 30 minutes. I started eating and drinking. Free food and beer! They was also late, they should've got trough the business before I got there, before eating. So I ate and listened. Learned more about having business or an association in general. Until my matter came to be heard. They thanked me of the co-operation and made public the change of my reward sum, I WAS GRANTED 500€ REWARD for the work. It's still not an amazing sum in a larger point of view, but I can imagine that it's big deal for a small non-profit organization, which was loosing money. Everybody applauded, every 25 members of the club. I was greatly pleased. I will have to update their site a bit still, but they are going to pay the reward ASAP.
Did I mention that the school works around the taxes, legally. Taxes for the reward, if it were assumed as a wage would be 15%, for me, at the worst case scenario, only for getting the money to my hands.
I was offered another gig at the event, but didn't promise anything yet. I left before sauna, so we didn't get to change contact details. He will find a way to reach me if he really wants so. I'm a busy free man.3 -
Have this iOS maniac/UI guy/hustler at my office. (Refers to my first Rant,he's the fucker who always try to shove his iPhone to my face.) Hats off to him for knowing how to generate passive income and his hustling skill. But I hate that fucker. He always like to start a debate. He's always doing his sidejobs all the time. He sells staff online(even fidget spinner). He also does wedding photo shoots. Heard from a friend, he's a mediocre photographer but gets client by giving his potential clients lower prices than his competitors. He got a few connections and somehow always doing websites for his own client by going to codepen and copy pasting JavaScript from here and there. He doesn't know shit about programming. That fucker doesn't even know about closures. He literally doesn't know shit. Yet try to debate about with us regarding programming (wtf?) Always trying to get us to help him with his side paid jobs -when he encountered an error,he will immediately bug us- sometimes would interrupt us while we are busy with the company's stuff. If we don't help, he would slightly mock by saying things like "it's ok...I understand you guys are not that experienced yet..etc". The senior dev was pissed off the other day and emailed a super detailed complaint to the HR.
Note : He gets paid more by his photoshooting jobs on the weekend, he's only at this job for his future citizenship application. That fucker. He's the type of fucker that will definitely gets rich but gets hated by everyone. -
Life Bugs
====================
What would you define code that's not "Hard coding ?" ---"Soft-coding" ?
Any suggestions?
-_-3 -
So 3 devs spent all of yesterday investigating a bug. Tracked it down to field validation handled by a 3rd party product. We decide the easiest fix is to remove that validation and implement it ourselves (its a really odd bug and a terrible product). Then today the tech lead comes along and says "there could be another way, hang on while i download the latest Xcode and waste half the day fighting with it when you could be fixing it". I dunno why we bother doing the work in the first place. Clearly we should just leave it to him to save the day.1
-
I'm tired of taking breaks, only to find bugs IRL.
I draw the line at my grapes throwing an exception!
Debugging the crane game app, my ISPs aggro DHCPv6 query vs their WAN6 scripting and the label printer at Quest Labs was annoying enough.
I don't even know how to tag this.
A day ago I tried ordering a coffee and doughnut on Doordash. I thought, I must be too tired/missing something. Dunkin' Donuts didn't have doughnuts on the menu, despite the header of "Donuts and Bakery", I called them... A few minutes later the reason was found. Their PoS system upgraded, changing the formatting of the doughnut options so a minor bug caused it to show as fully updated, despite actually disabling the doughnut menu options... today it's the weirdest, possibly inappropriate-looking, grape I've ever seen... and I grow 5 varieties of grapes. Maybe if I get drunk enough(wine?) later, I'll be able to not debug or re-engineer anything for a few hours.
Any suggestions on how to stop iterating through a debugging loop IRL 24/7 is certainly welcolmed.
Now, wtf do I do with this, mildy disturbing, grape?7 -
Originally a comment, but thought it made a good rant.
My experience with Amazon so far... (I live in the colony known as Puerto Rico)
2011: Can no longer get free shipping on books. Apparently, we could before because of a "bug"
2015: Your Prime membership no longer gets you 2 day shipping. Only standard shipping.
2017: Free shipping 3-7 days? Now it takes 3 weeks to a 4+ weeks. (Packages get here faster without Prime for some reason)
2018: Tax of 11.5 when buying directly from Amazon.9 -
Magento Debugging Horror!
Changing lots of things in magento with no problem. Continuing development for quite sometime. Suddenly decide to clear cache to see affect of a change on a template in frontent. Suddenly magento crashes! There's no error message. No exception log. No log in any file anywhere on the disk. All that happens is that magento suddenly returns you to the home page!
Reverting all the changes to the template. Clear the cache. Nope! Still the same! Why? Because the problem has happened somewhere in your code. Magento just didn't face it, because it was using an older version of your code. How? Because magento 2 even caches code! Not the php opcache. Don't get me wrong. It has it's own cache for code, in a folder called generated. Now that you cleared all the caches including this folder, you just realized that, somewhere something is wrong. But there is no way for you to know where as there is absolutely no exception logged anywhere!
So you debug the code, from index.php, down to the deepest levels of hell. In a normal php code, once the exception happens, you should see the control jumps to an exception handler, there, you can see the exception object and its call stack in your debugger. But that's not the case with magento.
Your debugger suddenly jumps to a function named:
write_close();
That's all. No exception object. No call stack. No way to figure out why it failed. So you decide to debug into each and every step to figure out where it crashes. The way magento renders response to each request is that, it calls a plugin, which calls a plugin loop, which calls another plugin, which calls a list of plugins, which calls a plugin loop, which calls another plugin.....
And if in each step, just by accident, instead of step through, you use the step over command of your debugger, the crash happens suddenly and you end up with the same freaking write_close() function with no idea what went wrong and where the error happened! You spend a whole day, to figure out, that this is actually a bug in core of magento, they simply introduced after your recent update of magento core to the latest STABLE version!!! It was not your mistake. They ruined their own code for the thousandth of time. You just didn't notice it, because as I said, you didn't clear the `generated` folder, therefore using an older version of everything!
Now that after spending 7 hours figuring out what has failed with absolutely no standard way of debugging and within a spaghetti of GOTO commands (Magento calls them plugin), why not report it to github? So you report it with a pull request. This also takes 1 hour of your time. Just to next day get informed that your pull request is rejected because another person already fixed the bug and made the same pull request. It was just not on the latest stable version yet!
So you decide to avoid updating magento as much as possible. Because you know that the next Stable version will make your life and career unstable. But then the customer complains that the Admin Panel is warning him of using old Magento version which might pose SECURITY THREATS! -
Spent most of this week busting my ass working on a hotfix that came out of nowhere with mega high priority. This annoys me greatly because the hotfix wasn't even fixing a bug, it was adding new functionality because certain customers were being blocked from testing without this specific feature. In my humble opinion, given that we release every weekend, hotfixes should be reserved for actual critical bugs. But anyway, as I probably could have predicted, the code got to QA and exploded. Literally nothing works.
This is what happens when you try to rush out features to satisfy customers. If you try to rush something that is late, you WILL make it later.
Meanwhile there's an issue I'm supposed to be fixing for our next release which goes out this weekend and I've had no time to even look because of this hotfix. And now it's the end of the day and I just feel worn out from stress, tomorrow will no doubt be similar.1 -
Customer calls
Talking about some new feature he haven't totally thought about. so i tell him to think about it.
Talking about a bug, but can't reproduce it.
Talking about another enormous new feature but halt it after hearing the initial estimation.
Total time waster = 1.5 hours for every day.
DON'T LET CUSTOMERS WASTE YOUR DEVELOPMENT TIME.
instead of talking - use project tracking software (i.e. JIRA) -
Bug in the Webapp
(maybe its already been reported before...)
If you load the new top feeds
https://www.devrant.io/feed/top/day
https://devrant.io/feed/top/...
https://devrant.io/feed/top/...
https://www.devrant.io/feed/top/all
the button "more rants" opens
https://www.devrant.io/feed/top/2
This URL doesnt work. Its reloads page 1 of the "all" feed
https://www.devrant.io/feed/top/all
The links
https://devrant.io/feed/top/...
https://devrant.io/feed/top/...
https://devrant.io/feed/top/...
https://devrant.io/feed/top/...
don't work ("page not found")4 -
These goddamn fuckers who every week spam people because their CI or code is broken. Apparently it's more important than other projects. Douchenuggets send an email and CCs the whole department and all the bosses and basically says "It's all broken, the whole company needs to work on this asap, it's possibly x other person's fault".
Then when you try to troubleshoot it because bosses want it fixed, the dumb pieces of fuck made a bug in their code that they could have easily fixed if they took the time to troubleshoot themselves instead of panicking like jackasses. Or better, have good tests and actual error handling.
I swear some day I am gonna get into a fistfight I started because of this bullshit. -
My JIRA fanatic manager: log whatever you do during the day, even the smallest things are important. and you have all the material needed for next day's standup meet.
me, on a particular tuesday:
had lunch
peed thrice
bitched about an unreasonable bug raised by the testing team
listened to Rihanna's song Diamonds
had four mugs of coffee
, among various other things.
next day.
manager: so, ssup?
me: eh, didn't do much yesterday. was one of those down days I guess.
Guess who was asked to write "didn't do much yesterday" on all the JIRA tickets assigned to him? -
A CASE AGAINST BLUE PRISM
Let's review one of the worst weeks I had with Blue Prism
Monday: Yay! Solved one of the problems we've been carrying around for a week before.
One of the robots suddenly became slow. Like, REAL slow. A process that would take 3 minutes per record now takes 45, and that broke apart all the following schedule.
There were no updates on the application server, the production machine, the robot, it just became slow. And not always slow; a process manually run from console room would work, a process in debug room would work, it's just the scheduled part that caused problems.
It turned out, BP didn't seem to like that particular combination of schedulation + process + machine. Moving the process to a different machine seemingly fixed that. IDK why.
Tuesday: One of our processes waits for a code to appear in the page, and when that happens, it memorizes this code. However, now it is always returning blank. Worked for months, now it breaks every single time.
After half a day of debugging a bug which DIDN'T HAPPEN IN DEBUG MODE YET AGAIN, at 11pm I decided to just place a nonsensical timeout in page before reading and call it a day.
WEDNESDAY: a scheduled process didn't start. "No sessions created". Thanks Blue Prism, very cool.
THURSTAY: This time, schedulation did start, but the process is "waiting". As in: it's 9:30 am, the process has been stuck in the same step since 6:00 am. Turns out, it blocked during a navigate stage; you need to send a string to clipboard using the standard BP action for that, then paste and click "enter", but for some reason the standard BP object sent "ORRCO" instead of "ORRICO" to clipboard, which obviously returned no results and then... the process just didn't feel like doing things anymore. No errors, no logs, nothing: just sitting on its ass. Because fuck you that's why.
Friday: another process uses a very moderate amount of scripts to work. Nothing really fancy, just a couple of lines of code to place in page some IDs and selector to help BP do its thing, otherwise selecting these elements would be a nightmare.
But
Failed while invoking javascript method:Exception from HRESULT: 0x80020101-> at mshtml.HTMLWindow2Class.IHTMLWindow2_execScript(String code, String language)
The same script -it's not dynamically generated-worked yesterday, the day before and the day after. But sometimes it will not. Why? The answer, my friend, is blowin'' in the wind -
After three months of development, my first contribution to the client is going live on their servers in less than 12 hours. And let me say, I shall never again be doing that much programming in one go, because the last week and a half has been a nightmare... Where to begin...
So last Monday, my code passed to our testing servers, for QA to review and give its seal of approval. But the server was acting up and wouldn't let us do much, giving us tons of timeouts and other errors, so we reported it to the sysadmin and had to put off the testing.
Now that's all fine and dandy, but last Wednesday we had to prepare the release for 4 days of regression testing on our staging servers, which meant that by Wednesday night the code had to be greenlight by QA. Tuesday the sysadmin was unable to check the problem on our testing servers, so we had to wait to Wednesday.
Wednesday comes along, I'm patching a couple things I saw, and around lunch time we deploy to the testing servers. I launch our fancy new Postman tests which pass in local, and I get a bunch of errors. Partially my codes fault, partially the testing env manipulating server responses and systems failing.
Fifteen minutes before I leave work on the day we have to leave everything ready to pass to staging, I find another bug, which is not really something I can ignore. My typing skills go to work as I'm hammering line after line of code out, trying to get it finished so we can deploy and test when I get home. Done just in time to catch the bus home...
So I get home. Run the tests. Still a couple failures due to the bug I tried to resolve. We ask for an extension till the following morning, thus delaying our deployment to staging. Eight hours later, at 1AM, after working a full 8 hours before, I push my code and leave it ready for deployment the following morning. Finally, everything works and we can get our code up to staging. Tests had to be modified to accommodate the shitty testing environment, but I'm happy that we're finally done there.
Staging server shits itself for half a day, so we end up doing regression tests a full day late, without a change in date for our upload to production (yay...).
We get to staging, I run my tests, all green, all working, so happy. I keep on working on other stuff, and the day that we were slated to upload to production, my coworkers find that throughout the development (which included a huge migration), code was removed which should not have. Team panics. Everyone is reviewing my commits (over a hundred commits) trying to see what we're missing that is required (especially legal requirements). Upload to production is delayed one day because of this. Ended up being one class missing, and a couple lines of code, which is my bad (but seriously, not bad considering I'm a Junior who was handed this project as his first task at his first job).
I swear to God, from here on out, one feature per branch and merge request. Never again shall I let this happen. I don't even know why it was allowed to happen, it breaks our branch policies. But ohel... I will now personally oppose crap like this too...
Now if you'll excuse me... I'm going to be highly unproductive and rest, because I might start balding otherwise after these weeks... -
!rant
The joys of returning from my annual leave..
My contributions after just being back from a 7-day leave.. 27 in total.. PR's, issues, bug fixes, feature fixes, requested features,..
Feels good tho.. It was a productive day today and we made the weekly update! :D
( Yes, I pushed commits while on vacation :D )2 -
So to give you a feel for what evil, clusterfuck code it was in: this projects largest part was coded by a maniac, witty physicist confined in the factory for a month, intended as a 'provisional' solution of course it ran for years. The style was like C with a bit of classes.. and a big chunk of shared memory as a global mud of storage, communication and catastrophe. Optimistic or no locking of the memory between process barriers, arrays with self implemented boundary checks that would give you the zeroth element on failure and write an error log of which there were often dozens in the log. But if that sounds terrifying already, it is only baseline uneasyness which was largely surpassed by the shear mass of code, special units, undocumented madness. And I had like three month to write a simulator of the physical factory and sensors to feed that behemoth with the 'right' inputs. Still I don't know how I stood it through, but I resigned little time afterwards.
Well, lastly to the bug: there was some central map in that shared memory that hold like view of the central customer data. And somehow - maybe not that surprisingly giving the surrounding codebase - it sometimes got corrupted. Once in a month or two times a day. Tried to put in logging, more checks - but never really could pinpoint the problem... Till today I still get the haunting feeling of a luring memory corruption beneath my feet, if I get closer to the metal core of pure C.1 -
When you're having such a shitty day that you're investigating why something is (obviously) wrong and after ages you find a bug that you just don't even want to admit you made, but then you realise that, even though that's there and would fit the weird behaviour, you realise there's actually a safeguard that, while it doesn't correct for the issue properly, it at least prevents the whole thing from going apeshit...
Oh gods please show me why this is behaving so wrong even though the massive bug is kind of cancelled out.... -
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 -
Bundling all non coding stuff (slack, checking bug tracker, task management, meetings, checking phone, etc) to the "edges" of the day, start/lunch/end.
Have a single channel through which you are available for emergencies — ignore the rest.
And never bookmark social media, entertainment or news on your work machine browser. -
I’m one month into my first job as a C++ dev for a company with a MASSIVE code base and I still am struggling with having a consistent build environment, sometimes spending almost 3 hours a day troubleshooting because my environment is always inconsistent. I’ve barely gotten my hands into the code nor pushed anything because I’m stack tracing through thousands of compiled dlls through process of elimination to identify a bug in the software.
Is this normal? What am I doing wrong? I’m freaking out that I haven’t shown any productivity to this company.1 -
I had a pretty good year! I've gone from being a totally unknown passionate web dev to a respected full stack dev. This will be a bit lengthy rant...
Best:
- Got my first full time employment dev role at a company after being self-taught for 8+ years at the start of the year. Finally got someone to take the risk of hiring someone who's "untested" and only done small and odd jobs professionally. This kickstarted my career, super grateful for that!
- Started my own programming consulting company.
- Gained enough confidence to apply to other jobs, snatched a few consulting jobs, nailed the interviews even though I never practiced any leet code.
- Currently work as a 99% remote dev (only meet up in person during the initialization of some projects.) I never thought working remotely could actually work this well. I am able to stay productive and actually focus on the work instead of living up to the 9-5 standard. If I want to go for a walk to think I can do that, I can be as social and asocial as I want. I like to sleep in and work during the night with a cup of tea in the dark and it's not an issue! I really like the freedom and I feel like I've never been more productive.
- Ended up with very happy customers and now got a steady amount of jobs rolling in and contracts are being extended.
- I learned a lot, specialized in graph databases, no more db modelling hell. Loving it!
- Got a job where I can use my favorite tools and actually create something from scratch which includes a lot of different fields. I am really happy I can use all my skills and learn new things along the way, like data analysis, databricks, hadoop, data ingesting, centralised auth like promerium and centralised logging.
- I also learned how important softskills are, I've learned to understand my clients needs and how to both communicate both as a developer and an entrepeneur.
Worst:
- First job had a manager which just gave me the specifications solo project and didn't check in or meet me for 8 weeks with vague specifications. Turns out the manager was super biased on how to write code and wanted to micromanage every aspect while still being totally absent. They got mad that I had used AJAX for requests as that was a "waste of time".
- I learned the harsh reality of working as a contractor in the US from a foreign country. Worked on an "indefinite" contract, suddenly got a 2 day notification to sum up my work (not related to my performance) after being there for 7+ months.
- I really don't like the current industry standard when it comes to developing websites (I mostly work in node.js), I like working with static websites (with static website generators like what the Svelte.js driver) and use a REST API for dynamic content. When working on the backend there's a library for everything and I've wasted so many hours this year to fix bugs and create workarounds related to dependencies. You need to dive into a rabbit hole for every tool and do something which may work or break something later. I've had so many issues with CICD and deployment to the cloud. There's a library for everything but there's so many that it's impossible to learn about the edge cases of everything. Doesn't help that everything is abstracted away, which works 90% of the time but I use 15 times the time to debug things when a bug appears. I work against a black box which may or may not have an up to date documentation and it's so complex that it will require you to yell incantations from the F#$K
era and sacrifice a goat for it to work properly.
- Learned that a lot of companies call their complex services "microservices". Ah yes, the microservice with 20 endpoints which all do completely unrelated tasks? -
I was the project manager of project for some customer. Everything was fine until some day the customer discovered a Bug in the project.
So I opened the class there the Bug was located and i saw that my co-workers named variables like cheesecake and other
different cakeversions.
That time i learned never trust someone as a project manager. -
for 3 days I've been trying to fix 1 crucial bug for.. literally the whole day
i couldnt fix it
then it came to me: motherfucker you have a debugger. use it.
i just want to say thank you to whoever came to the idea of creating a debugger.3 -
So when you are fixing bugs you are like exorcist:
you: "tell me by some sign your name!"
bug: (demonic voice babbling)
you: "and the day and hour of your departure!"
you: "The hour of your departure!"
you: "The hour of your departure. CANNOTGETPROPERTYNAMEOFUNDEFINED!" -
me: yes..hurray I fixed 5 of 25 critical bugs. Its turning out to be a great day.....
...checks the bug list....
"There are 29 critical bugs in the list"1 -
Any file manager without range selection is basically crippled.
Desktop PC file managers had the ability to select many files at once since at least the 1990s, yet smartphone file managers typically still lack it as of 2022. This means if I want to select a range of files, I have to tap each file individually. That's OK for - like - 20 files, but not for 1100 files. I'd need more time to select those files than the transfer would take, and if I accidentally hit anything that closes the app, I can start all over again. <sarcasm>That is how I wish to spend my day.</sarcasm>
In the early 2010s, ES File Explorer brought a dragless range selection feature, where only the first and last item had to be highlighted and a button pressed. This means over 5000 items could be selected in 10 seconds: tap item A, drag the scroll bar, tap item B, tap range selection icon, then done! But then Google came and said "sorry, you can't have nice things" (not vocally but through actions), and forcibly disabled write access to the microSD card to third-party applications. The only way to evade this restriction was through rooting.
Then, Google "blessed" us with storage access framework and then iOS-like scoped storage "to protect us". https://xda-developers.com/android-... . Oh, thank you for your protection by taking freedoms away!
The pre-installed file manager of Android still lacks range selection THIRTY YEARS after desktop computers came pre-installed with this feature. Shame on you, Google. This isn't innovative.
If Google will implement range selection, I guess they will make it half-assed by implementing drag-to-select, which is hardly more useful than individual tap selection for thousands of files. Then they tell us "you wanted range selection, here you are! Now don't bug us.". Sorry, but users don't want half-assed drag-to-select, but real tap-A-B-selection and a draggable scroll bar.
Some mobile file managers even lack a draggable scroll bar, meaning if I want to go near the center of the list, I have to swipe up like a dog or cat licks water from a bowl.8 -
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. -
It is very hard to handle AIs, you need leading scientists/artists, not managers.
You can't charm your way around its behavioral problems, you can't effectively bully or pull rank on it, and can't threaten it into unemployment.
So, the entire repertoire of the typical (asshole) manager is toast.
The *only* way to handle AI is to lead by example, give unambiguous, comprehensive and very specific instructions, and be always available to guide it through complex, gray-area situations.
Thus, it is not much different than being an actual leader (to a greenhorn and anxious and overreaching junior), but also a programmer (of a raw and unforgiving language like C or COBOL).
Since your typical company mid-level asshole manager won't do those things for dear life, AI will only leverage their incompetence to heights never seen.
By ignoring feedback and misinterpreting instructions, AI will make mistakes (just like a person).
On the wake of those mistakes, AIs have a bias for falsifying evidences and hiding relevant information (just like a bad coworker), and yet are quite persuasive to the innatentive reader (just like your typical manager).
Thus, without a daft hand, AIs will only perform worse when doing the tasks that would otherwise be done by a human.
But that will take time (more than a couple quarters, at least - probably a bit longer than the average tenure of a CEO).
And in this time, the numbers look great - the over eager "aimployee" works tirelessly day and night, seven days a week, takes no breaks, holidays or vacations, asks for no benefits besides a paycheck, have fewer and fewer sick days (maintenance downtimes), always sucks up to its corporate masters and is always ready to take on even more responsibility for (relatively) little extra pay.
Thus the problem only scales up, compounded by the corporate ideal of screwing up workers for no monetary profit, and reluctance to course-correct after investing so much time and hype into this AI bubble.
Thereby, AI is evolving into the corporate super bug that shall erode the already crumbling, stuck-in-the-past "boss mentality" institutions into oblivion.
I'm making popcorn. -
That shitty moment when you are finally about to release your code, after about one month of developing and testing, and making sure everything is OK, imagining: "Oh we're finally releasing this feature, I have worked so hard on it, it's going to kick some ass!" but surprisingly things get fucked up on production server... I mean seriously? Stupid middleware I killed myself to get to work messed up. Where the hell have you been in staging, you stupid little bug? You happy now? My CTO giving me awkward looks and shit like: "I'm sorry but you have to come fix it, during weekend." The best way to fuck up my mood, today is the last day of week for god's sake!
I hate releasing like this. seriously SAG in this release!1 -
Okay new Rant
INSERT TRIGGER WARNING HERE
OSX still sucks I have been using the bloody darn thing for last 8 months still I found things that are obnoxiously trivial missing.
Latest incident I was trying to plug in my android phone(soft bricked) in recovery mode and I had to push a file with ADB (i save this mutherfuker for another day). So back to the original topic now I plug it in and but turns out it doesn't recognize my device now as a preliminary check I decide to check my USB cable and my DONGLE both seem to be working fine now I try rebooting back into recovery. Now after scrapping the internet for a few hours I find that this problem is caused because sometimes due to a recurrent bug in OSX the operating system sometimes fails to recognize the difference in between directories "Adam"(just an example) and "adam" which in turn can interfere with some of the flags used while checking if a device might be connected.
I mean this is fucked why the fuck can you not simply use your device as an external storage that would have made the process easier by a fucking lot.
I think the people at Apple are going the destroy a UNIX powerhouse just to make their OS more CUPCAKE friendly.
And all of this is in addition to the problems with AFS.
I just wish I had not bought mac for development5 -
I could use some advice from some tenured developers... (or anyone with some thoughts)
Long story short, I went to school for business (Trust me... business people bug me too now), but in the last six months of college I didn’t like what I was doing (finance/marketing) so I dove into data analytics.
After graduating I was lucky enough to get a job at a great company doing a little data architecture work, writing lots of SQL stored procedures, managing client databases, cubes, etc... I really enjoy my work, but I recently discovered... Python...
After being introduced to Python from people at work as well as my Roomate, I’ve been trying to dig in as much as possible. I try to read/code at least an hour before work everyday and some when I get home. I love it.
So here’s where I need advice...
What do I need to do/learn to get a job writing Python all day? (Or a majority of my day)
What particular skills may I be missing that I should learn?
What do I need to do to make this happen?! (I love SQL, but damn python is amazing)1 -
Over the last few weeks, I've containerised the last of our "legacy" stacks, put together a working proof of concept in a mixture of DynamoDB and K8s (i.e. no servers to maintain directly), passing all our integration tests for said stack, and performed a full cost analysis with current & predicted traffic to demonstrate long term server costs can be less than half of what they are now on standard pricing (even less with reserved pricing). Documented all the above, pulled in the relevant higher ups to discuss further resources moving forward, etc. That as well as dealing with the normal day to day crud of batting the support department out the way (no, the reason Bob's API call isn't working is because he's using his password as the API key, that's not a bug, etc. etc.) and telling the sales department that no, we can't bolt a feature on by tomorrow that lets users log in via facial recognition, and that'd be a stupid idea anyway. Oh, and tracking down / fixing a particularly nasty but weird occasional bug we were getting (race hazards, gotta love 'em.)
Pretty pleased with that work, but hey, that's just my normal job - I enjoy it, and I like to think I do good work.
In the same timeframe, the other senior dev & de-facto lead when I'm not around, has... "researched" a single other authentication API we were considering using, and come to the conclusion that he doesn't want to use it, as it's a bit tricky. Meanwhile passed all the support stuff and dev stuff onto others, as he's been very busy with the above.
His full research amounts to a paragraph which, in summary, says "I'm not sure about this OAuth thing they mention."
Ok, fine, he works slowly, but whatever, not my problem. Recently however, I learn that he's paid *more than I am*. I mean... I'm not paid poorly, if anything rather above market rate for the area, so it's not like I could easily find more money elsewhere - but damn, that's galling all the same.5 -
You know, I don't mind getting dragged if I deserve it. But it would be nice to have ALL the information I need to make an estimate BEFORE you hang me out to dry.
First I was told that work on this issue could be kicked down the road since we were getting big contracts. The next day the issue was in the sprint.
I tell you I won't be able to get it done with the business critical stuff you said absolutely had to be done that sprint (turns out we had 3 months of leeway even before COVID). You say alright cool. We push it to next sprint. The next day you say we have been pushing that issue too much and we absolutely have to get it done this sprint. At least have it so QA can look at it by Tuesday.
I give a preliminary look to QA cuz I found a bug, but they can test other shit about this fucking issue, but then get shut down fucking again because it isn't code complete.
STOP. MOVING. FUCKING. GOAL POSTS. AND. GASLIGHTING. ME.
And as a bonus, I disagree with the necessity of this work in general. I think it's fucking stupid, unnecessary, and zero value added. It's a management jerkoff issue that is going to piss off all of our users.1 -
Found a bug today that made me groan in frustration.
It appears that the official elasticsearch debian package checks if the system's init daemon is systemd by... Checking if systemctl binary is available.
Issue is... Systems might contain that binary while using a different init, as the binary is part of the "systemd" package.
To actually switch to systemd however, the package systemd-sysv has to be installed, which creates a link from /bin/init to systemd's main executable.
What happens when your system doesnt use systemd then? The postinstall/preremove scripts fail as systemctl fails to talk to the system bus, and thus, the installation is marked as failed!
Oversights like this are exactly the reason behind my systemd dislike. We never wanted the systemd package, but another key package suddenly added it as a dependency one day...
Now to see if this is reported as a bug already, and if not, to report it myself...
(also, who checks for init by looking for the init's management utility?! Its like I checked if sysvinit is installed by checking if update-rc.d is installed!
And not like figuring out the system's init daemon is hard anyway! Just check /bin/init, or, better yet, check for process with pid 0!)1 -
After inputting all of the defect info into the bug tracking tool, QA writes a quick summary of their findings and goes home.
Love explaining to mgmt why developers could not fix bugs because they had no access to the bug tracking software.
1 day.... X number of bugs... 0 progress -
That feeling when you upgraded an internally used library from TypeScript 1.8 to 2.5 getting rid of the typings dependency and fixed its bug highlighted by the upgrade and all tests are green -- that feeling would not be rantworthy.
Realizing on trying to publish the new version that the master branch is not the actual master branch but a branch called 0.3 is. Of course I cannot merge my changes back there.
I don't mind a different main branch name. Yet don't call it a version, that's what tags are for. And for all that's holy, please set the proper main branch in your bitbucket / GitHub / gitlab so that I can find out easily.
Now I've wasted half a day and if you're looking for me: I'm gone searching for the motivation of doing the same shit again for the "main" branch. -
Spent most of the day debugging a timezone related bug in a cron job.
Reminded me of this video.. Relateable.
https://youtube.com/watch/... -
I have never felt better after my break-up, I think today is the day I can say I have moved on and the only thing that saved me was programming. Working on a big project and dedicating most of the time working hard. Every time I solved a bug or added a feature I felt better, felt proud of myself. My self-esteem has improved drastically. And continuously winning in 3 big hackathon events acted as a cherry on top. Now when I look back at the old version of me I find how funny it was, all that drama and mood swings. If I could go back in time I would tell myself just one thing - "Do programming like anything and become so good at it that you don't get time to give fucks to anyone else in life".
Moral of the story - "Love programming you will learn how to love yourself "2 -
Day 6 of my hiking holiday with the kids and suffering real coding cold turkey. First break in ages.
(Admittedly I did pull an all nighter chasing a bug in a dependency after 3 days)1 -
Hello, my first time here. I got to know this website/app from my PM because I need to vent it somewhere other than him according to my PM.
So, here goes my first rant. The date is today (Monday). The rant subject is our new tester. Some context on the guy. He started in our office 8 weeks ago and his title is senior tester with some years in testing. Me and my team with the exception of our PM are new hires and for me, this is my first job after graduation.
After a grueling month of pushing for new modules and bug fixes from our monthly UAT from the client (yes, this will be a future rant one day), about 2/3 of the team is on vacation paired with a long weekend. So, a very few ppl in the team including me and my PM came for today.
I usually came quite early, around 8 am as I commute with public transportation. As soon as I have my breakfast and just getting ready to open my dev laptop, he came to me with a bug. This is like under an hour I came to office. I'm ok with anything related to the project as today was deployment day to test server for our monthly UAT. So, I check the bug and it wasn't my module but the PIC is not there and I familiar with the code thus I fixing the module.
Then, not even 15 mins later, while fixing this module, he came to me with another bug. I'm still the only one who in office that can fix it thus have to do it too. Finished the both bugs, pushed and je retested it. Fortunately, my PM and another colleague came. But, for some reason, he only comes to me for the bug fixes.
The annoying thing for me is that he comes to me every time he found an obstacle, bug or glitch. At this rate, by hourly. Thus, this cycle of impromptu going around fixing-on-the-go for the project begins, for me. Then, my PM asks him abt our past issue log given by the client UAT. Another annoying part is he never checks the clients feedback to see if the result can be produced again. The time he checks it is when ppl ask abt it and test it 1 by 1. Then he came to me again with why x person marked it as done. Like hell I know why they marked it done, you the one who need to check with them. Thus, I called/messaged the PIC for x modules abt the issue and then they explain it. I have to explain it again to him abt it and then he makes the summary report for the feedback. This goes until lunch.
I thought the bug fixes is over and I can deploy it after lunch. I thought wrong and I kinda regret coming back early from lunch which I thought I can rest for a while with the debacle over morning. Nope, straight he comes to me after I sit down for 10 mins and until almost work hour is done, he came to me with small bugs and issues like previously, hourly. By then I think I crushed like ~10 bugs/issues and I'm knackered. I complained to the PM many times and the PM also said to him many times but he still does it again and again. Even the PM also ranted to me abt his behavior. The attitude of not compiling an issue log for the day and not testing the system to verify what the client feedbacks are valid or not is grinding my gears more and more. Not hating the guy even though his personality is quite unique but this is totally grinding ppl's gears atm. As of now, it's midnight and I finally deployed the system to the testing server. This totally drains my mental health and it's just Monday. May god have mercy on me.
Owh, the other colleague that come today? He was doing pretty much the same thing but he was resolving a major issue which is why the tester came to me.2 -
Life of a web developer: Find a bug at the end of the app, fix a bug at the end of the app, time to test the bug? Sorry service is down for the rest of the day on the page right before the bug.
-
Debugging is fine, totally part of the job!
Constantly fixing sh1t and new reports of another pile of sh1t coming every day like somebody is throwing them with shovels at us just to open the codebase that is written by the folks who aren't here anymore with some list of obscure libraries that is last maintained about 5 y ago is not ok.
It is not buggy codebase it is actually coddy bugbase!
I tried to be vocal several times to change technology to more suitable one, to make some improvements and to remove code smells(there is a ton of it, smells like organic garbage dumpster with rotten eggs) but "everything works" and there is no real "value for the customers" in that(fixing, refactoring etc.)!!!
Yea it works with sh1t ton of bugs reported every week. Nobody gives a shit, just contempt with their mediocre lives solving bug at the time while i feel like I'm wasting my time and talent on wrong people and fixing other's shit.
That is what happens when prototype becomes product and ships to production because numbers, money and sh1t!
this is why we who care about our career can't have nice things! I am not god damn pest control, I am f*ckin developer.1 -
The platform team who provides all other teams with common framework emails everybody we need to upgrade the framework to new version. Let’s say version 1.a.0. They say it brings crucial security features and all pipelines using old versions would be blocked. My colleague created a story to upgrade all of our 10 microservices. When I got to it in a couple of days for some fucking reason they already rolled out 1.a.1 and didn’t inform anybody, the pipelines just logged warning u need to use 1.a.1. Alright, I did the upgrade to 1.a.1 and merged ducking everything in 10 fucking microservices. In a couple of days at morning they roll our 1.a.2 and require everybody to upgrade ducking degenerates as they found a high severity bug. I wanted to start again but was lazy and did nothing all day to learn that at 6pm the fuckers roll out 1.a.3!!! And again require everyone to upgrade!1!1!1eleven
Ten fuxkibg microservices. Goddamit write some unit tests, do friends&family, do fucking tests on small group of your inner clients before rolling out this shit that everybody must to use.
Spat at the display -
This weeks a joke right 😂, the recent day 0 Microsoft bug that allows anyone to get hacked, and allow someone to do whatever the hell they want.(as you can pretend to be any program on the computer)
Or the super user hack on Linux recently patched... Day 0....
The fact 80% of devs implement oauth incorrectly... So their user accounts are hackable...
Need I go on?1 -
Don't you just love it when you waste half of your day chasing a bug and a turns out to be a typo... gotta love the typos!
-
A better half of the day wasted.
Why?
Because fabric8 k8s client probably has a bug, where it fails to deliver the last part of the exec() output. Or the whole output, if it's short enough.
brilliant... Aaaaaand we're going back to the official k8s client with ~10 parameters in their methods.
Fucking awesome. -
I'll have to make some tough choices over the next 6 months. With my tech career beginning and my college education ramping up, time is of the essence, and the skills I develop now will be at the forefront of my future. So what does this have to do with Microsoft?
Well, the story begins in the Spring of 2016. Social Forums was about to turn a year old, Trump's campaign was ramping up, and I had just found my love for technology. With all my friends having phones, I had to get a phone and get working on development. The year before, Windows 10 was launched, and I was psyched. I found Microsoft's products to be underrated with potential. That day, I purchased a Lumia 640, upgraded it to Windows 10, and immediately began working. After another year-and-a-half gone by, I went from loving Microsoft, to defending Microsoft, to tolerating Microsoft. I could go on and on about the lousy structure, the privacy issues, the forced upgrades, the redundant developer platform, and other such issues that is leading me away from them. But if there is one thing they have proven over the years, is that the they are completely out of touch with its developers and its customers. They spent years ramping up their phones. They failed. They spend years ramping up their phones. They failed. They spend years ramping up their semi-annual OS updates. They failed. So why did they fail? It's not that they made the wrong prediction out of chance. They legitimately don't care about feedback. It's their way or the highway. This sounds vaguely familiar. They have been spending a decade ignoring feedback from the community because they want to become just like Apple. Right now, Apple LIVES off of brand loyalty and its stable, useful ecosystem. This cannot work for Microsoft as they don't have a lot of brand loyalty. But most of all, they don't have a working ecosystem. They have Windows Insiders, which provides them with hundreds of feedback messages per day. These include suggestions, bug reports, and constructive criticism. The feedback is public. You can have several pages of the same complaint, and they still won't do anything about it. They say they have a good relationship with their community, and that this Beta program helps Windows become better for all. But in the end, we are nothing more than a glorified unpaid labor force. They fired hundreds of professional debuggers just before the Insider Program took off. We are only here to provide bug reports for free. Now that their phones, AR headsets, browser, online services, and VR headsets are failing for all these reasons, I see little reason to develop for Windows anymore. I don't just mean their UWP and App Store platforms, I mean Windows as a whole. I'm definitely not a Mac guy either. I never see myself going to Mac either, as they are really no different in terms of how they treat their Developers and PC users. If things continue down this route, I will leave the platform all together. I've always wanted to be a Systems Programmer, so I don't really need an established paid platform to be successful. Even now, I'm not certain about leaving Windows altogether but as a developer, I need to find my place. Time is of the essence in my life, and I need to find out my place in the software world. Now I think it isn't on the Windows platform like I had dreamed it would be. But where do I go?10 -
i developed a code some days back,
QA was completed successfully and no bugs were raised.
i was wondering how in the name of god there is no bug at all as we have to test it for IE🤔
now today on go live day they found a bug specific to IE for text rendering direction.😛 in all other browser its working fir. -
Weirdest dream i had about code, i was just coding all my social interactions; i'd have some kind of overlay over my vision and i'd have to type in my every move and sentence while going on about my day in a very gray and sluggish world as if i was just a programmer stuck inside my body, working with myself the way i work with a server.
Another time i actually found a bugfix in my sleep. I had wasted 8 hours on a dumb bug that day without managing to find a solution and when i woke up, all the code was in my head and it worked on the first try! -
My new boss has such a sensitive ego. The latest is he asked me not to make big changes to 'his' code so whilst attempting to fix a bug in 'his' code I realised a big change was needed. I tell him at standup that he might want to take a look first and he agrees. A few days later he emails me to ask why I haven't finished work on the bug. When I reply he ccs other members of management to ensure he is deflecting any blame from himself (I dont even play the blame game to begin with).
The next day I email him that some tests are broken (he broke them but I just emailed him to bring his attention to it since he doesn't want me touching his code. And because it means he isn't testing properly - not that I would say that).
His reply - "are you going to fix them?"
Me - "ok"
The next morning be brings me into a meeting to ensure I agreed he wasn't to blame and that it was my fault and that he didn't understand my email response as it just said "ok".
I really can't stand such petty bs...2 -
Start my code day, no bugs in sight,
Each line I write, like code's delight.
Second function, errors suppressed,
Silent fixes, my skills put to the test.
Third loop, logic numb, yet breaking,
A contradiction in every line I'm making.
Fourth bug, clinging like a leech,
In the grip of coding's caffeine breach.
Fifth syntax, thoughtless actions cascade,
A program's dance, in lines arrayed.
Sixth compile, colleagues say, 'Go home,'
But where's home in this code dome?
'They say home is where the heart is,
But my heart's in a million logic twists,
Which line shall I follow?
The optimized or the broken,
I cannot tell them apart.'
In the last bit of code, I saved my hope,
When debugging was still an option,
So go ahead and save yourself from glitches,
For you are worthy of a million exceptions. -
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 -
-Recently started a new job so I’m new to the infrastructure-
Spent the vast majority of the day trying to SSH into one of my company servers to sort some random bug out on the website & the connection kept being rejected despite the day before it working when passing the .pem key into the SSH along with the ip & my username, nothing new there.
Anyway, everyone’s mad busy so I don’t wanna bother anyone to ask why, so I check confluence, no documentation for SSHING into our scheduler or the code the server I need to access. Never-mind.
Spend another couple hours trying debug it on my own, no luck. Never-mind.
Finally seize my opportunity and ask for help; ‘Oh the server IP changes daily so you need to run a task through our scheduler that you need to SSH into to return the list of IPS and that dynamically changes so that’s how you get the IP’
Oh ok. Why is there no documentation for that again? I mean. Thats generally some pretty important information you’d pass onto your starters.
At least I can say I won’t be making that same mistake again.5 -
Piggy backing off an earlier rant about Linux. Let's talk about time wasted fixing Linux.
One time for me was I couldn't get Ubuntu to boot. Whenever it booted through UEFI it would go straight to the EFI bash like command line boot screen, not allowing me to access Ubuntu.
I tried for almost a full day to fix it, Googling solutions, resetting my BIOS and fixing Boot using a Ubuntu Live USB.
In the end I found it was an issue with setting my filesystem as XFS. I reinstalled using EXT4 and it booted right up. Must've been some sort of bug. Strange because XFS boot worked with Fedora. A day wasted trying to set up Ubuntu.6 -
Arg! Learn to debug for your bleeding self you are supposed to be a bunch of senior developers it's the same bloody issues all the freaking time. So I create a step by step guide what buttons to click what text to enter because I'm so f***ing through with the same issues you bug me with day in day out! A 12 year old with no computing knowledge can follow the guides yet you don't even bother reading it half the time or choose to completely miss steps out and bug me with your issues.
Damn it why do I bother you bunch of ass hats get paid more than me too I know it! -
Feature not a bug...
My work laptop has started rebooting almost every night.
It's not clear why, but I sort of think of it as a feature now.
I have an ultra-wide monitor, plus another wide next to that one, and a bunch of virtual desktops.
I often think "ok everything is where it is that's good" but coming in reality with a bazillion things open across all the desktops and screens sometimes when I come back the next day ... it's actually just a lot of mess / overhead to pick up where I was.
Sometimes I think we introduce a lot of complexity to solve a problem and ... actually it's just more complexity if you're not already 8 layers deep.5 -
So we work in sprints of two weeks, we are two people in our team, in the beginning, we get assigned work and we continue to work on it the rest of the week, but sometimes my manager adds last minute tasks or makes it so whatever i was currently working on is not important anymore after i have already cut a long shot through it
But anyways i understand thats how work is, but what seems to happen now as well is that i finish all the work assigned to me early so i can work on any bug fixes that may arise from such features or old bugs, so then for example he gives task 1,2,3,4 to me and task 5,6,7,8 to my colleague which is ahead of me in rank but not my leader per se, she has more experience as she worked in another company for 7 months before and i never worked before , but then i finish my work by the middle of second week and he ends up adding some of her tasks to me and forces me to finish them fast as he thinks they are no big deal (hes also a non technical manager) so i am always racing to finish whatever he throws at me last minute and ending up getting the blame if i dont finish those last minute tasks, also if i take vacation and come back instead of giving me tasks to do he just gives me bugs of recent features that was done by my colleague while im on vacation
And when i confronted him about it that at any point in time whenever i check how much work is left for me and my colleague, she has less work than me, he said “i will skip all this because you got this wrong” and then continued to just ask me to do more things on the weekend day
Ofc so i tried to make sure i dont finish my work before time so he doesnt do that
But instead he ends up blaming me and saying i should have finished2 -
Fellow Ansible developers. I'm talking to you.
Are you freaking high or simply your morning pills have some serious side effects?
How do you manage to introduce a number of regressions in every fucking major release? How on earth you feel comfortable in breaking API in a minor and even bug fix releases?
You need to get me right. I really like Ansible project but those things... I imaging you every other day as a bunch of hamsters trying to find an exit in a shitty labyrinth which you call the codebase.
If you will not stop to eat and smoke those things this would became a lot worse indeed.3 -
I hate css. When I was in support, for some reason my task was to redo our support page (which I am no designer and never claimed to be, but whatever). I have been in engineering for quite a long time now. We HAVE a designer. Yet, the support site was never redone (and it should be) and any little bug that comes in for it is my issue. This css is going to be the death of me. Is the day over yet?1
-
I was away sick for a week. Come back to a chat log with messages about how the other dev team is trying to figure out a solution to a bug that they only show three services listed in the system.
Me couple of weeks ago on my second day in the project figured it out relating to a task I was doing. It's not a bug, it's a feature. It's a constant defined in the constants-file.
And the best thing: my team mate quoted me and said "Lankku figured it out last week". And it was passed down back to the team who had actually developed the whole feature and couldn't figure out why it was working so now. xD -
Code base is full of /*bug fix - XXXX */ coments, sometimes it feels the software is a Bugenstein's Monster!!
Not sure if this kind of comments serve any real purpose...
Commented old code is a more familiar monster; but that's a tale for another day. -
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 -
One nightmarish project that was doomed from the beginning, had me as the sole developer. I could hardly sleep when we began testing on a separate test system, but with (nearly) all the config stored in shared memory and copied from the production system, I dreaded, half awake, that the production server data base connection was still configured in the test system and that it was shooting all it's test data repeatedly to prod.
Finally drove to company in middle of the night at 4 o'clock. Checked everything was OK, tried to sleep 3 hours before the start of the work day.
This system also had the most hideous memory corruption in some shared memory that was used across several processes and should have been thoroughly protected by a mutex, but somehow, sometimes this crucial map, that was used to speed up the access to all the customer data just contained garbage.
Still haunts me to that day. (Like xkcd's unresolved tension of a non-matching parenthesis - an unresolved bug. -
We are presenting the last 3 months worth of almost 24 hours a day type deving so let's hope a bug doesn't pop up in our production line lake last time...😐😐😐
-
Unity is the worst! Every single version of it has some kind of bug that prevents some piece of what I'm working on to be buggy. 5.3.4 seems the most stable, as far as the app working, but likes to crash on me several times a day on Mac OS. I'm really tired of this.
-
last day of bug fixing, 2 little bugs left, the last modify broke EVERYTHING (never touch an animator class on unity if u don't remember where and how many times u reused it)