AboutI do dumb things with code and on occasion write some pretty neat stuff.
Skillsc, c++, c#, java
Joined devRant on 5/12/2016
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
I need a compelling case for why we should not support IE11. Apparently 10% of our user base uses it and "it fucking sucks and breaks all the new shit you want me to do" is not an answer. And a possible HR violation.21
My most consistent enemy at work is this fucking system I have to work in, holy shit. Not only is there no default support for shit you would really think there should be, no real control over the interfaces with the UI, and the far too complicated method they use to magically make said interfaces, but we also have to use their build environment to build this shitty thing. So builds take anywhere from 4 to 12 minutes a pop and ridiculous style guide will stop the build, no questions asked, for dumb violations like spaces between if and (. And it doesn't catch these, sometimes, until 7 or 8 minutes in. I have wasted so much time on this. And seeing as we work in 2 week sprints that are really 7 to 10 day sprints based on whatever hair goes up my bosses ass and have to deliver feature complete in those two weeks, I can't really afford all this nonsense. I used to joke about having an alcohol problem, but I think I actually may be developing one at this point.
Question: is it common for a boss to make you stay late because your teammates are working on something big (that you're not involved in) and they're staying late? Because he touts that it's team unity, but I feel like it's false imprisonment.9
Anyone ever work with Hola Spark? First task at a new job is to integrate with it and any tips, tricks, advice, or lessons learned would be appreciated.
Been a really long time since I posted on here. Sucks when you get stuck in a lab that bans cellphones.
BUT I got a new job now. No classified stuff. I can actually talk about what I do specifically now!!! And after a week I can almost maybe do my job one day.7
So I'm finally doing the job I was hired to do 2 years ago, with the promise of working 1.5 years ago, and scheduled to work 1 year ago as the project slips about a 1.25 years.
The project is on it's 3.5th year of a 3 year plan and based on the architecture of the project, the project architect started a degree in software architecture 4 years ago. In Latin. When his first language was Japanese and his second was Indian English while this was a US company. And his entire degree was in Lisp, PHP, and html, this project is in C#, and his professional background is in Fortran.
This is a man who is no longer on the project, not allowed to contribute or talk to us about the project, and what little documentation he left us is in Swahili translated from Korean via Google translate from the second year Korean language major exchange student from Russia who got really into meth and Telenovelas.
It is every version of MV* without the M and with every definition of * including some he made up and some that have only been proven to exist via machine learning algorithm written in SQL statements.
This project represents an implementation of the presentation tier of an n-tier application, yet attempts to reimplement the other n-1 tiers in html5 and the dreams of children.
The new lead is a former engineer that couldn't begin coding until he figured out how to map all of his variables to his former cars and girlfriends inclusively and learned his management skills from the big book of micro managers and that one time everyone else in the office was sick but the intern. Who now has a girlfriend whom he works 200 feet from so he isn't 100% thinking with his largest head. At least from observation.
Yet, I still can't bring myself to go be with the whales/become an accountant.
Whenever anyone asks me why I dislike C++ I'm just going to point to this current app I'm working. Had a unit test with an extern method declaration that had 7 or 8 different parameters. No big. Problem is that the ACTUAL definition of the method had 1 less parameter than the extern declaration. It worked perfectly fine in x86. Ported to x64, compiled fine, hard crash at runtime. Debugger not a super lot of help. Took me a couple days to figure that one out. Also I am broke so I can't even drink the pain away. Neat.
I hate when they give new people that don't know the software the job to update requirements. We used to have 2 use cases that touched a functionality. Now we have three. The requirement was added for the third case. He held us up bitching that that the newly added requirement for Case 3 didn't include Case 1 and 2. Dude. That shit has been in the software for 4 years. Those requirements were written by requirements guys that are better than you. Don't waste my time with semantics. Only I'm allowed to waste my time on semantics.
I have been gone a while. Sorry. Workplace no longer allows phones on the lab and I work exclusively in the lab. Anyway here is a thing that pissed me off:
Systems Engineer (SE) 1 : 😐 So we have this file from the customer.
Me: 😑 Neat.
SE1: 😐 It passes on our system.
Me: 😑 *see prior*
Inner Me (IM): 🙄 is it taught in systems engineer school to talk one sentence at a time? It sounds exhausting.
SE1: but when we test it on your system, it fails. And we share the same algorithms.
Me: 😮 neat.
IM: 😮neat, 😥 wait what the fuck?
Me: 😎 I will totally look into that . . .
IM: 😨 . . . Thing that is absolutely not supposed to happen.
*Le me tracking down the thing and fixing it. Total work time 30 hours*
Me: 😃 So I found the problem and fixed it. All that needs to happen is for review board to approve the issue ticket.
SE1: 😀 cool. What was the problem?
Me: 😌 simple. See, if the user kicked off a rerun of the algorithm, we took your inputs, processed them, and put them in the algorithm. However, we erroneously subtracted 1 twice, where you only subtract 1 once.
SE1: 🙂 makes sense to me, since an erroneous minus 1 only effects 0.0001% of cases.
*le into review board*
Me: 😐 . . . so in conclusion this only happens in 0.0001% of cases. It has never affected a field test and if this user had followed the user training this would never have been revealed.
SE2: 🤨 So you're saying this has been in the software for how long?
Me: 😐 6 years. Literally the lifespan of this product.
SE2: 🤨 How do you know it's not fielded?
Me: 😐 It is fielded.
SE2: 🤨 how do you know that this problem hasn't been seen in the field?
Me: 😐 it hasn't been seen in 6 years?
IM: 😡 see literally all of the goddamn words I have said this entire fucking meeting!!!
SE2: 😐 I would like to see an analysis of this to see if it is getting sent to the final files.
Me: 🙄 it is if they rerun the algorithm from our product. It's a total rerun, output included. It's just never been a problem til this one super edge case that should have been thrown out anyway.
SE2: 🤨 I would still like to have SE3 run an analysis.
Me: 🙄 k.
IM: 😡 FUUUUUUUUUCK YOOOOOU
*SE3 run analysis*
SE3: 😐 getting the same results that Me is seeing.
Me: 😒 see? I do my due diligence.
SE2: 😐 Can you run that analysis on this file again that is somehow different, plus these 5 unrelated files?
SE3: 😎 sure. What's your program's account so I can bill it?
IM: 😍 did you ever knooooow that your my heeeerooooooo.
*SE3 runs analysis*
SE3: 😐 only the case that was broken is breaking.
SE2: 😐 Good.
IM: 🤬🤬🤬🤐 . . . 🤯WHY!?!?
Me: 😠 Why?
SE2: 😑 Because it confirms my thoughts. Me, I am inviting you to this algorithm meeting we have.
Me/IM: 😑/😡 what . . . the fuck?
*in algorithm meeting*
Me: 😑 *recaps all of the above* we subtract 1 one too many times from a number that spans from 10000 to -10000.
Software people/my boss/SE1/SE3: 🤔 makes sense.
SE2:🤨 I have slides that have an analysis of what Me just said. They will only take an hour to get through.
Me: 😑 that's cool but you need to give me your program's account number, because this has been fixed in our baseline for a week and at this point you're the only program that still cares. Actually I need the account to charge for the last couple times you interrupted me for some bullshit.
*we are let go.*
And this is how I spent 40+ useless hours against a program that is currently overrunning for no reason 🤣🤣🤣
Moral: never involve math guys in arithmetic situations. And if you ever feel like you're wasting your time, at least waste someone else's money.10
Our systems lead is trying to tell our software person how much adding unit tests would cost. It also sounds like he wants TDD to be added in after the fact. And he's bitching because the software guy won't move forward with it until we get it with the customer. He also wants all of them automated, but doesn't want to accept that that is going to cost a lot. Like a lot, a lot. This is a guy who doesn't know algorithms (had to explain dykstra to him), doesn't understand the tech stack we are using (I had to explain .net versions, the JIT compiler, and garbage collection to him), and seems not to understand hardware (I had to explain floating point math to him), yet he feels qualified to tell us how long it is going to take us to implement automated unit tests for major, complex features.
My colleague and I have 12 years of college and 10 years of experience between us. Can't figure out how to connect a fucking phone headset.2
So opinions: should a software engineer get certifications? I mean, to me they seem like pointless wastes of money, but my coworkers don't seem to think so. I design and write code, why do I need MCSD or whatever? Follow up, if you feel they are useful: which ones and why?4
Impediment to the agile process at my job: systems not understanding what review and retrospective is for. I mean I don't know what it's for, but it probably isn't for yelling about how testing is conducted and why it's hard. I would assume that's for the planning meeting. Not to mention apparently they still don't know the fucking schedule. Since they seem to think I'm done with a task, even though I don't have, like, the data I need to integrate with and it's on the schedule that I won't get the data til, like, the end of the month.
I hate when people don't capitalize ID in all caps. It is confusing when the write it as Id or id, because I don't know if they're talking about an identifier or the aspect of human nature that exists from birth that subconsciously drives you to want to fuck your mother.8
FINALLY FINISHED THE THING I WAS WORKING ON SINCE LAST MARCH!!! THIS HAS PISSED ME OFF SO MUCH!!! TEARS WERE SHED!!!FEELINGS HURT!!! BUT IT'S DONE!!! I AM NEVER TRANSLATING SOMETHING FROM C++ TO C# AGAIN!!!
Revision to the Peter/Dilbert Principle, the ProjektAquarius principle: a company will systematically shift the least competent employee on to the assignments the competent employees can't be bothered to do until they become an integral part of the team and drag you down with them. (E.g. eventually they completely fuck up your delivery process, although it's probably still cheaper and quicker than having them do anything else.)
ProjektAquarius principle: A Case Study
We have an engineer who is getting paid quite a bit more than me. Over time his responsibilities have gradually been reduced to documentation and running our almost entirely automated build. Well today the build failed. He pulls me over to tell me, and says he's confused because there is a file there he has never seen before in there and a file he always has seen that isn't there (basically a file got renamed. It was not non-obvious). Answer: change the file name.
Then he comes over and tells us that it's failing again because the script is not finding a file. So a coworker of mine and I go over. He explains the whole build process to us when we ask if there is any point in the script that would help us identify where the script is looking for the file and failing (there wasn't but that's besides the point).
Turns out, he had decided to put the assembly list in order. Normally no problem, but the list is in source destination pairs. So the fucking file was being put in a different directory than the one the script was looking for it in and failing. And that's the story about how my company just paid 3 engineers a quarter of a man hour each for something that would have been resolved in 30 seconds via file search/copying and pasting a file path. Related note: our process for building an install is now about 4 hours long with no change on process besides the BCAK.
My freelance horror story is that I don't work freelance, but rather for a corporation where I am a faceless entity known as asset.1
Alright, so. If you had themes and things you would like to see in a cyberpunk novel what would they be? I already have corporate surveillance gone haywire, a neutered yet corrupt government, an active police state, and cyborgs. Protagonist is an on the grid citizen who is an off the grid hacker.4
1. Learn MEAN
2. Learn LAM*
3. Learn to play guitar
4. Learn to play bass better
5. Finish my novel
6. Get paid more.1
I might have posted this before. But I am going to post it again. Because emojis.
Me: 😁 Software lead I have finished coding the thing.
SL: 😀 Cool, good job. That is going to really help out the analysts.
Software Manager: 😐 hey I noticed you have coded a new thing and pushed it to integration.
Me: 😁 Yes.
SM: 😐 Well how do you know when it's done?
Me: 😑 . . . When you run it and it does the thing?
SM: 😐 Did you write test steps?
Me: 😕 Yeah . . . they're in the issue ticket.
SM: 😐 Yeah but how do you know those are right?
Me: 😕 Because I wrote the thing and the test steps?
SM: 😐 did you put any steps in our acceptance test procedure?
Me: 😕 No.
SM: 😐 why not?
Me: 😧 Because the acceptance test procedure tests requirements. There is no requirement for this functionality.
SM: 😑 Then why did you do it?
Me: 🤔 Because it was an internal request from the analysis team. There is no customer impact here.
SM: 😑 I really think we should write a requirement.
SL: 🤔 But what requirement is he going to attach this to?
SM: 😑 We don't have to attach it to a requirement. We can just test it once and remove it.
Me: 😒 SM, you know we never remove anything from the acceptance test procedure.
SM: 🙂 We do sometimes.
SL: 🤔 When was that I have worked here for twenty years and we have never removed a test from that document.
SM: 😧 I really think there should be an acceptance test written.
SL: 😧 Looks like you're writing an acceptance test.
Me: 😒 Alright as long as y'all're payin'. Shit I was just tryin' to save y'all money.
*acceptance test written and sent to peer review*
Peer: 😐 The requirement tested section doesn't have any requirements spelled out.
Me: 😅 No.
Peer: 🤔 Why?
Me: 😓 Because there is no requirement associated with this test.
Peer: 🤔 Then why are we adding an acceptance test?
Me: 😡 WELL AIN'T THAT A GOOD GOD DAMN QUESTION!?7
I have never made a friend due to code. I have plenty of friends who code and shared CS classes within uni, but we met in other ways due to other interests. I don't think I am capable of being friends with the kind if people you would "meet through coding".
Nothing like writing summary comments on methods to make you feel smart. It's like:
ObviousWellNamedMethod is a method that does obvious well named thing
<param name="WellNamedObviousParameter">Represents the well named obvious thing used in the obvious well named method</param>
I hate coding standards sometimes.4
Why is it necessary that software be in a schedule meeting when software has 2 items on the schedule? This meeting is effectively useless for software. It is an unnecessary expenditure of money on a contract that is overrunning. It is right before we go on holiday break and they are training a new planner. And the lead is leaving in January so why is he still asking me questions about what I'm doing. Especially when I have told him what I am doing 4 times already. Fucking hell. Why is it that no one seems to trust me to do my job and be on top of things? And why is it that the people with shit memories are the ones that want to be involved in everything? And most importantly, why does everyone pretty universally hate meetings and regard them as useless yet insist we hold them?2
I am as sure as I am of anything that the software I am working in is sentient and pulling the long con on me to kill me over the course of my career via stress. Joke's on it though. With the amount of drinking I do to cope with the stress I will die of alcoholism way before I die of stress. Take that. Victory is mine.1
Who did I piss off in my life to have to deal with this bullshit? First day off of vacation. I am vacation hungover and just regular hungover. Left my Xanax at home. I just sat through a 45 minute meeting that I didn't have to be in for longer than three minutes. I have what my work place calls scrum in 7 minutes, another fucking meeting I don't have to be in cuz vacation. I wasn't even planning on coming in today except for the fact that my fucking boss came in, in the middle of his vacation, to schedule a meeting this afternoon and then go ghost when I try to either reschedule or at least ask what my fucking responsibility in this meeting is this whole thing is making me sick to my stomach because anger triggers my anxiety which triggers my stomach issues which triggers my phobia which triggers more anxiety which then triggers my anxiety. Gods fucking dammit. Why did I come back from vacation just to arrive in meeting hell? Nothing is okay.4
When I realized that programming is the greatest way to make one's living, that I will never love anything more than programming, and that every feature and quirk in a new language is like a new friend.
Scrum is terrible. Is there another agile technique that isn't as bad? Like maybe one that will let us do our "scrum" once a week for like an hour? My current project really doesn't lend itself to once a day scrums. Literally my scrum input is "I worked on what I have been working on, and I'm gonna work on it more today. Impediments are literally the same as they always are because my life is no longer my own."5