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 - "starting over"
-
Yesterday: Senior dev messages out a screenshot of someone using an extension method I wrote (he didn’t know I wrote it)..
SeniorDev: “OMG…that has to be the stupidest thing I ever saw.”
Me: “Stupid? Why?”
SeniorDev: “Why are they having to check the value from the database to see if it’s DBNull and if it is, return null. The database value is already null. So stupid.”
Me: “DBNull is not null, it has a value. When you call the .ToString, it returns an empty string.”
SeniorDev: ”No it doesn’t, it returns null.”
<oh no he didn’t….the smack down begins>
Me: “Really? Are you sure?”
SeniorDev: “Yes! And if the developer bothered to write any unit tests, he would have known.”
Me: “Unit tests? Why do you assume there aren’t any unit tests? Did you look?”
<at this moment, couple other devs take off their head phones and turn around>
SeniorDev:”Well…uh…I just assumed there aren’t because this is an obvious use case. If there was a test, it would have failed.”
Me: “Well, let’s take a look..”
<open up the test project…navigate to the specific use case>
Me: “Yep, there it is. DBNull.Value.ToString does not return a Null value.”
SeniorDev: “Huh? Must be a new feature of C#. Anyway, if the developers wrote their code correctly, they wouldn’t have to use those extension methods. It’s a mess.”
<trying really hard not drop the F-Bomb or two>
Me: “Couple of years ago the DBAs changed the data access standard so any nullable values would always default to null. So no empty strings, zeros, negative values to indicate a non-value. Downside was now the developers couldn’t assume the value returned the expected data type. What they ended up writing was a lot of code to check the value if it was DBNull. Lots of variations of ‘if …’ , ternary operators, some creative lamda expressions, which led to unexpected behavior in the user interface. Developers blamed the DBAs, DBAs blamed the developers. Remember, Tom and DBA-Sam almost got into a fist fight over it.”
SeniorDev: “Oh…yea…but that’s a management problem, not a programming problem.”
Me: “Probably, but since the developers starting using the extension methods, bug tickets related to mis-matched data has nearly disappeared. When was the last time you saw DBA-Sam complain about the developers?”
SeniorDev: “I guess not for a while, but it’s still no excuse.”
Me: “Excuse? Excuse for what?”
<couple of awkward seconds of silence>
SeniorDev: “Hey, did you guys see the video of the guy punching the kangaroo? It’s hilarious…here, check this out.. ”
Pin shoulders the mat…1 2 3….I win.6 -
Good Morning!, its time for practiseSafeHex's most incompetent co-worker!
Todays contestant is a very special one.
*sitcom audience: WHY?*
Glad you asked, you see if you were to look at his linkedin profile, you would see a job title unlike any you've seen before.
*sitcom audience oooooooohhhhhh*
were not talking software developer, engineer, tech lead, designer, CTO, CEO or anything like that, No No our new entrant "G" surpasses all of those with the title ..... "Software extraordinaire".
*sitcom audience laughs hysterically*
I KNOW!, wtf does that even mean! as a previous dev-ranter pointed out does this mean he IS quality code? I'd say he's more like a trash can ... where his code belongs
*ba dum tsssss*
Ok ok, lets get on with the show, heres some reasons why "G" is on the show:
One of G's tasks was to build an analytics gathering library for iOS, similar to google analytics where you track pages and events (we couldn't use google's). G was SO good at this job he implemented 2 features we didn't even ask for:
- If the library was unable to load its config file (for any reason) it would throw an uncatchable system integrity error, crashing the app.
- If anything was passed into any of the functions that wasn't expected (null, empty array etc.) it would crash the app as it was "more efficient" to not do any sanity checks inside the library.
This caused a lot of issues as some of the data needed to come from the clients server. The day we launched the app, within the first 3 hours we had over 40k crash logs and a VERY angry client.
Now, what makes this story important is not the bugs themselves, come on how many times have we all done something stupid? No the issue here was G defended all of this as the right thing to do!
.. and no he wasn't stoned or drunk!
G claimed if he couldn't get the right settings / params he wouldn't be able to track the event and then our CEO wouldn't have our usage data. To which I replied:
"So your solution was to not give the client an app instead? ... which also doesn't give the CEO his data".
He got very angry and asked me "what would you do then?". I offered a solution something like why not have a default tag for "error" or "unknown" where if theres an issue, we send up whatever we have, plus the file name and store it somewhere else. I was told I was being ridiculous as it wasn't built to track anything like that and that would never work ... his solution? ... pull the library out of the app and forget it.
... once again giving everyone no data.
G later moved onto another cross-platform style project. Backend team were particularly unhappy as they got no spec of what needed to be done. All they knew was it was a single endpoint dealing with very complex model. There was no Java classes, super classes, abstract classes or even interfaces, just this huge chunk of mocked data. So myself and the lead sat down with him, and asked where the interfaces for the backend where, or designs / architecture for them etc.
His response, to this day frightens me ... not makes me angry, not bewilders me ... scares the living shit out of me that people like this exist in the world and have successful careers.
G: "hhhmmm, I know how to build an interface, but i've never understood them ... Like lets say I have an interface, what now? how does that help me in any way? I can't physically use it, does it not just use up time building it for no reason?"
us: "... ... how are the backend team suppose to understand the model, its types, integrate it into the other systems?"
G: "Can I not just tell them and they can write it down?"
**
I'll just pause here for a moment, as you'll likely need to read that again out of sheer disbelief
**
I've never seen someone die inside the way the lead did. He started a syllable and his face just dropped, eyes glazed over and he instantly lost all the will to live. He replied:
" wel ............... it doesn't matter ... its not important ... I have to go, good luck with the project"
*killed the screen share and left the room*
now I know you are all dying in suspense to know what happened to that project, I can drop the shocking bombshell that it was in fact cancelled. Thankfully only ~350 man hours were spent on it
... yep, not a typo.
G's crowning achievement however will go down in history. VERY long story short, backend got deployed to the server and EVERYTHING broke. Lead investigated, found mistakes and config issues on every second line, load balancer wasn't even starting up. When asked had this been tested before it was deployed:
G: "Yeah I tested it on my machine, it worked fine"
lead: "... and on the server?"
G: "no, my machine will do the same thing"
lead: "do you have a load balancer and multiple VM's?"
G: "no, but Java is Java"
... and with that its time to end todays episode. Will G be our most incompetent? ... maybe.
Tune in later for more practiceSafeHex's most incompetent co-worker!!!31 -
Boss: "Could you join the new DevOps team for a week or two, for some coaching?"
Me: "I'd rather watch you masturbate furiously in a corner of the office while you cry over your ex boyfriend"
Boss: "Yeah... that's why I ask you. You are the only one brave enough to watch"
Me: *Sigh* "But I don't know shit about what DevOps does, I'm a DBA. I've told you the difference a million times. Can't we just douse it in gasoline and set it on fire?"
Boss: "What?"
Me: "Not the team, the servers..."
Boss, imitating Gimli: "And my ex!"
Me: "I get why he left you"
Boss: "It's funny, he was actually better with computers than me, maybe even better than you. He hated me for starting this company, told me I was just chasing money instead of ideals. He just isn't grown up enough to see that there is more to the world than computer games, brewing beer, maker festivals and gay bars, that you need to take responsibility... Maybe it just never works out between managers and geeks..."
Me: "Indeed. The difference in competence is too large"
Boss: "Ugh. You are like straight version of him... but will you at least take a look?"
Me: "Fine, unzip your pants..."
Boss: "No, not that... you need to teach DevOps this docking thing, with the parallel stuff, and the horizontal growth"
Me: "Damn I really hope we're talking about servers now... Do you mean Docker?"
Boss: "That's it. They want to learn how to dock on the Windows servers. They reserved two 4xlarge on AWS. Is that enough for docking?"
Me: ...
Me: ...
Me: "You know what. I'm going back to hug my DB designs, and wash my brain with some queries. Then I'll return here to burn everything to the ground. There is no hope for you left"
Boss: "That's what he said"
Me: "You're using that meme wrong"
Boss: "OK. So what if you just stay on DB management, and I'll just give you the budget to recruit a new DevOps lead and pay for training?"
Me: "That would work"
Boss: "Why are you grinning?"
Me: "Because I have your ex's phone number"18 -
Long rant ahead, but it's worth it.
I used to work with a professor (let's call him Dr. X) and developed a backend + acted as sysadmin for our team's research project. Two semesters ago, they wanted to revamp the front end + do some data visualization, so a girl (let's call her W) joined the team and did all that. We wanted to merge the two sites and host on azure, but due to issues and impeding conferences that require our data to be online, we kept postponing. I graduate this semester and haven't worked with the team for a while, so they have a new guy in charge of the azure server (let's call him H), and yesterday my professor sends me (let's call me M), H and W an email telling us to coordinate to have the merge up on azure in 2-3 days, max. The following convo was what I had with H:
M: Hi, if you just give me access to azure I'll be able to set everything up myself, also I'll need a db set up, and just send me the connection string.
H: Hi, we won't have dbs because that is extra costs involved since we don't have dynamic content. Also I can't give you access, instead push everything on git and set up the site on a test azure server and I will take it from there.
M: There is proprietary data on the site...
H: Oh really? I don't know what's on it.
<and yet he knows we have no dynamic data>
M: Fine, I'll load the data some other way, but I have access to all the data anyway, just talk to Dr. X and you'll see you can give me access. Delete my access after if you want.
H: No, just do what I said: git then upload to test azure account.
Fine, he's a complete tool, but I like Dr. X, so I message W and tell her we have to merge, she tells me that it's not that easy to set it up on github as she's using wordpress. She sends me instructions on what to do, and, lo and behold, there's a db in her solution. Ok, I go back to talking to H:
M: W is using a db. Talk to her so we can figure out whether we need a database or not.
H: We can't use a database because we want to decrease costs.
M: Yes I know that, so talk to her because that probably means she has to re-do some stuff, which might take some time. Also there might be dynamic content in what she's doing.
H: This is your project, you talk to her.
<I'm starting to get mad right now>
M: I don't know what they had her do apart from how it interfaces with what I've done.
H: We still can't have databases.
M: Listen, I don't do wordpress, and I'm not gonna mess with it, you talk to her
H: I won't do any development
<So you won't do any dev, but you won't give me access to do it either?>
M: Man, the bottleneck isn't the merging right now, it's the fact that W needs a db
H: I know, so talk to her
M: THE RESTRICTION TO NOT HAVE DATABASES IS NOT MINE, IT'S YOURS, YOU TALK TO HER. I can't evaluate whether it's a reasonable enough reason or not since I don't know the requirements or what they're willing to spend.
H: It's your project.
M: Then give me fucking access to azure and I'll handle it, you know you'll have to set up wordpress again regardless whether we set it up the first time.
H: Man just do your job.
At this point I lost it. WHAT A FUCKING TOOL. He doesn't wanna do dev work, wants me to go through the trouble of setting up on a test subscription first, and doesn't want to give me access to azure. What's more, he did shit all and doesn't want to anything else. Well fuck you. I googled him, to see if he's anyone important, if he's done anything notable which is why he's being so God damn condescending. MY INTERNSHIP ALONE ECLIPSES HIS ENTIRE CV. Then what the fuck?
There's also this that happened sometime during our talk:
M: You'll have to take to Dr. Y so he'll change the DNS to point to the azure subscription instead of my server.
H: Yea don't worry, too early for that.
M: DNS propagation takes 24 hours...
H: Yea don't worry.
DNS propagation allows the entire web to know that your website is hosted on a different server so it can change where it's pointing to. We have to do this in 2-3 days. Why do work in parallel? Nah let's wait.
I went over his head and talked to the professor directly, and despite wanting to tell him that he was both drunk and high the day he hired that guy, I kept it professional. He hasn't replied yet, but this fucker's pompous attitude is just too much for me alone, so I had to share.
PS: I named his contact as Annoying Prick 4 minutes into our chat. Gonna rename him cz that seems tooooooo soft a name right now.undefined tools i have access and you don't haha retards why the fuck would you hire that guy? i don't do development46 -
I tutor people who want to program, I don't ask anything for it, money wise, if they use my house as a learning space I may ask them to bring cookies or a pizza or something but on the whole I do it to help others learn who want to.
Now this in of itself is perfectly fine, I don't get financially screwed over or anything, but...
Fuck me if some students are horrendous!
To the best of my knowledge I've agreed to work with and help seven individuals, four female three male.
One male student never once began the study work and just repeatedly offered excuses and wanted to talk to me about how he'd screwed his life up. I mean that's unfortunate, but I'm not a people person, I don't really feel emotionally engaged with a relative stranger who quite openly admits they got addicted to porn and wasted two years furiously masturbating. Which is WAY more than I needed to know and made me more than a little uncomfortable. Ultimately lack of actually even starting the basic exercises I blocked him and stopped wasting my time.
The second dude I spoke to for exactly 48 hours before he wanted to smash my face in. Now, he was Indian (the geographical India not native American) and this is important, because he was a friend of a friend and I agreed to tutor however he was more interested in telling me how the Brits owed India reparations, which, being Scottish, I felt if anyone was owed reparations first, it's us, which he didn't take kindly too (something about the phrase "we've been fucked, longer and harder than you ever were and we don't demand reparations" didn't endear me any).
But again likewise, he wanted to talk about politics and proving he was a someone "I've been threatened in very real world ways, by some really bad people" didn't impress me, and I demonstrated my disinterest with "and I was set on fire once cos the college kids didn't like me".
He wouldn't practice, was constantly interested in bigging himself up, he was aggressive, confrontational and condescending, so I told him he was a dick, I wasn't interested in helping him and he can help himself. Last I heard he wasn't in the country anymore.
The third guy... Absolute waste of time... We were in the same computer science college class, I went to university and did more, he dossed around and a few years later went into design and found he wanted to program and got in touch. He completes the code schools courses and understandably doesn't quite know what to do next, so he asks a few questions and declares he wants to learn full stack web development. Quickly. I say it isn't easy especially if it's your first real project but if one is determined, it isn't impossible.
This guy was 30 and wanted to retire at 35 and so time was of the essence. I'm up for the challenge, and so because he only knows JavaScript (including prototypes, callbacks and events) I tell him about nodejs and explain that it's a little more tricky but it does mean he can learn all the basis without learning another language.
About six months of sporadic development where I send him exercises and quizzes to try, more often than not he'd answer with "I don't know" after me repeatedly saying "if you don't know, type the program out and study what it does then try to see why!".
The excuses became predicable, couldn't study, playing soccer, couldn't study watching bake off, couldn't study, couldn't study.
Eventually he buys a book on the mean stack and I agree to go through it chapter by chapter with him, and on one particular chapter where I'm trying to help him, he keeps interrupting with "so could I apply for this job?" "What about this job?" And it's getting frustrating cos I'm trying to hold my code and his in my head and come up with a real world analogy to explain a concept and he finally interrupts with "would your company take me on?"
I'm done.
"Do you want the honest unabridged truth?"
"Yes, I'd really like to know what I need to do!"
"You are learning JavaScript, and trying to also learn computer science techniques and terms all at the same time. Frankly, to the industry, you know nothing. A C developer with a PHD was interviewed and upon leaving the office was made a laughing stock of because he seemed to not know the difference between pass by value and pass by reference. You'd be laughed right out the building because as of right now, you know nothing. You don't. Now how you respond to this critique is your choice, you can either admit what I'm saying is true and put some fucking effort into studying cos I'm putting more effort into teaching than you are studying, or you can take what I'm saying as a full on attack, give up and think of me as the bad guy. Your choice, if you are ready to really study, you can text me in the morning for now I'm going to bed."
The next day I got a text "I was thinking about what you said and... I think I'm not going to bother with this full stack stuff it's just too hard, thought you should know."23 -
*came in this morning to see this conversation in slack from the remote teams*
Dev: Hey guys, I'm trying to push to the develop branch, telling me its locked. Is there a new process?
Lead dev: Yes I locked it because the repo is now dead, the last release that went out is the last for this year and ever for this app. Were merging this app with another, starting from the last release's code. We'll all have to swap over to the new repo soon.
Dev: ... eh ok I didn't put anything in the last release branch as it wasn't urgent. Normally our process is anything in /develop goes out in the new year. I've been merging to /develop for the last few weeks ... is that code now gone?
*14 question mark emoji reactions*
Lead dev: Yes
*27 angry emoji reactions*
Engineering manager: WHAT? when was this decided? When was it communicated?
Lead dev: oh I assumed my product counterpart had been spreading the messages around, have they not?
Several teams: no, nope, first i'm hearing of it.
Lead dev: Ok, i'll ask them what happened. Be aware then that most of the stuff thats going into develop now, most likely won't be allowed in until March. They want to prioritise releasing this new merged app and don't want anything to impact it.
Dev: So wait, i'm working on stuff now. What do I do? Where do I base the branch? Where do I merge?
<no response>
*My team comes into the office*
Dev: eeehhh ... what does this mean for our past 4 weeks of work? and all the stuff needed to go out in January?
Me: not.a.fucking.clue16 -
I’m a senior dev at a small company that does some consulting. This past October, some really heavy personal situation came up and my job suffered for it. I raised the flag and was very open with my boss about it and both him and my team of 3 understood and were pretty cool with me taking on a smaller load of work while I moved on with some stuff in my life. For a week.
Right after that, I got sent to a client. “One month only, we just want some presence there since it’s such a big client” alright, I guess I can do that. “You’ll be in charge of a team of a few people and help them technically.” Sounds good, I like leading!
So I get here. Let’s talk technical first: from being in a small but interesting project using Xamarin, I’m now looking at Visual Basic code, using Visual Studio 2010. Windows fucking Forms.
The project was made by a single dev for this huge company. She did what she could but as the requirements grew this thing became a behemoth of spaghetti code and User Controls. The other two guys working on the project have been here for a few months and they have very basic experience at the job anyways. The woman that worked on the project for 5 years is now leaving because she can’t take it anymore.
And that’s not the worse of it. It took from October to December for me to get a machine. I literally spent two months reading on my cellphone and just going over my shitty personal situation for 8 hours a day. I complained to everyone I could and nothing really worked.
Then I got a PC! But wait… no domain user. Queue an extra month in which I could see the Windows 7 (yep) log in screen and nothing else. Then, finally! A domain user! I can log in! Just wait 2 extra weeks for us to give your user access to the subversion rep and you’re good to go!
While all of this went on, I didn’t get an access card until a week ago. Every day I had to walk to the reception desk, show my ID and request they call my boss so he could grant me access. 5 months of this, both at the start of the day and after lunch. There was one day in particular, between two holidays, in which no one that could grant me access was at the office. I literally stood there until 11am in which I called my company and told them I was going home.
Now I’ve been actually working for a while, mostly fixing stuff that works like crap and trying to implement functions that should have been finished but aren’t even started. Did I mention this App is in production and being used by the people here? Because it is. Imagine if you will the amount of problems that an application that’s connecting to the production DB can create when it doesn’t even validate if the field should receive numeric values only. Did I mention the DB itself is also a complete mess? Because it is. There’s an “INDEXES” tables in which, I shit you not, the IDs of every other table is stored. There are no Identity fields anywhere, and instead every insert has to go to this INDEXES table, check the last ID of the table we’re working on, then create a new registry in order to give you your new ID. It’s insane.
And, to boot, the new order from above is: We want to split this app in two. You guys will stick with the maintenance of half of it, some other dudes with the other. Still both targeting the same DB and using the same starting point, but each only working on the module that we want them to work in. PostmodernJerk, it’s your job now to prepare the app so that this can work. How? We dunno. Why? Fuck if we care. Kill you? You don’t deserve the swift release of death.
Also I’m starting to get a bit tired of comments that go ‘THIS DOESN’T WORK and ‘I DON’T KNOW WHY WE DO THIS BUT IT HELPS and my personal favorite ‘??????????????????????14 -
First year of my study (application development) (5 years ago).
We were finally starting getting courses on using Linux and the teacher knew I was already using it for a while so he said that I had to finish the assignment but could work on whatever I wanted next to that.
Assignment was installing a server, getting a web server up and running and compiling at least one program from source.
I setup the server in 20 minutes, wrote a script to do the rest for me and was finished in half an hour. (we got 10 weeks for this (1 hour every week officially))
Well, I was about to start doing my own shit when people started asking me for help.
Fuck it, I love helping people with the things I'm passionate about so sure!
For weeks, during that one hour, I was probably the second teacher. Got called all over the classroom and helped people with everything.
Afterwards (the course), most people said that I probably helped about the whole class pass that course and I got called the linux God etc.
From that day on, my nickname at my study, which even many teachers used was: Mr. Linux.
It felt awesome though!
And still whenever I visit that place again, one teacher always goes: Hello again, mr. Linux!12 -
26 years ago Linus Torvalds sent out this message to the comp.os.minx newsgroup.
Hello everybody out there using minix -
I’m doing a (free) operating system (just a hobby, won’t be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I’d like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I’ll get something practical within a few months, and
I’d like to know what features most people would want. Any suggestions
are welcome, but I won’t promise I’ll implement them :-)
- Linus
PS. Yes — it’s free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that’s all I have :-(.
Fast forward to today and Linux has more than 12 000 contributors from over 1300 companies that contribute to the Linux kernel.
The Linux Foundation released a fairly detailed progress report, including an infographic which I was tempted to include here but you can view it in it’s original context here.
While you’re over there, remember you can be a sponsor of the Linux Foundation too.
Happy Birthday Linux and a giant thanks to not only Linus but every single one of the contributors that have taken part of it over the years.5 -
Manager: The thing you working on. We need this now! Like end of the week.
Me: Desirability is not do-ability.
Manager: く( ・◇・)ヾ?
Me: I am still in the middle of figuring out how to do things in the first place, so there are some technologies to research and some problems I yet need to solve. I am in no state to just write down my solution. I don't even have enough information to even estimate how long it is going to take. I am getting there. And yes, I can rush things, but need I remind you that you want solid data as a result that actually means something? As this is *why* this whole project was started. We have some old project doing the exact same thing, but whose output we don't trust. I wonder how that came to be. Additionally, this whole project was on hold for months until I took over. So I neither understand nor accept this sudden sense of urgency. And by the way, you recently added manpower to this project. And adding manpower almost always decreases the productivity in the beginning due to on-boarding and communication overhead. Last Monday, I didn't write a single line of code due to that. So no, this week will not do, as I am also on vacation starting on Thursday that was requested and was approved by you at the beginning of the year. See you in January.undefined results project it went better than expected actually communication is key urgent deadline11 -
Today was different at work. It felt as if something was missing. The circle of fun at work that was developed over last two months among few of us was gone overnight..
Two months ago, we ( 7, including our PM ) were shifted from our cabin space to this special room by boss in hopes to keep our ass under fire and increase our productivity. Everyone in the office saw this room like a concentration camp as it was next to boss 's office. Nobody liked the idea of working in that room. We were seen as prisoners as we walked into our work cage.
In the cage, there is a fixed table. We had to adjust our workspace around that table. Everyone was just an arm length away from each other. It didn't take that long to form a bond among us. Some of us would bring snacks and we all shared it and ate it there. We had fights and discussions. The girl in my team and other team would have silly fights about their legspace boundary. The guy who is on a quest to find his life partner would seek for our opinions about his matrimony findings. That time the girls roasted guy about his patriarchal attitude. Instant discussions on current events. Movie reviews and sharing about various life experiences. Lots of such memories were formed and shared over last two months while we worked in there.
For me, it felt like living "The Office" in real life. It was amazing. I was starting to forget my dreams of self employment and plans to resign career because this human connection was addictive. We all learned a little more about each other which otherwise would not have been happened outside the cage.
We didn't realize the bubble and dynamics we had formed in that room until it was gone today when we were shifted back to our cabin space.
It was obvious we were little sad inside having to say bye to our bubble.
😅4 -
I just feel that I have to get this of my chest, because this have really me and my family really negative.
It have destroyed my will to be happy, sort of.
Well, my father have some kind of control behaviour. My whole life he has been angry on stuff that does not really matter
and I have always been the one that get all the shit - because I am the oldest. I was never allowed (maybee 3-4 times between age 8-15) to have any friends
over or stay with friends over night or after school. Because they "where bad and I would become like them".
I am happy that I meet my wife 6 years ago and moved away from home when I was 20, I kinda fled the situation from home to start my own life.
My father has always hated when boy/men had long hair and alot of beard - but that is something I always wanted to have. So when I moved from home
I start to let everything grow.
Two years ago, things got really fucked up when I did not shave all my beard of and cut down my hair because my mom had birthday. I did it the week after
because my brother graduated from school and we where going to visit, we did not want a repeat the situation from a couple of weeks before. After that I got
another job as a Linux sysadmin and started to grow the hair and beard again.
Last monday, my dad called and said that I am not welcome to visit them anymore. I am a "bad example" for my sibling
and he also said "you brother and sister does not feel so good (my sister fainted a couple of days before, which I did not know) so I have no time to care about you and your family"
I was stunned, I really wish that this was a joke but it is'nt.
I have always been bashed because of the choices I make in my life and for my own family (wife, and two kids + one more kid any day now)
When I choose to work with something that I love, they said that I am stupid because they basically think "that the PC is full of SATAN".
When they realized that I make more money than my parents combined they went silent.
I just wanted to write this shit of my chest, it is really fucked up and I am starting to loose the ability to have feelings - if you know what I mean.
Thank you devrant, for being one of the fun things I do, when I read all the rage, fucked up stories, hate, and so on. I do not feel alone :)
PS: I promise you, that you guys/gals will be the first one to know when my new kiddo arrives20 -
Mistyping one character wrong in a password and hitting backspace until I am sure I’ve deleted the entire Wikipedia.
Then starting all over again.3 -
Story of my most useless meeting?
Too many to mention. Here's one. Years ago a new HR associate was specifically hired to better engage the workforce. About once a week, she conducted about an hour to two hour meetings which consisted of every 'touchy-feely' idea you could think of. I swear any day I was going to walk into a meeting and do the "fall back into your partner" trust exercises.
One particular meeting, 'Betty' engaged us with the topic of what keeps us motivated, and I was a little more annoyed than usual because I was behind on a system critical project and these meetings were mandatory.
User1: "Knowing I make customer satisfaction my number one priority."
User2: "The strong sense of accomplishment I feel by doing my best"
Me: "Money"
<you could almost hear Betty's gasp>
Betty: "Oh, no, money shouldn't be the motivator. Money is like icing on the cake. Tell us what keeps you happy and engaged."
<other users nod their heads in engagement>
Me: "Again, money."
User3: "I can't...ugh..I don't believe..oh..why would you say that? I think being part of such a great team is payment enough."
<more nodding of heads>
Me: "Do you work for free? I don't. None of us do. Would any of you keep doing your jobs here if you weren't getting paid?"
Betty: "That is really not the point of this meeting."
Me: "Sure it is. I'll bet if Order Taking starting providing bonuses for positive after-call surveys, employee satisfaction would go through the roof. Anyone else like that idea?"
Betty: "Your attitude isn't helping this discussion. Lets move on."
Me: "Lets not. In 20?? the Gartner group performed a study where they 'discovered' the primary motivator for employees was money. You want employees to perform better, you pay them. It is really that simple."
<I could see the looks of "Its OK to speak my mind?" and others wanting to speak up>
Betty: "Moving on. Lets go over the company core values again and discuss how they enrich our lives at work and at home."
I kept quiet for the rest of the meeting.
The poop hit the fan, and my boss pulls me into a conference room
Boss: "Betty is really pissed at you. She went directly to the VP of HR"
Me: "Good. Does this mean I don't have to attend the enrichment meetings?"
Boss: "Yea, that was her idea of punishment. Lucky bastard."8 -
Time for an actual rant:
During an internship I heard from my PM that my assignment for the week after was going to be working on a specific sql query to add some features and fix some bugs.
When talking with colleagues about that assignment later, they laughed and referred to the query as the "query of doom" (QoD), naive as I was back then, I thought that one of my colleagues had the QoD displayed on his screen because the query he was working on looked rather large (about 20 lines). They all laughed and told me I was in for a treat.
Starting my assignment the week after I was horrified to find out the QoD was huge, and by huge I mean, printing that specific query resulted in 8 A4 pages font size 10, front and back.
There were over a 100 union statements, no proper aliases, no documentation, not a single foreign key in the entire database, naming that makes no sense. And everything written manually by 10 different developers over the past years, who all fell of the face of the earth.
And this was only the query of doom. The entire product was a complete clusterfuck of forms with a queries directly behind action buttons, because we weren't allowed to make classes (yes you read that correctly. We couldn't make classes, unless we had a very compelling reason). Everything was created by over 30 different devs who only managed to stay just long enough to get some work done.
And all of this was the result of a PM who didn't believe in frameworks, ORM's, OOP, classes, ... because that made the software slow. To this day he still manages that product, but I'm glad that I quickly decided to move on.9 -
That's it. I fucking quit.
Over a month of unpaid work, developing your stupid course, only to get a high-quality outline rejected because "it's not what we wanted" again.
First outline, fuckers ask to do something with a Raspberry Pi and Yocto. Fine, but no Yocto as I don't know anything about it and the coworker doesn't even have a Raspberry Pi to flash the images on. Micromanagement guy (god I hate that word) agrees, fine no Yocto then. So no Yocto it is.
2 weeks later... Course outline is finished. Review stage.. rejected. Needs moar Yocto.
Fine... I'll include Yocto. Coworker was put off the course, I'm exclusively on it now. Time to do it well and get my feet wet with Yocto.
2 weeks later... Course outline is finished and looks pretty good. Review stage.. rejected. Needs less Raspberry Pi. Do it without the Raspberry Pi.
An embedded systems course whose core component is that fucking Raspberry Pi. Omit it they said. WHAT?!!
"Oh yeah but there's this other course that's selling like hot pockets, we can just redo that in videos. Make it more like that course."
You.. you can't be for real, can you? If students want to take that course... What makes you think that they wouldn't just pick.. *that damn course* then?
"But hey" micromanager said, "don't loose hope and confidence, I'm here🤪"
🤪. That describes your level of competence pretty well, you stinking piece of apeshit.
Go back to your micromanaging, at least you don't completely fucking suck at that.
2 times rejected because YOU fucking company's board can't describe your desires in a course properly. You know what, I think I'm starting to understand why web devs keep on complaining about indecisive clients now. Because you know company's board, you seem a lot like those clients from hell. Eat shit.
🖕17 -
Stackoverflow
When I was just starting with programming I used to google a lot (more) of my problems. But just just copying them made me feel guilty, since I could not handle the problem myself. So I decided to analyse a code to the point where i understand exactly how it works. Sometimes it took me a couple of hours to understand a method, which was written 1 or 2 levels over my current level, but it was totally worth it. I learned a lot about Java, how to write cleaner code in general and how to read and understand code quickly.6 -
I was starting a new job and asked if developers had a choice between a PC, Linux or a Mac. I didn't get a response so I sent an e-mail saying I'd prefer a PC/Linux if that was allowed, or a PC/Windows. First day I get a Mac. Boss says something about how you have to have a Mac to develop on; the company doesn't have good Windows laptops with 16GB of ram.
I really do not like macOS. I wouldn't care if it wasn't for the fact that for the past three jobs, I have always been able to use a Linux machine at work (since 2012). So over the weekend I got it dual booting. It was not easy. Apple's hardware is fucking awful. The keyboard, mouse and bluetooth are all connected to the serial bus.
I got it all working though, at least well enough for my job. It feels so good to have a tiling window manager. (I know Mac does have some now, but I really love i3). I made a guide in case another developer finds themselves in my spot:
https://penguindreams.org/images/...17 -
On being a woman in tech...
You lads probably have (and my fellow ladies certainly have) heard of "impostor syndrome" and, if you don't experience it, you possibly wonder what living with it is like.
Here's an example from this weekend.
Be me, about 5 years into my career, graduated from a top college, feeling decent but still unsure of skill.
Company gets a 4 week trial of an online learning website. It includes optional assessments, so that you know where in the video lessons to start. Rankings are novice, proficient, expert.
Hear from our QA that he got ranked "proficient." Which is a pretty broad category, but I become super afraid that I'll also be assessed as "proficient" and it will look like I have the same dev skills as a fucking QA (our management overlords can see our scores).
Boyfriend has me do some deep breathing before starting the test, because it's obvious how stressed I am.
Finally take it and get ranked "expert", in the 97th percentile, even though some technical difficulties made me miss four questions in a row. I decide to use my do over, and get ranked "expert" again, this time in the 99th percentile.
You'd think I'd be like, "Lawl, I can't believe I'd get the same score as our QA!" And there is some of that. But there's also the thoughts of, "that test could have been more thorough," "that score wasn't real because I resaw a question and got the right answer the second time," and "99th percentile isn't that great on a platform where new developers are over represented."
And this is all despite the fact that, if you were to ask someone how confident I am, the answer would probably "confident as hell."
Not saying this to start any fights. Figured it could be some interesting insight into a world that some people don't experience! (not that males aren't allowed to have impostor syndrome!)16 -
Trashy Girl that literally did not talk to me in over five years and even back then only talked to me if she needed something texts me today:
Girl: Hi :) How are you?
Me: *oh fuck no* Hi! Good, how about you?
Girl: Great! You know how to program apps right?
Me: *Fuck you* Yeah, whatcha planning?
Girl: Sooo my boyfriends brother has an idea for an app, it’s basically like instagram and snapchat but it’s actually *insert location based snapchat ripoff idea*
Me: Well sure but that’s quite a long term project and App Development kinda isn’t cheap to outsource!
No answer.
I’m like what did you expect?
Same shit everyday. Sometimes I consider starting a new life in a country where noone knows I can code, work remote and answer with “pleas” when people ask me what I do.13 -
I'm starting to think customers know when I'm busy and take that moment to break their products.
I JUST WANT TO LET MY LEG SOAK IN EPSOM WATER... your users are going to bed soon, it's a freaking Saturday, and you need to go get laid because you have too much time on your hands. I'm in pain and cannot help you restore service if you don't stay on the line. So please... don't. Fucking. Call me. Unless you're going to stay on the line to test. You're pushing my limits, and if my voice gets any quieter, it means I'm about to find your porn accounts and register you as an amateur, uploading cows fucking to get you banned from all the services. Congratulations sir, you've pissed me off so bad, I'm using my "I'm not mad, I'm just disappointed" voice I learned from my mother. I hope you're happy. I'm so mad I'm not even swearing anymore. I always swear.
Edit: if my voice ever sounds sweet and demure over the phone, someone is about to get fucked with a red hot fireplace poker. This fucker getting close.1 -
The Manager kept masturbating over "low hanging fruit".
The apples on the bottom of The Product have all been picked.
The apples at the top are starting to rot.
The Manager masturbated a bit more over the low hanging fruit.
The bottom of The Product is now so slippery with Manager Cum that the brave engineers can't reach the top anymore.
Time to bring my axe to work.13 -
!!rant
!!ANGER
Micromanager: "Hey, Root!
Since you're back, and still not feeling well, we have an easy ticket for you: Rewrite the slack integration gem! Oh, you don't have to re-implement all of it, just make sure it all works the same way it does now. That bitch you worked with once over a year ago who kept throwing you under the bus to management and stealing credit for your work? Yeah, she wrote the original code like four years ago. It's perfect, so don't touch it. but she can fill you in on all the details you need and get you up to speed on how to test it.
But yep! It should be simple. and I just knew you would love this ticket, so I saved it just for you. Nice and quick, too, to get you an easy win.
You know, since you have to repair your reputation with product. and management. and the execs. and the rest of the team. and me. Yeah, product doesn't trust you so they don't want to give you any tickets. They just can't trust you to get them out and have them work. So you have a lot of hard work to do."
Spoiler: The bus-thrower wasn't much help. (Surprise.)
Spoiler: The ticket was already in my backlog -- one of a grand total of two tickets.
Spoiler: I don't find the ticket fun. Maybe if I was to write the entire implementation with a nice DSL? but no, "don't touch the perfect code." Fuck you.
Spoiler: It isn't going to be nice or quick. But, she (micromanager) is looking to lose me, so that really is an easy win. for her.
And. just. argh. fuck you. i've been exhausted and dying for well over a year, but you've kept ignoring that (and still are, despite me providing goddamn legal forms from fucking doctors stating it in plain fucking english, which you also fucking ignore), and you just keep piling on the work and demanding the ridiculous of me despite it. Yeah I can pull it off sometimes. No, I really shouldn't, and I'm surprised I can. (also, "Time off? What, and lower your productivity even more? ____ doesn't even take vacations. And how are you doing on that ticket?") And no, none of my tickets have ever had any fucking problems. Not even when there are upstream service outages. Not. a. single. fucking. one. Ever. And the only things I've ever missed were things that bloody product never put in the fucking ticket, so fuck you with your "repair your reputation" bullshit.
god, i fuckiNG HATE THESESTUPOID ANWETLJAF SAJEWTKW BITCHFACEDUCKFUCKERS
Why the FUCK am I still fucking working here?
Right, because I've been burned out and dying so much I can't pass a fucking interview so I can fucking leave.
jasdkl;fk
ugh. Anyway. If you ever find yourself starting work at a Cali fintech company whose internal mascot is a very fine duck? Just run. I absolutely guarantee you will be miserable.rant root swears oh my micromanager duckfuckers "trivial" ticket root is fucking fed up root swears a lot holy shit rewrite an entire library in 2-3 days16 -
So we had a dev on our team who was on a performance improvement plan, wasn't going to pass it, but decided to quit before it was over saving us 2 weeks.
I was ecstatic when he left (caused us hell). I knew updating his code wouldn't be great, but he was only here 6 months
"how bad could it be" - practiseSafeHex - moron, idiot, suicidal.
A little run down would be:
- Despite the fact that we use Angular 2+, one of his apps is Angular 1 ... Nobody on the team has ever used Angular 1.
- According to his package.json he seems to require both mongoDb and Cloudant (couchDb).
- Opened up a config file (in plaintext) to find all the API keys and tokens.
- Had to rename all the projects (micro services) because they are all following a different style of camelcase and it was upsetting my soul.
- All the projects have a "src" folder for ... you know ... the source code, except sometimes we've decided to not use it for you know, reasons.
- Indentation is a mess.
- He has ... its like ... ok I don't even know wtf that is suppose to be.
- Curly braces follow a different pattern depending on the file you open. Sometimes even what function you look at.
- The only comments, are ones that are not needed. For example 30+ lines of business logic and model manipulation ... no comment. But thank god we have a comment over `Fs.readFile(...)` saying /* Read the config file */. Praise Jesus for that one, would have taken me all week to figure that out.
Managers have been asking me how long the "clean up" will take. They've been pushing me towards doing as little as possible and just starting the new features on top of this ... this "code".
The answer will be ... no ... its getting deleted, any machine its ever been on is getting burned, and any mention of it will be grounds for death.6 -
Got laid off on Friday because of a workforce reduction. When I was in the office with my boss, someone went into my cubicle and confiscated my laptop. My badge was immediately revoked as was my access to network resources such as email and file storage. I then had to pack up my cubicle, which filled up the entire bed of my pickup truck, with a chaperone from Human Resources looking suspiciously over my shoulder the whole time. They promised to get me a thumb drive of my personal data. This all happens before the Holidays are over. I feel like I was speed-raped by the Flash and am only just now starting to feel less sick to the stomach. I wanted to stay with this company for the long haul, but I guess in the software engineering world, there is no such thing as job security and things are constantly shifting. Anyone have stories/tips to make me feel better? Perhaps how you have gotten through it? 😔😑😐14
-
I had to open the desktop app to write this because I could never write a rant this long on the app.
This will be a well-informed rebuttal to the "arrays start at 1 in Lua" complaint. If you have ever said or thought that, I guarantee you will learn a lot from this rant and probably enjoy it quite a bit as well.
Just a tiny bit of background information on me: I have a very intimate understanding of Lua and its c API. I have used this language for years and love it dearly.
[START RANT]
"arrays start at 1 in Lua" is factually incorrect because Lua does not have arrays. From their documentation, section 11.1 ("Arrays"), "We implement arrays in Lua simply by indexing tables with integers."
From chapter 2 of the Lua docs, we know there are only 8 types of data in Lua: nil, boolean, number, string, userdata, function, thread, and table
The only unfamiliar thing here might be userdata. "A userdatum offers a raw memory area with no predefined operations in Lua" (section 26.1). Essentially, it's for the API to interact with Lua scripts. The point is, this isn't a fancy term for array.
The misinformation comes from the table type. Let's first explore, at a low level, what an array is. An array, in programming, is a collection of data items all in a line in memory (The OS may not actually put them in a line, but they act as if they are). In most syntaxes, you access an array element similar to:
array[index]
Let's look at c, so we have some solid reference. "array" would be the name of the array, but what it really does is keep track of the starting location in memory of the array. Memory in computers acts like a number. In a very basic sense, the first sector of your RAM is memory location (referred to as an address) 0. "array" would be, for example, address 543745. This is where your data starts. Arrays can only be made up of one type, this is so that each element in that array is EXACTLY the same size. So, this is how indexing an array works. If you know where your array starts, and you know how large each element is, you can find the 6th element by starting at the start of they array and adding 6 times the size of the data in that array.
Tables are incredibly different. The elements of a table are NOT in a line in memory; they're all over the place depending on when you created them (and a lot of other things). Therefore, an array-style index is useless, because you cannot apply the above formula. In the case of a table, you need to perform a lookup: search through all of the elements in the table to find the right one. In Lua, you can do:
a = {1, 5, 9};
a["hello_world"] = "whatever";
a is a table with the length of 4 (the 4th element is "hello_world" with value "whatever"), but a[4] is nil because even though there are 4 items in the table, it looks for something "named" 4, not the 4th element of the table.
This is the difference between indexing and lookups. But you may say,
"Algo! If I do this:
a = {"first", "second", "third"};
print(a[1]);
...then "first" appears in my console!"
Yes, that's correct, in terms of computer science. Lua, because it is a nice language, makes keys in tables optional by automatically giving them an integer value key. This starts at 1. Why? Lets look at that formula for arrays again:
Given array "arr", size of data type "sz", and index "i", find the desired element ("el"):
el = arr + (sz * i)
This NEEDS to start at 0 and not 1 because otherwise, "sz" would always be added to the start address of the array and the first element would ALWAYS be skipped. But in tables, this is not the case, because tables do not have a defined data type size, and this formula is never used. This is why actual arrays are incredibly performant no matter the size, and the larger a table gets, the slower it is.
That felt good to get off my chest. Yes, Lua could start the auto-key at 0, but that might confuse people into thinking tables are arrays... well, I guess there's no avoiding that either way.13 -
It goes like this.
I have one final task to solve before starting in a new job at a different company. This guy, which is also a board member in the company in which I'm currently hired, is also an IT consultant and project manager in a fairly large company. This said person is also a key person for me being able to solve this last issue. I send him a complete guide on what he has to do before I can move on and wrap it all up.
First conflict arises because he doesn't follow the guide and tells me something is not working. I kindly inform him why and the response I get is very personal and not kind in any way, telling me and my boss that I am bad at my job and that he will bill us for 1000 USD for the 5 hours he used "debugging" and testing. This should have taken him 30 minutes and I have no idea what he spent those 5 hours doing.
It comes down to that my boss sides with this asshole and tells me that I have to do the task all over and test the system for the 4th time (yes I tested it 3 times beforehand to make sure nothing could go wrong) What my boss and the asshole doesn't know is that my uncle is vice president in the firm the asshole is working for. After kindly reminding this asshat that he has to follow the guide and that I can confirm everything is working, he keeps on attacking me. It's very rare that I fuck up and I have consulted 2 colleagues and got them to test it as well. They found no issues at all. The asshole ignored my request of documentation that something was not working.
I'm so full of being treated as an idiot so I send my uncle the email correspondence with the asshole to confirm that this is not how any of their employees should behave independant of my ability to do my job.
He will speak with this fucker tomorrow at work as first thing in the morning. I'm not proud of the way I went about this, but that was like the last drop, if you know what I mean.
Sorry for the long rant.20 -
Some days I feel like I work in a different universe.
Last night our alerting system sent out a dept. wide email regarding a high number of errors coming from the web site.
Email shows the number of errors and a summary of the error messages.
Ex. 60 errors
59 Object reference not set to an instance of an object
1 The remote server returned an unexpected response: (413) Request Entity Too Large
Web team responds to the email..
"Order processing team's service is returning a 413 error. I'll fill out a corrective action ticket in the morning to address that error in their service. "
Those tickets are taken pretty seriously by upper mgmt, so I thought someone on the order processing team would point out the 1 error vs. 59 (coming from the web team's code).
Two hours go by, nobody responds, so I decide to jump into something that was none of my business.
"Am I missing something? Can everyone see the 59 null reference exceptions? The 413 exception only occurred once. It was the null reference exceptions that triggered the alert. Looking back at the logs, the site has been bleeding null reference exceptions for hours. Not enough for an alert, but there appears to be a bug that needs to be looked into."
After a dept. managers meeting this morning:
MyBoss: "Whoa..you kicked the hornets nest with your response last night."
Me: "Good. What happened?"
<Dan dept VP, Jake web dept mgr>
MyBoss: "Dan asked Jake if they were going to fix the null reference exceptions and Jake got pissed. Said the null reference errors were caused by the 413 error."
Me: "How does he know that? They don't log any stack traces. I don't think those two systems don't even talk to one another."
<boss laughs>
MyBoss:"That's what Dan asked!..oh..then Jake started in on the alert thresholds were too low, and we need to look into fixing your alerting code."
Me: "What!? Good Lord, tell me you chimed in."
MyBoss: "Didn't have to. Dan starting laughing and said there better be a ticket submitted on their service within the next hour. Then Jake walked out of the meeting. Oh boy, he was pissed."
Me: "I don't understand how they operate over there. It's a different universe.
MyBoss: "Since the alert was for their system, nobody looked at the details. I know I didn't. If you didn't respond pointing out the real problem, they would have passed the buck to the other team and wasted hours chasing a non-existent problem. Now they have to take resources away from their main project and answer to the VP for the delay. I'm sure they are prefixing your name right now with 'that asshole'"
Me: "Not the first, won't be the last."2 -
Fuck China.
Fuck the U.S. government.
Fuck the UK and Australia and all the other governments for taking advantage of the crisis of the last two years to get more power and money for their elites.
Fuck them all for starting COVID with their unsanctioned and unethical “gain of function” lab experiments and creating so much chaos that nobody really has a chance anymore at living the life they had dreamed of or so carefully planned for.
Fuck them for the out of control spending and money printing and inflation and even messing around with trying to regulate and tax crypto so we don’t have any kind of escape valve to live a normal, happy life.
Because of them, I can’t even enjoy my time off work. Even if I could plan a vacation that wouldn’t have to be canceled due to an outbreak or resultant supply chain issues, I can’t travel without severe restrictions that make it miserable and not worth the trouble.
Fuck them for making everyone into stupid monkeys fighting over opinions about data that is incomplete, misunderstood, misrepresented, or downright fixed toward a specific pharma-fascist authoritarian outcome.
And fuck them especially for being hypocrites and going to parties and generally not following their own rules they made for us when they think we’re not watching, and then persecuting and prosecuting us when we dare do the same.
Fuck ‘em all. I’m so done.13 -
A fanfic based on devRant-chan. The character was created by @caramelCase and a drawing by @ichijou.
This is freestyle. I'll think of an image of a scene and go with the flow. I won't remove my fingers from the keyboard and I won't edit or change anything. That's how I come up with my best ideas.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Notes:
B/N = Boss' name (I was too lazy to think of one.)
Anything in between astericks is in italics.
Ex.) *this is in italics.*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It was an early January morning when devRant-chan was situated in her desk, typing away on her laptop. She was working on a Python script for her barbaric client when she could've been out with friends. Oddly enough, her Sunday was surged with tranquility.
Normally, Sunday is when her irksome boss barks orders at her on the phone.
"This is wrong!"
"What is this?"
"Change it!"
devRant-chan resented her boss but loved her job. After all, "you can't force yourself to like everyone," was something her elder brother would tell her.
She released a slight chuckle, the one she would only display at the thought of her brother.
Her musings were interrupted when a concerning thought crawled into her mind like an undesirable intruder.
Why hasn't her boss called to complain yet? It's not that she enjoyed his complaining, which she didn't. She simply found it odd, since he's done this every Sunday morning, since she was a junior developer.
Unless he found someone else to complain to? In that case, good riddance!
But still, it wasn't a euphoric feeling to be replaced. She was already accustomed to his Sunday morning calls that it feels almost lonely not to receive them.
She should call him... Just in case some situation—or—problem—has emerged.
She dialed his number, waiting patiently for a reply.
"Hello," said her boss.
"Ah, hello," said devRant-chan. "I called, wondering—"
"You've reached the voicemail of B/N, please leave a message after the beep."
"Damn..." mumbled devRant-chan with a sharp exhale. "I always fall for that."
Why didn't her boss answer the phone? It was odd of him, considering he's always answered her calls.
She was about to dial her coworker when she received an email, which stimulated her attention. The subject of the email read:
*Important. Please read.*
She opened the email. It was her boss. The email read:
*Hello.*
*In case you aren't aware, I had quit my job, due to the stress. I've left the manager in charge. Starting tomorrow, he will be your new boss.*
*-B/N*
Before she could rejoice in excitement, she detected a strange change of voice, emitting from the email. Did her boss really write this?
That's when she spotted something. The word "tomorrow."
Her boss didn't write this.
He would never use words such as "tomorrow," or "today." He would use time instead. If this was her boss, he would say "in 24 hours."
She checked the IP of the email. Oddly enough, it was her boss' IP.
Still, the pieces didn't fit the puzzle. Her boss didn't complain, answer her call, or use his style of speaking in the email.
Something happened to him and she knows it. Whatever it is, has something to do with the manager, and she was determined to figure it out.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This was just a quick random fanfic, and I'm not sure if I'll continue it. As I said, I didn't plan anything, since it's freestyle. I might or might not continue it, so I'll think it over.8 -
Quick recap of my last two weeks: 15 year old production server is basically dead, boss has taken over calls and claims credit for "resolving" outages (even though my coworker and I did the work, but ultimately the traffic died down enough to where it wasn't an issue anymore).
I go to a meeting to plan migration to a better server, boss bitches about not getting invited, I tell him I invited myself, and then he lectures about how that's not our job.
Different boss says we're migrating a schema for an application that should have been decommissioned 5+ years ago to use as a baseline. I explain what's going on, he says he understands, and proceeds to tell higher bosses it's perfect because there will be no user impact. OF COURSE THERE'S NO FRICKING IMPACT, YA DUNCE! there are no users!!!!
I merge two email threads together, since they discuss the same thing, but with different insight, and get yelled at, even though they requested it.
The two bosses I like are OOO for the next week, too, so I'm just sitting here hoping I don't say something that'll get me fired or sent to sensitivity training.
I'm just starting my on call rotation and don't know that I can do this. I cry when my phone rings, now, because I experience physical pain with how hard I cringe.
I got yelled at today by a guy because SOMEONE I DON'T KNOW assigned a ticket to him directly, rather than to the proper team (not his team). So I had to look into that, which at least had the benefit of preventing a catastrophic outage to our customers world wide, but no one will know because I don't brag at work; I'm too busy doing my job as well as most of my division/section/larger team, whatever the hell it's called. I saved us probably 25+ hours of continuous troubleshooting call from noticing something tiny that the people "smarter" than me missed.
**edit: sorry for typos; got my nails done yesterday but they feel like they're a mile long and I have to relearn how to type**7 -
I actually wanna RAGE QUIT right about now!!!
I wanna fuck off and go somewhere where my talents are appreciated and I'm actually listened to! I'm reaching the point where I hate my job and don't actually want to be here any more.
I asked to be able to work from home (long story... see previous rants) and that was "shut down" after numerous attempts and even when working from was a prerequisite that somehow got lost in translation.
I was stuck in traffic for almost 3 hours yesterday and it is known that there are currently roadworks on my route, and yet they don't seem to move on the notion of working from home.
When I work it out, I sit in my car on average for over 40 hours per month! That's another fucking work week just so that I can get to and from work everyday. Again, they can say what that want, but I mentioned it several times that I wanted to work from home.
They're story is... "We've never had anyone work from home before so we wouldn't know how to approach it". Ok fine, I guess... FIGURE IT OUT, FFS!!!
The other thing was that I would be the "team leader" of the project. With me speaking to a management, they made me the leader. Big fucking whoop! My next question is the leader of what exactly are you making me? Because at the moment I'm the only fucking person working on the project! The other chap who is on "my team" is so busy with these other small side projects that in the 6 months he's been here, the only time he's actually had anything to do with the project is when he's peeped over my shoulder! Also, there was supposed to be more than just one other developer on the "team", but alas!
I'm not happy here at all anymore and I am actually starting to feel the depression creep in and there's nothing I can seem to do about it! I can't stand the traffic to and from work and they have not tried to make anything worthwhile when I get to work, even after my numerous requests!10 -
2 years into polytechnic I got my 1st big project as a subcontractor doing Symbian. No need to tell the company I presume.
Anyways, I was brought into the project just couple weeks before holiday season started. My Symbian programming experience was just the basics from school. 1st day I was crapping my pants out of anxiety. I pretty much didn't understand anything what my project manager or teammates were telling, so I just wrote EVERYTHING down on paper and recorded all the meetings to my laptop.
My job was to implement a very big end to end SDK feature. Basically from API through Symbian OS through HAL to other OS and into its subsystem. Nice job for a beginner :/
As the holidays were starting we had just drafted out the specification (I don't know how, because I didn't understand much of what was going on) and I got a clear mission from team lead. Make a working prototype of the feature during the time everybody else was on vacation.
"No problemos, I can do it" I BS'd myself and the team lead.
First 2 weeks I just read documentation, my notes and internal coding tutorials over and over again. I produced maybe couple of lines of usable code. I stayed at the office as late as I dared without seeming to obvious that I had no clue what I was doing. After the two weeks of staying late and seeing nightmares every night I had a sudden heureka moment. Code that I was reading started to make sense. Okay, still 2 weeks more until my teammates come back.
Next 2 weeks were furious coding and I got better every day. I even had time to refactor some of my earlier code so that quality was consistent.
Soooo, holidays are over and my team leader and collagues are very interested with my progress. "You did very well. Much better than expected. Prototype is working with main use case implemeted. You must have quite high competence to do this so well..."
"Well...I did have to refactor some stuff, so not 10/10"
I didn't say a word of my super late nights, anxiety and total n00biness.
Pretty much finished "like a boss". After that I was on the managers wanted list and they called me to ask if I had the time work on their projects.
Fake it, crap your pants, eat your crap and turn into diamonds and then you make it.
PS. After Symbian normal C++ and almost any other language has been a breeze to learn.2 -
Now that I have time to approach my ultimate dream ( being the pro penrester ) , asked a hacker for a road map and he gave me (U'll rarely see such open hackers that share knowledge :) )
Surprisingly I've been familiar with all the topics but being the most pro , requires u to be pro in every single topic .
Guess what ? I'm starting from basic linux commands all over again 😂
echo 'hello world :/'25 -
I had been a "hobby" programmer for well over a decade, with my primary career being in repair or a "technician". I had taught myself dozens of languages because it was fun, but never really accomplished much.
I was laid off from my job as a technician and I found myself listless and without purpose. I started doing development again on random things to pass the time and I ended up volunteering as a developer for a game I had played for years.
At the same time I had an uncle who encouraged me to consider software as a career. These two things gave me the confidence to apply for a local software job I saw on Indeed.
They called me pretty quickly, and I was brutally honest. "No, I don't have a degree. I'm self-taught. I have no professional experience really."
I got a proficiency exam anyway and I took it - apparently doing well enough on it that the CTO called me a week later. We had a long talk and I finally asked him why he called me.
He told me that while a degree means something, the passion to learn this job means more to him. It was a month before I was offered the position, and I graciously accepted it.
We had a call about my compensation before starting. It was rather low, but we both agreed that my skill level was quite an unknown.
A year later and my pay was bumped up a sizable amount. My skills are defined now and growing rapidly as new challenges are sent my way. I went from a naive hobbyist to a professional in a short period of time.
I realized that I was always a professional. I had a desire to learn and a desire to do things the right way. I may not have known what to call things. I didn't know some of the design patterns I had used over the years were standards that had names and meaning.
I basically work two jobs now. My full-time job and also on the game that helped propel my career forward and gave me the confidence to reach for it.
As for my hobby? I turned to electronics and the maker community. It's a nice marriage with my programming skill set, and I never knew how rewarding a blinking LED would be. :)4 -
Starting to wish I never got involved in this industry.
I am working for the most ridiculous, god awful place I have ever had the misfortune of working and I am having a HELL of a time getting out of it because everything wants 5 years fucking exp in some fucking specific framework that is basically the same as every other fucking framework.
Our previous cto was a closeminded totalitarian bully and when she finally left she was replaced by a lecherous fucking dinosaur who has no idea how to code in our code base. He also has barely been showing up to work for the last few months.
For some reason our fucking ceo allows this all to continue and only interjects whenever he can make himself the biggest nuisance (ie design handoffs etc where he has little to no knowledge)
I was already woefully underpaid but was recently 'promoted' to team lead and when I brought up my ridiculous salary (yes I was essentially just funneled into this role) they gave me a neglible raise and ceo told the fucking dinosaur to tell me he 'doesn't like when people ask for raises'
The only reason I am in this position is because we have such ridiculously poor employee retention and I am one of the people after only 2.5 years there that has the ability to provide any kind of knowledge transfer. Most of our dev team consists of people fresh out of school and our code base is just an absolute mess of junior dev spaghetti debauchery.
I have expressed concerns over this and was told that I'm negative and go looking for problems and that 'everywhere is like this'
The ceo has a few people he keeps close because in his words 'they're the only ones who don't disagree with me'
He also refused to hire anyone with experience because they cost too much and he doesn't like people who have opinions.
To make matters worse all the fucking dinosaur does is wander around and talk to the junior devs about video games.
His previous favorite past time was staring at my tits, ranting about his wife and telling me 'he'd offer to give me a back rub but you can't do that now a days'
I caught his fucking wife creeping me on LinkedIn a few months ago for some fucking reason.
Oh and as icing on the cake I had a fucking interview today for an intermediate angular position and a few minutes after I received an email saying that ACCTUALLY they had been informed they were now looking for a senior react dev.
Like seriously what the fuck.62 -
We were starting a libre software project and needed some basic stuff like email accounts, cloud storage, calendars for scheduling, etc. So we start to talk about using services that didn't agreed the patriotic act of the USA. That lead to the omnipresent topic of Google's control over our lives. Then we moved to Microsoft's crimes against humanity for preinstalling windows, and at the time when we were discussing if Steve Jobs were a fraud or just a salesman, we realized it was getting late and we had nothing set or even decided. So we create a Google account and went home.4
-
At my old job, me and a colleague were tasked with designing a new backup system. It had integrations for database systems, remote file storage and other goodies.
Once we were done, we ran our tests, and sure enough. The files and folder from A were in fact present at B and properly encrypted. So we deployed it.
The next day, after the backup routine had run over night, I got to work and noone was able to log in. They were all puzzled.
I accessed a root account to find the issue. Apparantly, we had made a mistake!
All files on A were present at B... But they were no longer present at A.
We had issued 'move' instead of 'copy' on all the backups. So all of peoples files and even the shared drives have had everything moved to remote storage :D
We spent 4 hours getting everything back in place, starting with the files of the people who were in the office that day.
Boss took it pretty well at least, but not my proudest moment.
*Stay tuned for the story of how I accidentally leaked our Amazon Web Services API key on stack overflow*
/facepalm5 -
Ok, it’s been a loooong fucking day.
28 hours later from starting work yesterday, preparing for a giant deployment over multiple systems, Doing deployments overnight... on a Friday night of all days and finally, finally seeing everything working is just a beautiful thing.
Good night devRant!1 -
Fucking bastard cunting customers I am not starting your shite at two minute to going home time, if you don't like go fuck yourself. #rant over16
-
Part 1: https://devrant.com/rants/4210605
So let's talk about these tasks we were assigned. Ms Reliable and Mr DDTW's friend who I just realized I haven't named yet were in charge of programming communications. Ms Enabler and Mr DDTW were in charge of creating the vehicle subclasses for the new variants we were instructed to build. Each one had to handle one variant, and we estimated that both of these would be about the same difficulty (Ms Enabler's one turned out to be a little harder).
I like Ms Enabler, and she's a good friend, although she isn't the best at problem solving and her strengths as a dev lie in her work ethic and the sheer amount of theory she knows and can apply. These just so happened to be the exact opposites of my strengths and weaknesses. Within a few days of having assigned the tasks, she came up to me asking for help, and I agreed. Over the following couple of weeks I'd put in quite a lot of hours reviewing the design with her, and we'd often end up pair programming. It was more work for me, but it was enjoyable and overall we were very efficient.
The other two girls in the group were also absolutely fine this sprint. They simply did the work they had to and let us know on time. Outside of some feedback, requests, bugfixes, and mediating disagreements, I didn't have to do anything with their tasks.
A week and half into the sprint and everybody else has their part almost in an MVP state. As Mr DDTW hadn't said or shown anything yet, I asked if he could push his stuff to the repo (he got stuck with this and needed help btw), and what does he have?
A piece of shit "go to this location" algorithm that did not work and was, once again, 150 lines of if statements. This would not have been such a massive deal if THE ENTIRE PREVIOUS SPRINT HAD BEEN DEDICATED TO MAKING THE CODE DO THIS IN A SENSIBLE WAY. Every single thing that this guy had written was already done. EVERY SINGLE THING. A single function call with the coordinates would let the vehicle do what he wrote but in a way THAT ACTUALLY WORKED AND MADE THE TINIEST BIT OF FUCKING SENSE. He had literally given so few shits about this entire goddamn project that he had absolutely zero clue about what we'd even done last sprint.
After letting this man civilly know through our group chat about his failures, giving him pointers on what's wrong and what he can use and telling him that he should fix it by the end of the week, his response?
"I'll try"
That was it. Fuckass was starting to block us now, and this was the first sign of activity he's given since the sprint started. Ms Enabler had finished her work a fucking week ago, and she actually ASKED when she ran into trouble or thought that something could be improved. Mr DDTW? He never asked for shit, any clarification, any help, and I had let everybody know that I'm open. At least the other two who didn't ask for shit ACTUALLY DID SOMETHING. He'd been an useless sack of shit for half a semester in three separate projects and the one time he's been assigned something half important that would impact our grades he does this. I would not stand for it.
I let him know all this, still civil (so no insults) but much less kind, capped with "Stop fooling around. Finish this by the of the week." which probably came off as a threat but his shithead kinda had it coming.
He was actually mad. Dropped a huge faux-apologetic spiel in the chat. Why couldn't I just trust him (his code was garbage and he was constantly late without explanation), his work was almost done (it wasn't and if he'd started he'd understand the scope of what he was assigned), that the problem was that I'm a condescending piece of shit (bruh), and was suddenly very interested in doing work. Literally everybody ignored him. What was funny was seeing the first questions and requests for help after that spiel. I obliged and actually answered what he asked.
The end of the week came and went he'd just uploaded more garbage that didn't work. I had foreseen this and, on top of everything else, had been preparing his section of the work done by myself and properly. Thus came a single commit from me with a working version of the entire module, unblocking the entire team. I cannot imagine the sheer hatred for this man at that moment for the commit message to simply be:
"judgement"
And with that, all I got was a threat to report me to the professor for sabotaging his work. The following day our group got an email from the professor, with no explanation, asking for an almost-immediate video conference. Group chat was a shitshow of panic, as nobody knew what was going on. Least of all Mr DDTW.
Once again, I'm approaching the word limit so to be continued in part 3 (hopefully of 3)7 -
I'm from the UK. My CS teacher took a dislike to me in junior high school, dissuading me from taking the classes I needed to take computer science at college. I ended up starting an economics major and then dropping out.
With the support of my family and friends I started over as a self taught as a developer.
I'm now a Tech Director in New York and love my job.5 -
I work in an unrelated field, and code in my spare time as I'm just starting out. Have to pay tbe bills somehow, amirite?
So my boss has installed cameras "for security", and uses them to monitor staff on a regular basis. A couple months ago he pulled me aside with a piece of paper. My "second written warning" (next step prior to dismissal) however I haven't received any other disciplinary action.
The warning contained 10 points, all of which made reference to observances over the damn cameras.
Please keep in mind -- I have been an overachieving empleyee for over 5 years, and friends with the bosses the whole time. My boss was in my wedding party.9 -
WHAT THE HELL??
It's been over TWO WEEKS now and my Arch sticker pack still has NOT arrived!!!
I'm really starting to get mad now.
Unlike the stickers, my brand new laptop has arrived. But as you might have guessed, it's completely useless at the moment.
Like, what's even the point of having a laptop with Arch, when you can't show everyone else you're using Arch? So humiliating, can't even go in public now with that laptop.
People in the cafeteria will look at the back of my laptop without knowing I'm using Arch. The shame... Almost inhuman.
My only option is to go to speak to everyone individually to tell them I'm using Arch.
However, that might be risky. Imagine if I would miss someone!? They would leave without knowing I was using Arch.
In fact, I might not even meet them EVER AGAIN! In that case they would NEVER know I was on Arch! OMG! TOO MUCH HORROR!!!
All this because of a shity manufacturer.
Manufacturers like this really piss me off.
Because YOU can NOT ship on time I have to WASTE precious time now, THANKS A LOT China Stickers Corporation.10 -
Recently I've been working on a side project and I've been working on it a lot over the last week, with lots of late nights.
My girlfriend said to me the other day, "do you not wanna give it a rest for a bit, you'll be starting your new job soon, you'll get fed up of it".
I then explained to her that, programming is on of those few careers where you'll continue to do programme and do side projects, even after a full day of it, and I couldn't imagine it any other way.
I can't wait to start work.. but then I also don't wanna lose out on project time 🙁4 -
Here's a genuine rant for you. Probably the only one I've ever made and ever will..
It's a bit depressing and covers a few topics so just read it, it's important.
*deep inhale*
So, with the help of my friend and my Nana, I was getting VR set up. (Oh, what joy.)
Now, I love everything about VR. But the thing is, I've had this damned headset since may (Dell MMR) and I haven't been able to use it. The reason for that is, something always came up that I needed to buy and this became a huge deal.
But let's start from the beginning.. I'm curentally fighting depression. I have been for months. My only income is what my Nana gives me ($150/mo) and what my friend ocasinally gives me.
Anyways, the first issue was that I couldn't afford the headset. This was find, as my friend would get it for me, and I would pay them back the following month. But, then, once I got the headset that's when the real problems started. First it was that I needed bluetooth, so I bought an adapter. Then I realized my entire CPU was incompatable, so I had to get a new tower and I went ahead and got a new GPU as well. I also got a charging kit for my headset (This ended up making me owe my Nana money). Then after all of that was settled, I learned that the evauation software lied, and my computer doesn't have USB 3, so I need that too but low and behold; both of my graphics cards cover my second pcie slot. So my options are to either try and rig up something, or to buy a cpu and psu for my third AMD PC which I had forgotten about during this whole ordeal..
This was soposed to help me with my depression and stress. Now I don't even want to get out of bed.
With all that said, I might be getting on SSI soon (I'm sure some of you are familar with that, and no I don't want to talk about it) and when that happens I might just leave behind tech (well, my PC and games) and all the stress and pain it's caused me over my life so this was all for nothing.
Honestly.. I'm just done with everything. To all the new faces around here; Hello! How are ya? To everyone else; You know me. I've been around for a while, though I'm not popular because I lurked and commented with Alice. You all probably noticed that I left a while back, and it was because I was trying to get out of tech. My reason for tech was that I was searching for something. I was always looking for the next game to sate me, or fill this gap in my life. I became a programmer because it gave me control were I lacked it otherwise. I made friends online because my anxiety prevented me from doing so in the real world.
But to what end? What have I acomplished? My twenty second birthday is next month. I've no job, I move from family member to famly member because I'm so fixated on becoming someone else to make something of myself.
I have my own ideals, but it seems that I push them aside to try (and fail to) impress others.
It's time for change. Of course, I can't do anything without money, so I'll have to wait for my SSI which I will get news on in August.
I hope this message came through how I meant it to. There is so much I want to say, but I've no words to say them. And btw, the VR thing is just one of manny issue that i've delt with (but certanly the most expensive)
Alice, Zennoe (Alexis, whom is not on devrant); I'm not giving up tech entirely. don't expect to suddenly not hear from me. I'm mostly just giving up my computer and games. More casually so for now, and them more seriously once I get on SSI. I'll still message you every/other day like I have been. <326 -
So this story is from my University days. I was in the 6th semester back then, studying CS.
My University website was pretty shitty. Basically it was one of those old ass website that said "Best viewed in IE8". Anyway, I was snooping about the website, trying to find some news regarding an event.
I logged into my account, and randomly browsed into the leave request portal. This was a basic HTML form where students could apply for leaves from the classes and see the status of the leaves, if they have been granted or not. I noticed that the link to the request portal from the student login welcome page was actually something like http://univ.com/student/index.php/..., here 1234567 was my student ID. Yep, it was hardcore into the page, and sent as a GET request on being clicked. That was their idea of authentication I guess. I change the student ID to someone else's, and it let me login as that person.
Long story short, I wrote a little python script to login as every person from the starting of student IDs, till the end, then submit a leave request with a random dumb reason like "can't come, at the strip club" or "going for sex change operation". What I did not know was that when a request is submitted, a text message is also sent to the student's guardians phone number. I ran the script.
That day, over 1000 parents received text messages from the University saying that their kids have applied for a leave from random date to random date for some retarded reason. It was a blast. Students were talking about how someone had "Hacked" into the system.4 -
Been working on this project for a month now. Everything is going fine, meetings are short and to the point. But then...
Client: "I'm leaving the project, this is the new person taking over."
Me: "Hello new client."
New client: "Burn it."
Me: "Uhm, what?"
New client: "Throw what you have away. It doesn't meet our new specifications. We're starting over."
Me: "Ok..." 🙃🔫3 -
I was engaged as a contractor to help a major bank convert its servers from physical to virtual. It was 2010, when virtual was starting to eclipse physical. The consulting firm the bank hired to oversee the project had already decided that the conversions would be performed by a piece of software made by another company with whom the consulting firm was in bed.
I was brought in as a Linux expert, and told to, "make it work." The selected software, I found out without a lot of effort or exposure, eats shit. With whip cream. Part of the plan was to, "right-size" filesystems down to new desired sizes, and we found out that was one of the many things it could not do. Also, it required root SSH access to the server being converted. Just garbage.
I was very frustrated by the imposition of this terrible software, and started to butt heads with the consulting firm's project manager assigned to our team. Finally, during project planning meetings, I put together a P2V solution made with a customized Linux Rescue CD, perl, rsync, and LVM.
The selected software took about 45 minutes to do an initial conversion to the VM, and about 25 minutes to do a subsequent sync, which was part of the plan, for the final sync before cutover.
The tool I built took about 5 minutes to do the initial conversion, and about 30-45 seconds to do the final sync, and was able to satisfy every business requirement the selected software was unable to meet, and about which the consultants just shrugged.
The project manager got wind of this, and tried to get them to release my contract. He told management what I had built, against his instructions. They did not release my contract. They hired more people and assigned them to me to help build this tool.
They traveled to me and we refined it down to a simple portable ISO that remained in use as the default method for Linux for years after I left.
Fast forward to 2015. I'm interviewing for the position I have now, and one of the guys on the tech screen call says he worked for the same bank later and used that tool I wrote, and loved it. I think it was his endorsement that pushed me over and got me an offer for $15K more than I asked for.4 -
Ok so a very quick background: I didn't get a job until I needed one after my phone broke and I didn't have the money to buy another one. (I'm a student still for those who don't know lol.)
>> Phone randomly breaks.
>> Don't have the money for a new one
>> Searches for low skill jobs (ie cashier) that would work with me in terms of how many hours I work and whenever those hours are.
>> Apply to like 15 (not even exaggerating either lol) jobs
>> Wait for responses
>> One day goes by. Nothing
>> Two days go by. Nothing
>> Three days go by. Nothing
>> Fourth day rolls around and I get a call about one. I answer, tell him I'm available starting that Monday.
>> (Keep in mind I'm on an old temporary phone)
>> Next day I buy a new phone (didn't have to pay anything up front aside from the taxes on it, as it's on a payment plan)
>> Reset old phone after usage
>> Monday rolls around and I drive to the location of the job, and walk in the door asking for x.
>> "I'm sorry sir, who? We don't have anyone here by that name."
>> I panic and hop in my car, and try to find the address of the store I applied to. I find out it's different than where I went.
>> Start driving there and call that phone number. I ask to speak to x.
>> "I'm sorry sir, there's nobody here by that name."
>> Call literally every other location in the city and ask for x, but nothing.
>> Since I'm already on the way, I drive to the location of the store I had applied to. Whenever I get there, the manager spends half an hour on the phone trying to figure out where I belong. Nothing.
>> By this point, it's well over an hour past whenever I was supposed to show up, so I gave up because I figured they probably wouldn't have hired me anyways.
>> I get home determined af to figure out who the hell called me.
>> I remembered that Verizon has call logs you can look at online.
>> I go back through it and find the number. Google it.
Here's where the story gets a lil funny now.
>> Number shows up for a store that I applied to who's name sounds a LOT like the first store.
>> Called them and explained what happened, and told them I'd be there asap if they still wanted me.
>> That was like 6 months ago and I'm still here lol8 -
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 -
- Another package from NY? More stickers?
- No. It's a ball this time!
People are starting to look weird at me over here...1 -
Soooo I think I have finally come to the point that I may have to create a YouTube channel, to teach software engineering from the ground up... and teach it the way the universities and everyone else should be teaching it, so that they have a solid foundation.... throwing hello world, and loops and variables at folks out of the box without any of the environment context or low level embedded register, even logic gate understanding
That lack of understanding is why, soooo many college students and younger folks, are actually pretty shitty engineers. Everything is high level languages and theoretical concepts to them. Nothing practical, that’s why there’s sooo many python and java developers that can’t for the life of them understand memory management, low level hardware interfacing etc, because the colleges don’t teach it the way it use to be taught.
I seriously fear 30 years from now or sooner when there are few embedded engineers only left till retirement, as without those folks the whole pyramid of electronics falls to pieces.
Java, C#, python, all that shit don’t run on the bare metal... there’s this magical layer of C, and assembler that does all the work just so folks can abstract their thoughts.
Either 1 of two situations will happen.. price of electronics will rise because the embedded guys are few and far between therefore salaries skyrocket... OR everything starts running shit like java on the metal, where there are a over abundance of developers, their salaries will be low because there are soo many but the processing power, space, and energy needed to run java natively causes electronics cost to increase
but regardless 30 years from now if those script kiddies are building everything I fear it cuz there’s gonna be memory leaks, and overflow issues everywhere.. shit be blowing up more than 4th of July.. lol
Soooo in effort to prevent that and keep the embedded engineers up, or atleast properly educate the script kiddies, I’m gonna make that YouTube channel.. 1 maybe 2 videos a week, 1-2 hours sessions each.. starting at the fucken ground and building up.39 -
One of the biggest reality checks you will run into when starting your first dev related job - and which they don't teach you about in school - is that a lot of the time will be spent working with other people's code, and rewriting it into "your own" is rarely an option.
You might be super into making things, but not everyone manages to maintain that same spark while taking over a 15 year old project with fundamental issues that have to be triaged "for now" because you need a hotfix on this other specific thing out in prod before lunch.
There are no gods now. They left the company years ago and nobody knows why they used the windows registry as a user repo.3 -
Why is it that when someone mentions they really like windows or that someone should/might want to install windows, hardly anything happens (maybe some funny comments from linuxers but no hate or anything) (same goes for OSX) but when someone makes the same comment about linux, they get burned into the ground as a 'Linux nazi'? I am not only talking about devRant (it happens here sometimes as well) but also about my study and real life.
If someone would mention that it might be useful to install windows or OSX over Linux, it was all good but the FUCKING SECOND I mention it might be useful (or other linuxers) to use/install Linux, we are immediately put away as Linux nazi's.
On devRant I've tried to keep this shit to myself because I don't want to start wars but I think I am going to quit doing that and actually show my fucking opinion. Yes, that might also result in some people seeing me as a fucking linux nazi but fuck being burned into the ground every time I give my opinion regarding this.
Fucking hell. (nothing personal to any devRanters by the way but I am starting to get really tired of this shit).40 -
Applied for a company and received a contract today. I can't believe what I'm looking at. (Graduate software engineer)
- £30k starting salary
- 28 days annual holiday
- no benefits whatsoever
- no work schemes
- reserve the right to tell you to work overtime without extra pay
- reserve the right to work you from home on weekends in emergencies
- you will only work on what they tell you to and nothing else
This company has awful reviews all over the internet which I didn't see until after applying.
Going into their offices for interviews, all I saw was a bunch of slaves on their screens, no one talking, no one smiling.
Spoke to the CTO whose words were, quote: "we only care about making money, we don't care what people are saying about us as long as they are using our service and paying us."
What the actual fuck?15 -
!rant
Hey guys I posted back in October that I was starting a hobby that I've always wanted to do making programming related videos and tutorials with a lofty goal of hitting 20 subs by end of the year and you all blew that goal in 24hrs! That sudden support really excited me to do more and I want to say thank you!
Now that it is released l really wanted to make a tutorial over the new Google Assistant API and it is now officially released this month. I'm hoping to make a multi-part series over developing for the assistant and Google home plat form. I'd really appreciate your support and feedback on how I can improve my channel and possible video topics you would might like to see.
https://youtube.com/watch/...
Thank you for your support DevRanters as always!8 -
I could bitch about XSLT again, as that was certainly painful, but that’s less about learning a skill and more about understanding someone else’s mental diarrhea, so let me pick something else.
My most painful learning experience was probably pointers, but not pointers in the usual sense of `char *ptr` in C and how they’re totally confusing at first. I mean, it was that too, but in addition it was how I had absolutely none of the background needed to understand them, not having any learning material (nor guidance), nor even a typical compiler to tell me what i was doing wrong — and on top of all of that, only being able to run code on a device that would crash/halt/freak out whenever i made a mistake. It was an absolute nightmare.
Here’s the story:
Someone gave me the game RACE for my TI-83 calculator, but it turned out to be an unlocked version, which means I could edit it and see the code. I discovered this later on by accident while trying to play it during class, and when I looked at it, all I saw was incomprehensible garbage. I closed it, and the game no longer worked. Looking back I must have changed something, but then I thought it was just magic. It took me a long time to get curious enough to look at it again.
But in the meantime, I ended up played with these “programs” a little, and made some really simple ones, and later some somewhat complex ones. So the next time I opened RACE again I kind of understood what it was doing.
Moving on, I spent a year learning TI-Basic, and eventually reached the limit of what it could do. Along the way, I learned that all of the really amazing games/utilities that were incredibly fast, had greyscale graphics, lowercase text, no runtime indicator, etc. were written in “Assembly,” so naturally I wanted to use that, too.
I had no idea what it was, but it was the obvious next step for me, so I started teaching myself. It was z80 Assembly, and there was practically no documents, resources, nothing helpful online.
I found the specs, and a few terrible docs and other sources, but with only one year of programming experience, I didn’t really understand what they were telling me. This was before stackoverflow, etc., too, so what little help I found was mostly from forum posts, IRC (mostly got ignored or made fun of), and reading other people’s source when I could find it. And usually that was less than clear.
And here’s where we dive into the specifics. Starting with so little experience, and in TI-Basic of all things, meant I had zero understanding of pointers, memory and addresses, the stack, heap, data structures, interrupts, clocks, etc. I had mastered everything TI-Basic offered, which astoundingly included arrays and matrices (six of each), but it hid everything else except basic logic and flow control. (No, there weren’t even functions; it has labels and goto.) It has 27 numeric variables (A-Z and theta, can store either float or complex numbers), 8 Lists (numeric arrays), 6 matricies (2d numeric arrays), 10 strings, and a few other things like “equations” and literal bitmap pictures.
Soo… I went from knowing only that to learning pointers. And pointer math. And data structures. And pointers to pointers, and the stack, and function calls, and all that goodness. And remember, I was learning and writing all of this in plain Assembly, in notepad (or on paper at school), not in C or C++ with a teacher, a textbook, SO, and an intelligent compiler with its incredibly helpful type checking and warnings. Just raw trial and error. I learned what I could from whatever cryptic sources I could find (and understand) online, and applied it.
But actually using what I learned? If a pointer was wrong, it resulted in unexpected behavior, memory corruption, freezes, etc. I didn’t have a debugger, an emulator, etc. I had notepad, the barebones compiler, and my calculator.
Also, iterating meant changing my code, recompiling, factory resetting my calculator (removing the battery for 30+ sec) because bugs usually froze it or corrupted something, then transferring the new program over, and finally running it. It was soo slowwwww. But I made steady progress.
Painful learning experience? Check.
Pointer hell? Absolutely.4 -
When starting a project at work:
My name everywhere. Every file, every change-list I proudly put my name to prove my skills.
Program goes for validation:
Thousands of bugs.
Realize that I've written shit code. Slowly removing my names from all over the code. -
Can someone tell who the fuck lets morons with absolutely 0 knowledge of how the industry works go on and write articles concerning "what programming languages to learn" clickbait articles?
Look, I never looked into them. Not even when starting, I knew (out of spite) that the people that built Windows Vista were developers and then I went ahead to look what a software engineer was. I went down the rabbit hole from that and my next step at the time (I was on the local library) was to go ahead and look for programming books, C++ and Java caught my eye, so I got them two books and went down. Later on I found about JS and Python and similar shit like that and I just continued to learn. I seldom bothered to learn from internet articles because to my opinion if I needed to read documentation then I might as well fucking read it from the people that designed X technology.
some were good, some were shit, etc etc, but I never bothered to look for "what programming languages to learn" articles because I could give close to two shits about some other dickhead telling me what to learn, I have always been rather hesitant to take other people's opinion into consideration when it comes to my own learning.
BUT today I clicked on one of those articles out of curiosity.....
"Many DEVELOPER (notice the lack of proper grammar) choose to leave Visual Basic in favor of more modern frameworks like C#, Java or .NET"
Ok, so, for whatever the fuck reason Java is mentioned along C# and a fucking framework (.NET) rather than just C# for microsoft shit, is this moron talking about VB.NET at all? is he going about VB6? what? what is going on here?
Obj C is not relevant at all and should be immediately replaced by Swift since it is a modern, and stable language (never mind that each release has breaking changes on entire code bases, yeah, fuck it, just jump alltogether and ignore Obj C and the decades of stable code it has)
"Coffeescript has been replaced by the newer features of Java" <--- ok fam, you lost me here, give me your "ITPro" card please and then kick yourself repeatedly in the groin since I won't be bothered touching you, i might get some stOOpid on me.
Fuck, these articles are all over the place, from idiots like the one above, to the moron raving about pharo smalltalk shitting on every tech you use.
Just.....please bring back shit like byte magazine and shit.....please? or Linux Format, make Linux Format more popular across the board, where people who know their shit think twice before spewing their bullshit to the masses? Some fucking kid there might want to know where to start and these fucking idiots are out there just ruining shit for everything.25