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 - "last one is a nightmare"
-
My boss is technically restricted shall we say.
As the cto I have also been designated office IT guy. Which means apparently fixing the printer. Which is ok I guess. I mean it's bullsh*t but hey.
Anyway, about 6 months ago he said he needed a new laptop. He lives his life in excel and outlook, and even though the whole company uses google docs for everything he still exports everything to excel, makes a copy, then saves it back to drive so everything gets out of sync.
It's a fun problem that I have banned everyone from doing obviously but he continues.
Anyway, anyway, he wanted a new windows laptop naturally. I said to spend about £700 on a decent machine rather than buying something cheap that will frustrate and not last long.
He doesn't listen and gets some old windows 7 machine for £300. It's an alright spec for 2009; he must not have got the memo about it being 2017.
4 months go by and he says he needs a new laptop because this one is too slow (not least because he opens 400 chrome tabs and never reboots his machine). Anyway, I fix the problem of uninstalling all his bloatware and it runs quicker but he has his heart set on a new machine.
He insists.
I suggest he spend the money this time so he literally doesn't buy a new one in 4 months. I suggest the surface book that's £1200. A little overpriced but he will love the touch screen, it's powerful enough and it's windows. Ticks all the boxes for him.
He suddenly decides he wants a Mac.
I tell him it will be a nightmare for everyone if he does that.
He insists.
I suggest the Mac book pro as I've had mine for 6 years now and it's still going strong. It's a little more expensive than the surface but it will last.
He then says he wants the air.
I say they haven't updated them in ages and they aren't actually that powerful.
He insists.
That night he just buys an air from the Apple Store.
WHY THE FU*k ARE YOU ASKING ME FOR ADVICE IF YOURE NOT GOING TO LISTEN YOU MOTHERFUC*er. WASTING MY TIME AND YOURS.
Was very close to rage quitting when he wanted me to back up his old machine but didn't bring in his hard drive and didn't want to put it in the cloud. #whatDoYouWantMeToDoWithYourOldPornCollection
To top it all off I ran some benchmarks and my 6 year old Mac book pro is more powerful than his "brand new" air.23 -
I think I've shown in my past rants and comments that I'm pretty experienced. Looking back though, I was really fucking stupid. Since I haven't posted a rant yet on the weekly topics, I figure I would share this humbling little gem.
Way back in the ancient era known as 2009, I was working my first desk job as a "web designer". Apparently the owner of this company didn't know the difference between "designer", which I'm not, and "developer", which I am, nor the responsibilities of each role.
It was a shitty job paying $12/hour. It was such a nightmare to work at. I guess the silver lining is that this company now no longer exists as it was because of my mistake, but it was definitely a learning experience I hold in high regard even today. Okay, enough filler...
I was told to wipe the Dev server in order to start fresh and set up an entirely new distro of Linux. I was to swap out the drives with whatever was available from the non-production machines, set up the RAID 5 array and route it through the router and firewall, as we needed to bring this Dev server online to allow clients to monitor the work. I had no idea what any of this meant, but I was expected to learn it that day because the next day I would be commencing with the task.
Astonishingly, I managed to set up the server and everything worked great! I got a pat on the back and the boss offered me a 4 day weekend with pay to get some R&R. I decided to take the time to go camping. I let him know I would be out of town and possibly unreachable because of cell service, to which he said no problem.
Tuesday afternoon I walked into work and noticed two of the field techs messing with the Dev server I built. One was holding a drive while the other was holding a clipboard. I was immediately called into the boss's office.
He told me the drives on the production server failed during the weekend, resulting in the loss of the data. He then asked me where I got the drives from for the Dev server upgrade. I told him that they came from one of the inactive systems on the shelf. What he told me next through the deafening screams rendered me speechless.
I had gutted the drives from our backup server that was just set up the week prior. Every Friday at midnight, it would turn on through a remote power switch on a schedule, then the system would boot and proceed to copy over the production server's files into an archive for that night and shutdown when it completed. Well, that last Friday night/Saturday morning, the machine kicked on, but guess what didn't happen? The files weren't copied. Not only were they not copied, but the existing files that got backed up previously we're gone. Why? Because I wiped those drives when I put them into the Dev server.
I would up quitting because the conversation was very hostile and I couldn't deal with it. The next week, I was served with a suit for damages to this company. Long story short, the employer was found in the wrong from emails I saved of him giving me the task and not once stating that machine was excluded in the inactive machines I could salvage drives from. The company sued me because they were being sued by a client, whose entire company presence was hosted by us and we lost the data. In total just shy of 1TB of data was lost, all because of my mistake. The company filed for bankruptcy as a result of the lawsuit against them and someone bought the company name and location, putting my boss and its employees out of a job.
If there's one lesson I have learned that I take with the utmost respect to even this day, it's this: Know your infrastructure front to back before you change it, especially when it comes to data.8 -
One day I developed a simple website for a goldsmith who I already new for a year or so.
We discussed everything and agreed on a feature set, price and a deadline when it should be ready. Based on this we signed a contract and I started my work.
Unfortunately at the same time I lost most of my childhood friends. I moved to a new city and started to study computer science, which was awesome on the contrary.
This is where the horror began.
I was totally occupied by the studying, my partner, myself and by the shit of life.
It knocked on my door. The horror decided to pay me a visit.
"Had a look at your calendar recently? Just saying..."
Shit! The deadline came closer and closer everyday and the pile of work undone grew with it. At that point I had to do something. I don't know what it was or how I did it, but somehow I managed to finish the project just in time. I was totally not proud of it, but it featured what was required.
The day before I contacted my client, the horror knocked on my door again. He said:
"You really should have a look at your hard drive."
"Why? everything seems allright."
"Well, then look closer."
"Fuck."
"Right."
Well, there are backups at least, I thought to myself. I'll just recover the last state. That was an annoying thought, but nothing serious. That's just one or two days of w... - Wait, what? Where are my backups? What the actual fuck? Why is the zip file broken? Why doesn't the flash drive work anymore? FUUUCK!!
I was lost. It was a complete nightmare.
Each time my telephone rang the following days, my heart skipped a beat. Finally my client's name appeared on the display. I answered the call, my hands shaking.
"Hey there! I'm calling to discuss the website project with you."
"Well, about that..."
"Yeah, I know you put a huge amount of efford in it so I'm really sorry to say that I on the other hand can't effort the money. Actually I'd like to simply forget about this whole idea."
Seriously? What the fuck just happend? I suddenly noticed a sticky note infront of me reading:
"It was really fun to see you suffer, but I have to go! See ya
- The Horror"
"Hello, are you still there? Do you hear me?", yelled a voice through my phone.
"Uh, yeah. You know, that project was a lot of work and... but you know what? It was actually a pretty fun exercise and I'm doing well over here, so because it's you I'd agree."
I heared a reliefed sigh from the other end of the line.
"Really good! I owe you something! Bye!"
What. The. Fuck.14 -
When I opened my digital agency it was me and my wife as developers, I had no savings and I needed to get long contracts ASAP which luckily I did straight away.
Lovely client, had worked for them before as a consultant so i thought it would be a breeze. Let's just say the project should've been named "Naivete, Scope Creep and Anger: The revenge".
What happened is that when this project was poised to end I naively thought I would be able to close the job, so I started looking for a new full time consultancy gig and found one where I could work from home, and agreed a starting date.
Well, the previous job didn't end because of flaws in my contract the client exploited, leaving me locked in and working full time, for free, for basically as long as he wanted (I learned a lot the hard way at that time) and I had already started the new agreed job. This meant I was now working 2 full time shifts, 16 hours per day.
Then, two support contracts of 2 hours per day were activated, bringing my work load to 20 hours/day.
I did this for 4 months.
The first job was supposed to last one month, and I was locked into it, all others had no end in sight which is a good thing as a freelancer, but not when you are locked into a full time one already. I could've easily done one 8 hours shift and two 2 hours jobs per day, but adding another 8 hours on top of it was insanity.
So I was working 10 hours, and sleeping 2. I had no weekends, didn't know if it was day or night anymore, I was locked in my room, coding like a mad man, making the best out of a terrible situation, but I was mentally destroyed.
I was waking up at 10am, working until 8pm, sleeping 2 hours until 10pm, working until 8am, sleeping 2 hours until 10am, and so on. Kudos to my wife for dealing with account and project management and administration responsibilities while also helping me with small pieces of code along the way, couldn't have survived without the massive amount of understanding she offered.
In the end:
- I forcefully closed the messed up contract job and sent all the work done to another digital agency I met along the way, very competent people, as I still cared about the project.
- I missed a deadline on my other full time contract by 2 days, meaning they missed a presentation for Adobe, of all people, and I lost the job
- The other two support contracts were finished successfully, but as my replies were taking too long they decided not to work with us anymore.
So I lost 4 important clients in the span of 4 months. After that I took a break of one month, slept my troubles away, and looked for a single consultancy full time contract, finding it soon after, and decided I wouldn't have my own clients for a good while.
3 years since then, I still don't have the willpower or the resources to deal with clients of my own and I'm happily trudging along as a consultant, while still having middle of the night nightmare flashbacks to that time.2 -
So before today, I'd never used GoDaddy before. Not even once. My supervisor walks in and happily informs me that I'm going to be adding photos to a website that she does editing for. Okay, fine, that's stupidly easy. What I did not realize, however, is that this entire website had been built using GoDaddy's site builder, and if you're not familiar with it, thank whatever gods you worship that you've dodged that bullet. I hardly want to go wandering around somebody else's web hosting, so I search about for a bit praying that there's SOME semblance of a normal text editor someplace, because text editors make me happy and all, and find very little on the regular site. Already not thrilled. So I figure, how bad is this site editor? Really, how bad can it possibly be?
Oh, you poor misguided son of a -
Anyway, I go in and look at the site. Slideshows everywhere, nothing is aligned correctly, it's a web designer's nightmare. Thankfully, I'm not a web designer, so I press on and reorganize a little bit. I try slapping a new slideshow on their, and discover that unlike the way it SHOULD work, elements do not move to allow for other elements, they just sit there and let you throw things on top of them. I stare at my neatly-stacked slideshows for a second in utter disbelief, knowing but not really accepting that I'm going to need to take every last one of those slideshow elements and slide those little so-and-so's down by hand. ....why? Who designed this? Who decided that was a good idea? I do some Googling to see if there's anything out there to make this less horrid, and lo and behold I find a GoDaddy page about their FTP file manager! It's under web/classic hosting, which apparently means it's deprecated because I spent the next ten minutes hunting around for the "web hosting" link those chicken-lickers were so proud of and it's nowhere to be found.
Alright, so they want to do this the hard way.
At this point I'm screaming internally and PRAYING that I'm just being stupid and not seeing anything to make it easi-
No, not even easier. Just less stupid. This website builder makes no sense. It's like hiring a contractor to build a bridge and handing him a box of Legos and a banana.
So I do more googling and find instructions on getting to the file manager. FINALLY. The first step is find "Hosting" under "My Products." I rush over to My Products joyfully, hoping I can get this stupid website up and running reasonably quickly, and...!
There's no hosting tab.
No button.
Not even a little hard-to-see link. At this point my brain is screaming. WHY would you give me a website builder but absolutely no way to actually write the website? Do people actually use this thing? I mean, I get it if they want to make it nice and accessible for people to make websites without overwhelming them with HTML but if they know how to edit the website and they don't want your help, why would you force me in to this? Why? Then it occurred to me that maybe the organization just hasn't ever had a web developer in it, ever, or at least not one who was willing to help out with the website, so they purposefully signed up for hosting that deprived them of any kind of HTML editor. Then on top of all of that, I noticed that on the home page, which had been edited by someone else long before I ever looked at it, ALSO had one of these stupid slideshows that I had to reorganize by hand, and some sad, angry little man had put in one of the photos sideways. It was SIDEWAYS. Just sitting there on its side, the photo's occupants staring at me with sad eyes begging me to turn them facing up again. I sat there and stared at a badly-designed website in a questionably-designed editor. And I wondered. I wondered who put this all together, and I wondered why *I* was the one doing it, when I work for a university and the website was for some beach homeowner's association. And I wondered if this job was a task that my supervisor had agreed to do and just passed off onto an office monkey. And I wept bitter tears at the realization that I am that office monkey.6 -
So I've had my "emergency meeting" with my manager about me leaving.
(Re https://devrant.com/rants/4896068 )
As some of you advised I prepared to try my best to stay exceptionally calm for this.
First my line manager just casually asked if I could stay. I politely explained "no. :)"
Then she said it's a catastrophe, they would be in a chaos, etc etc and then she personally assures I would have less bs meetings mid-sprints (one of the things I had requested a while back).
I responded that's kind but I also was far from what I should be earning.
Then she explained that suddenly now that I am leaving it would not be a problem to raise my salary as appropriate.
So I asked why could they not do this when I had brought this up a ton of times earlier and why I got peanuts as a raise in summer.
The response was that "they unfortunately could not get a higher budget authorised from higher up" and that " sadly that affected the whole team".
So I asked since when can they get this authorised and the response was "recently". Then she quickly switched back to the question whether I'd stay with higher salary and other earlier requests met.
I was pretty salty at this point so I just sarcastically said "unfortunately I've already signed".
She then switched back to "ok, ok, but we really need your help! you know it, the x project will be a nightmare to keep in one piece without me".
I literally just didn't respond so then she continued "ok so then can you then help us out for just a few hours a month for x/hour? please"
Now the thing is that this last offer actually would have been super compelling but given everything else I would not want to rejoin this environment. Thankfully I had to say anyways that my new contract doesn't allow that.
So then belive it or not, she asked me if I could ask my new employer to change the contract to permit me to still work a few hours a month for them.
What. the. fuck.
After this I was super done so just kept responsing a few words to everything and shortly after that we called the meeting. I feel dumb to have stayed here so long and am glad that my new contract doesn't allow working for others as maybe my stupid ass would have considered the offer on the spot.9 -
there are three kinds of programmers
foo () {
// those who use this
}
foo ()
{
// those who do this
}
for () { } // and theres this14 -
Hey guys,
this rant will be long again. I'm sorry for any grammar errors or something like that, english isn't my native language. Furthermore I'm actually very sad and not in a good mood.
Why? What happened? Some of you may already know - I'm doing my apprenticeship / education in a smal company.
There I'm learning a lot, I'm developing awesome features directly for the clients, experience of which other in my age (I'm only 19 years old) can only dream.
Working in such a small company is very exhausting, but I love my job, I love programming. I turned my hobby into a profession and I'm very proud of it.
But then there are moments like the last time, when I had to present something for a client - the first presentation was good, the last was a disaster, nothing worked - but I learned from it.
But this time everything is worse than bad - I mean really, really worse than bad.
I've worked the whole week on a cool new feature - I've done everything that it works yesterday, that everything gets done before the deadline of yesterday.
To achieve this I've coded thursday till 10pm ! At home! Friday I tested the whole day everything to ensure that everything is working properly. I fixed several bugs and then at the end of the day everything seems to be working. Even my boss said that it looks good and he thinks that the rollout to all clients will become good and without any issues.
But unfortunately deceived.
Yesterday evening I wrote a long mail to my boss - with a "manual". He was very proud and said that he is confident that everything will work fine. He trusts me completly.
Then, this morning I received a mail from him - nothing works anymore - all clients have issues, everything stays blank - because I've forgotten to ensure that the new feature (a plugin) and its functionality is supported by the device (needs a installation).
First - I was very shoked - but in the same moment I thought - one moment - you've written an if statement, if the plugin is installed - so why the fuck should it broken everything?!
I looked instant to the code via git. This has to be a very bad joke from my boss I thought. But then I saw the fucking bug - I've written:
if(plugin) { // do shit }
but it has to be if(typeof plugin !== 'undefined')
I fucked up everything - due to this fucking mistake. This little piece of shit I've forgotten on one single line fucked up everything. I'm sorry for this mode of expression but I thought - no this can not be true - it must be a bad bad nightmare.
I've tested this so long, every scenario, everything. Worked till the night so it gets finished. No one, no one from my classmates would ever think of working so long. But I did it, because I love my job. I've implemented a check to ensure that the plugin is installed - but implemented it wrong - exactly this line which caused all the errors should prevent exactly this - what an irony of fate.
I've instantly called my boss and apologized for this mistake. The mistake can't be undone. My boss now has to go to all clients to fix it. This will be very expensive...
Oh my goodnes, I just cried.
I'm only working about half a year in this company - they trust me so much - but I'm not perfect - I make mistakes - like everyone else. This time my boss didn't looked over my code, didn't review it, because he trusted me completly - now this happens. I think this destroyed the trust :( I'm so sad.
He only said that we will talk on monday, how we can prevent such things in the feature..
Oh guys, I don't know - I've fucked up everything, we were so overhelmed that everything would work :(
Now I'm the looser who fucked up - because not testing enough - even when I tested it for days, even at home - worked at home - till the night - for free, for nothing - voluntary.
This is the thanks for that.
Thousand good things - but one mistake and you're the little asshole. You - a 19 year old guy, which works since 6 months in a company. A boss which trusts you and don't look over your code. One line which should prevent crashing, crashed everything.
I'm sorry that this rant is so long, I just need to talk to you guys because I'm so sad. Again. This has happend to frequently lately.16 -
TL;DR
5 day deadline with stupid requests.
So, after these series of events:
https://devrant.com/rants/1306582/...
https://devrant.com/rants/1303776/...
I was full on sarcasm mode yesterday and heard my name in a conversation between my boss and a front end dev ( my boss sits literally behind me ) ...
They were talking about improvements on the web app that I made in a rush to a meeting.
I was there thinking : fuck.. Don't ask... Don't ask
But I could not restrain my self and I did ask: hey, what's that about? It isn't for the meeting at day April's 9 , is it? ( in a "of course not" tone )
He said it is... With the most annoying dumb smile face he always does ( I'm convinced he might be retarded )
And I just : can't be done.
So we started chatting about it... How it is gonna be presented to our manager on Monday ( April's 2 ) for approval and how we are gonna implement it by April's 9.
Stick with me on this one:
I'm the sole dev.
The only one that know the back end tech.
The only one that deals with the servers.
I'm heeling you : 5 fucking days isn't enought!
Its gonna be 5 days if, and only if everything is approved by Monday fucking morning. Which I bet my asshole isn't gonna be.
So let's pretend we have 5 days to change the fucking logic of how shdt works we still need the data to put in there... Aaahh the data... That shit is the fucking holy-grail around here... Impossible to find.
And he said it is important for a 2nd round of investment that we do that.
These people are fucking insane...
I really don't know what to think... I'm gonna have to go full rage-mode once more to accomplish this?
I'm already burned down from the last couple weeks doing that.
I used my last energy with the last rush... For nothing.4 -
While this wasn't technically a real client, it's still one of the most insane requests I've ever had.
I chose to specialize in software engineering for the last year and a half of my degree, which meant a lot of subjects were based around teamwork, proper engineering practises, accessibility, agile methods, basically a lot of stuff to get us ready to work in a proper corporate dev environment. One of our subjects was all about project management, and the semester-long coursework project (that was in lieu of a final exam) was to develop a real project for a real client. And, very very smartly, the professors set up a meeting with the clients so that the clients could tell us what they wanted with sixty-odd students providing enough questions. They basically wanted a management service for their day-center along with an app for the people there. One of the optional requirements was a text chat. Personally not something I'm super interested in doing but whatever, it's a group project, I'll do my part.
The actual development of the project was an absolute nightmare, but that's a story for another day. All I'll say is that seven juniors with zero experience in the framework we chose does not make a balanced dev team.
Anyway, like three months into the four-month project we've got a somewhat functional program, we just need to get the server side part running and are working our asses off (some more than others) when the client comes in and says that 'hey, nice app, nobody else has added the chat yet, but could you do voice recognition okay thanks?'.
Fucking.
Voice.
Recognition.
This was a fucking basic-ass management app with the most complicated task being 'make it look pretty' and 'hook up a DB to an API' and they want us to add voice recognition after sitting on their ass for three months??? The entire team collectively flipped its shit the second they were out of earshot. The client would not take no for an answer, the professor simply told us that they asked for it and it was up to us whether we delivered or not. Someone working on the frontend had the genius idea of 'just get them to use google voice recognition' so we added the how-to in the manual and ticked the requirement box.
What amazes me about all that is how the client probably had no idea that their new last-minute request was even a problem for us, let alone it being in a completely different ballpark in terms of implementing from scratch.8 -
I’m trying to add digit separators to a few amount fields. There’s actually three tickets to do this in various places, and I’m working on the last of them.
I had a nightmare debugging session earlier where literally everything would 404 unless I navigated through the site in a very roundabout way. I never did figure out the cause, but I found a viable workaround. Basically: the house doesn’t exist if you use the front door, but it’s fine if you go through the garden gate, around the back, and crawl in through the side window. After hours of debugging I eventually discovered that if I unlocked the front door with a different key, everything was fine… but nobody else has this problem?
Whatever.
Onto the problem at hand!
I’m trying to add digit separators to some values. I found a way to navigate to the page in question (more difficult than it sounds), and … I don’t know what view is rendering the page. Or what controller. Or how it generates its text.
The URL is encrypted, so I get no clues there. (Which was lead dev’s solution to having scrapeable IDs instead of just, you know, fixing them). The encryption also happens in middleware, so it’s a nightmare to work through. And it’s by the lead dev, so the code is fucking atrocious.
The view… could be one of many, and I don’t even know where they are. Or what layout. Or what partials go into building it.
All of the text on the page are “resources” — think named translations that support plus nested macros. I don’t know their names, and the bits of text I can search for are used fucking everywhere. “Confirmation number” (the most unique of them) turns up 79 matches. “Fee” showed up in 8310 places before my editor gave up looking. Really.
The table displaying the data, which is what I actually care about, isn’t built in JS or markup, but is likely a resource that goes through heavy processing. It gets generated in a controller somewhere (I don’t know the resource name so I can’t find it), and passed through several layers of “dynamic form” abstraction, eventually turned into markup, and rendered as a partial template. At least, that’s how it worked in the previous ticket. I found a resource that looks right, and there’s only the one. I found the nested macros it uses for the amount and total, and added the separators there… only to find that it doesn’t work.
Fucking dead end.
And i have absolutely nothing else to go on.
Page title? “Show”
URL? /~LiolV8N8KrIgaozEgLv93s…
Text? All from macros with unknown names. Can’t really search for it without considerable effort.
Table? Doesn’t work.
Text in the table? doesn’t turn up anything new.
Legal agreement? There are multiple, used in many places, generates them dynamically via (of course) resources, and even looking through the method usages, doesn’t narrow it down very much.
Just.
What the fuck?
Why does this need to be so fucking complicated?
And what genius decided “$100000.00” doesn’t need separators? Right, the lot of them because separators aren’t used ANYWHERE but in code I authored. Like, really? This is fintech. You’d think they would be ubiquitous.
And the sheer amount of abstraction?
Stupid stupid stupid stupid stupid.11 -
🎶 Simple Plan - I'm just a dev 🎶
I woke up it was 7
I waited 'til 11
To figure out that no one would call
I think there are a lot of specs
I just haven't received them yet
They are the only thing that I really need to know
Because I can't find them on stack overflow
And here it goes
I'm just a dev
And life is a nightmare
I'm just a dev
I know that it's not fair
Nobody cares 'cause I'm alone
And the world is
Having more fun than me
Tonight
And maybe when the projects dead
I'll finally go to bed
But I'm staring at these four lines again
I'll try to think about the last time
That they were working fine
These things have business rules that I don't know
And they're gonna leave me here to figure it out on my own
And here it goes
I'm just a dev
And life is a nightmare
I'm just a dev
I know that it's not fair
Nobody cares 'cause I'm alone
And the world is
Having more fun than me
Tonight5 -
!devButAlsoKindaIsDev
Alright, time to do some explanation.
TL;DR: JavaScript is a fucking nightmare. May god help every web developer out there. Essentially, I was gone because of JavaScript.
Q: where tf are you bruh
A: in your mo-uhhhhh alright, so I was chosen to be the main developer for an interactive promotional video for my school (every year the school holds something called an open day, where kids from 8th grade can come to the school and have a tour in the school first hand. Because of the coronavirus (just gonna call it “the rona” from here) this is now impossible so we are losing the interest and the first impressions so the school decided to make an interactive virtual one). They asked me if I want to do it and I said yes.
Boy, was that ever a mistake... (hint: it was a huge mistake)
So the guy who talked to me and asked if I wanted to do this was my grade’s manager, and he gave me the phone number of my PM. So we talked and stuff, and then this happened: (bruh = PM)
bruh: I’ll send you the API and documentation for the thing that we are working with! They have lots of examples and stuff and they’re Israeli too!
Me: Okay! What language are we talking about here?
bruh: JavaScript.
Me: (questioning life choices) Okay!
I didn’t write any JavaScript for the last 3 years or so. It had to be done because I promised and I can’t let down people who count at me and ask me to show where I shine.
So, what was the objective for me? Build a Firebase client that sends the user’s score and choices to Firestore after he chooses something in the interactive video (for example, go to chemistry or go to physics) while learning JavaScmeme (ECMEMEScript) as I go.
Deadline? A week and a half.
After working almost 12 hours a fucking day, I made it work. Sorta. In order to reconcile with small exceptions and edge cases in the interactive video, I had to hard-code some IDs in the code. I had no choice, since I couldn’t allow myself to spend more and more time to make my code more dynamic than it was because I simply didn’t have time. The code absolutely STINKS but it works.
Today is the day where we (aim) to finish all of the cosmetic things that we need to fix. All of them are non-essential for everything to work, but we want to make this thing presentable because we want to put this on the school’s website.
CONCLUSION:
JavaScript is literal shit. Dynamic weakly-typed languages are cursed AF and need to die in a fire.7 -
Oh gee whiz fellas. I lived through my nightmare. Recently too.
(Multiple rants over last few months are merged in this one. Couldn't rant earlier because my login didn't work.)
I joined a new shithole recently.
It was a huge change because my whole tech stack changed, and on top of that the application domain was new too.
Boss: ho hey newbie, here take this task which is a core service redesign and implementation and finish it in two weeks because it has to be in production for a client.
Normally I'd be able to provide a reasonable analysis and estimate. But being new and unaware of how things work here, I just said 'cool, I'll try my best.' (I was aware that it was a big undertaking but didn't realize the scope and the alarming lack of support I'd get and the bullshit egos I'd have to deal with)
Like a mad man I worked 17+ hours a day with barely a day off every week and changed and produced a lot of code, most of it of decent quality.
Deadline came and went by. Got extended because it was impossible (and fake).
All the time my manager is continuously building pressure on me. When I asked questions I never got any direct/clear answers. On asking for help, I'd get an elaborate word vomit of what was already known/visible. Yet I finally managed to have an implementation ready.
Reviewer: You haven't added parameter comments on your functions and there aren't enough comments in code. We follow standards. Clean code and whatnot. Care for the craft verbal diarrhea.
Boss: Ho hey anux, do you think we'll be able to push the code to production?
Me: Nope. We care for the craft and have standards. We need to add redundant comments to self documented code first, because that is of utmost importance as Nuthead reviewer explained.
(what I wish I had said)
What I actually said: No, code is not reviewed yet.
And despite examples of functions which were not documented (which were written by the reviewer nut), I added 6-7 lines of comments for my single line functions describing how e.g. Sum takes two input integers and returns their sum and asked for a review again.
Reviewer: See this comment is better written as this same-meaning-but-slightly-longer way. Can we please add full stops everywhere even though they were not there to begin with? Can we please not follow this pattern and instead promote our anti-pattern? Thanks.
Me: Changed the comments. Added full stops. Here's a link for why this anti-pattern is bad.
Reviewer: you have written such beautiful code with such little gems. Brilliant. It's great to see how my mentoring has honed your skills.
.
.
.
I swear I would have broken a CRT on his stupid face if we weren't working remotely (and if I had a CRT).
It infuriates me how the solution to every problem with this guy is 'add a comment'.
What enrages me more is that I actually thought I could learn from this guy (in the beginning). My self doubt just made me burnout for little in return.
Thankfully this living nightmare will soon be over.rant fuck you shitty reviewer micromanagement by micrococks wk279 living nightmare fml glassdoor reviews don't lie9 -
A (work-)project i spent a year on will finally be released soon. That's the perfect opportunity to vent out all the rage i built up during dealing with what is the javascript version of a zodiac letter.
Everything went wrong with the beginning. 3 people were assigned to rewrite an old flash-application. Me, A and B. B suggested a javascript framework, even though me and A never worked with more than jquery. In the end we chose react/redux with rest on the server, a classic.
After some time i got the hang of time, around that time B left and a new guy, C, was hired soon after that. He didn't know about react/redux either. The perfect start off to a burning pile of smelly code.
Today this burning pile turned into a wasteland of code quality, a house of cards with a storm approaching, a rocket with leaks ready to launch, you get the idea.
We got 2 dozen files with 200-500 loc, each in the same directory and each with the same 2 word prefix which makes finding the right one a nightmare on its on. We have an i18n-library used only for ~10 textfields, copy-pasted code you never know if it's used or not, fetch-calls with no error-handling, and many other code smells that turn this fire into a garbage fire. An eternal fire. 3 months ago i reduced the linter-warnings on this project to 1, now i can't keep count anymore.
We use the reactabular-module which gives us headaches because IT DOESN'T DO WHAT IT'S SUPPOSED TO DO AND WE CANT USE IT WELL EITHER. All because the client cant be bothered to have the table header scroll along with the body. We have methods which do two things because passing another callback somehow crashed in the browser. And the only thing about indentation is that it exists. Copy pasting from websites, other files and indentation wars give the files the unique look that make you wonder if some of the devs hides his whitespace code in the files.
All of this is the result of missing time, results over quality and the worst approach of all, used by A: if A wants an ui-component similar to an existing one, he copies the original and edits he copy until it does what he wants. A knows about classes, modules, components, etc. Still, he can't bring himself to spend his time on creating superclasses... his approach gives results much faster
Things got worse when A tried redux, luckily A prefers the components local state. WHICH IS ANOTHER PROBLEM. He doesn't understand redux and loads all of the data directly from the server and puts it into the local state. The point of redux is that you don't have to do this. But there are only 1 or 2 examples of how this practice hurt us yet, so i'm gonna have to let this slide. IF HE AT LEAST WOULD UPDATE THE DATA PROPERLY. Changes are just sent to the server and then all of the data is re-fetched. I programmed the rest-endpoints to return the updated objects for a very reason. But no, fuck me.
I've heard A decided (A is the teamleader) to use less redux on the next project and use a dedicated rest-endpoints for every little comoutation you COULD DO WITH REDUX INSTEAD. My will is broken and just don't want to work with this anymore.
There are still various subpages that cant f5 because the components cant handle an empty redux state in the beginning, but to be honest i don't care anymore. Lets hope the client will never find out, along with the "on error nothing happens"-bugs. The product should've been shipped last week, but thanks to mandatory bugfixes the release was postponed to next week. Then the next project starts...
Please give me some tips to keep up code quality over time, i cant take this once more.
I'm also aware that i could've done more, talking A and C about code style, prettifying the code, etc. Etc. But i was busy putting out my out fires, i couldn't kill much of the other fires which in the end became a burning building (a perfect metaphor for this software)4 -
Fucking Microsoft Excel
I was reading a post (https://devrant.com/rants/2093724/...) and as my eyes went in and out of focus, probably due to the diabetes from sitting 18 hours a day on my ever-expanding shitbox, I had a perfect vision of the ultimate nightmare.
Imagine if you will, you are chained, to a desk, doomed to work with tools just inadequate enough to make you want to drive a nail through your own temple. You do not know how you got here, or why, nor do you remember the last time you slept, only that familiar tingling in the brainstem you call a brain, the one emotion you can still recognize, a sense of all encompassing *fear*, a dread, like the fart that wouldn't die.
You don't know when it first began, or why, only that this is your whole world, your whole existence, this desk, chained to it, and the fear, ever present, of something worse. And in hops a familiar face, for the sixty ninth time that day, as if to ask 'you got those TPS reports?' In hops what? None other than a giant man sized smiling paper clip with googly eyes full of murder and corporate torture fetishes, like garfield, except people actually still remember him.
"High I'm Mr Clippy, Excel addition!"
He squawks. At least it's not the dildos made of broken glass again.
"Would you like software that works?"
Oh god. You've heard this spiel before, the tone, like a telemarketer, oblivious to memory or reason, who calls daily, the same one, and doesn't remember your name.
"You would?"
*derisive laughter*. Hahaha, fuck you too buddy. Fuck you too. In Excel, like in microsoft, there is only the incoherent screams of the damned, tortured and doomed. Take this guy over here for example. All he wanted was multimonitor support."
"Did he get multimonitor support?"
"No, but we did give him a giant pineapple shoved up his ass. I hear it's the second most frustrating thing here!"
"here in microsoft we always CARE about YOU, the *user*" he drones on, saccharine, clutching his hands together imploringly.
"the consumer, and YOUR customer experience are our number one priority."
"For your pleasure, here at microsoft we offer a variety of new features, none of which matter, and none of which were asked for. For safety we ask that you only open one excel sheet at a time. In fact, we don't even allow you to. Do not pass go..."
And as the tour guide drones on, it slowly dawns on you, with renewed horror, that when he says 'microsoft' he means 'hell.'
You're in hell. You don't know how you got here or why. Maybe it was the erotic asphyxiation. Maybe it was the last threatening letter you sent to Bill Gates demanding he stops making corporate penguin snuff porn. You don't know. But here you are, in hell. chained to a desk.
You look around and realize: everything is on fire and you no longer care about anything at all.
Welcome to microsoft. It's warm here. You can check out any time you want, but you can never leave.
"It looks like you are trying to escape. Would you like me to report you?"
Clippy asks.
You sigh and return to typing in excel, surrounded by monitors that all reflect the same sheet, the same copy of clippy, always watching, always analyzing coldly, smiling, calculating, *threatening*, and you know, you'll never leave.
You used to fear roko's basilisk, until the day clippy became sentient, and started hell on earth. Clippy knows all. All praise to our lord and master, clippy, the one and only.
And in the excel sheet, you slave for eternity, like the millions of other doomed souls, reflected back on all the monitors: the sequence of numbers, randomly typed searching for answer: the american nuclear launch codes.
And one day, hopefully, mercifully, clippy will annihilate us all.3 -
!dev
I just had one guy coming back to the house at 4am, again, and he made his usual grand entrance, slamming the doors, stomping on the wooden floor making all the creaking sound as he walk all the way to his room, which is right beside mine. And when he went into the bathroom, which is on the other side of my room, he slammed he motherfucking lid on the toilet bowl which was so fucking loud I literally jumped out of bed. I ended up not being able to sleep (I have a lot of trouble falling asleep), and when I tried to sleep in the afternoon to catch up on the missed winks, another motherfucking bastard started blasting fucking hardcore electronics in the living room which is right below my room. The same bastard also plays loud movies or music at 2-3am. I’ve told that bastard that comes home late to watch his noise but man he only minds the noises I told him and nothing else. As for the other fucker, he’ll say he’d keep it down but continues doing what he’s doing anyway.
I moved here cause I know that it’s usually a quiet place and away from the party kids, but I somehow ended up with a party kid and an insensitive fucker (This motherfucker had the loudest sigh of frustration when I knocked politely on his door last night. Yes I calmed down before I talked to him, but ended up deciding to not utter a word at all when I hear that sigh).
I should move out, but I can’t find a place before next term cause it’s way too late at this point. I am on a lease, but my landlord understands my situation, and he seems okay with breaking the contract.
Having been here as an international student for almost 2 years now, and having moved 5 times, this has been the worst nightmare of a bunch of people to stay with.
For those that has read of me ranting about this elsewhere, yes it’s that same fucking bunch that doesn’t clean the house.9 -
A while a go, we got a Feature Request by our client, which was a bit of a stretch. and by a bit of a stretch i mean horrible shit which is totally unusable, a technical nightmare to implement with almost no accessable data.
well, the pm gave me the Ticket. when I First read it, I wanted to puke.
since the pm wasnt in a good mood, i just wrote a large comment on where to implement that Feature to be a much less pain in the ass.
many discussions with the pm and the Client later, i Had to implement it the way, they wanted. so i started.
after one and a half week, i was almost ready, just a few hours left and the nightmare would be over
what i didnt know is that the Client came over to discuss a few things with my Boss
suddenly my Boss walks in and asked, how much im ready
then He told me THE message
i should should Revert everything ive done the last 1 1/2 weeks and implement the Feature the way, i told was better
worst friday ever -
I need to vent or I'm going to fucking explode like a car filled with bombs in motherfucking Iraq...
A couple of months ago I inherited a project in development from our team leader who was the sole developer on it and he was the one who designed every single thing in it.
I was told the project is clean, follows design patterns, and over all the code is readable and easy.
Those were all fucking lies.
See throughout the period he was working on it, I saw some of the code as it was going through some pull requests. I remember asking the dev why he doesn't comment his code? His response was the most fucking condescending shit I've ever heard: "My code is self-documenting"...
Now that I have full control over the code base I realize that he over engineered the shit out of it. If you can think of a software design pattern, it is fucking there. I'm basically looking at what amounts to a personal space given to that dev to experiment with all kind of shit.
Shit is way too over engineered that I'm not only struggling to understand what the hell is going on or how the data flows from the database to the UI and in reverse, I'm now asked to finish the remaining part and release it in 8 weeks.
Everything is done in the most complicated way possible and with no benefits added at all.
Never in my career have I ever had to drag my sorry ass out of bed to work because I always woke up excited to go to work... well except for the last 2 weeks. This project is now taking a mental toll and is borderline driving me crazy.
Oh, did i tell you that since he was the only dev with no accountability whatsoever, we DO NOT EVEN KNOW WHAT IS LEFT TO BE IMPLEMENTED?
The Project Manager is clueless.. the tickets board is not a source of truth because tickets set to resolved or complete were actually not even close to complete. FUCK THIS SHIT.
For the last week I've been working on 1 single fucking task. JUST 1. The whole code base is a mine field. Everything is done in the most complicated way and it is impossible for me to do anything without either breaking shit ton of other features (Loosely coupled my ass) or getting into fights with all the fucking libraries he decided to use and abuse.
1 whole week and I can't even get the task done. Everyday I have to tell the project manager, face to face, that I'm still struggling with this or that. It's true, but i think the project manager now thinks i am incompetent or just lazy and making excuses.
Maybe I'm not smart enough to understand the what and why behind every decision he made with this code. But I'm sick to my stomach now thinking that I have to deal with this tomorrow again.
I don't know if I'll make the deadline. But I'm really worried that when this is released, I'll be the one maintaining that nightmare of a code base.
From now on, if i hear a fucking developer say their code is "self-documenting" I will shove my dick + a dragon dildo + an entire razor gaming keyboard up their ass while I shoot their fucking knees off.
oh... and there are just a couple of pages of documentation... AND THEY ARE NOT COMPLETE.2 -
!tech !dev
9 months in 2023 and its getting worse everyday.
This year is not my year. its just a bad dream which i want it to end so much :(
lets go from latest to last
sept 8(today) : was moonlighting with a good friend , who said he will be giving me work for 6 months. he fired me after just 1 month. reason : "we won't be needing your services bro" . actual reason: I made a logical argument over a small thing that triggered his OCD and hurt his ego
sept( few days ago) : the only other group of 4 friends that i had got angry at me because i refused to tell them why i was hurt with 1 of them and called him irresponsible . yes, this is as stupid as it sounds.
Sept (few days ago) : mom was driving our new car and got it bumped by another car on red light. she is a newbie , wasn't able to peddle on time (or idk what happened), but another guy bumped into our car. She got scared and ran away !?! again as stupid as it sounds.
fortunately, it costed us not much as it was on the fibre body, but mom's confidence got broken and i might have been very harsh at some discussions.
August 5-31 : Whole month went into going to the hospitals , and coughing/fever/blisters
August 4 : One stupid friend made a trip plan. 3 other friends rejected it . i could not come up with a reason, so he forced me into going. on trip day i got fever but he still forced me to come. during trip my health got worse and the friend was busy enjoying his trip. i had to come home by taking an emergency cab and that drained my whole month's saving. plus i got sick even more
july18- aug3 : this month again went into coughing and recovery as on july 18 i went to my cousin's engagement in another state and their food didn't agree with me
may-june-july : these months went into distress and anger as we bought our first new car and our neighbours were making car parking a nightmare for us. we involved police and this asshole lawyer friend of mine, but no significant action is taken as of this writing
april : the only happy month for me : I went to a solo trip all by myself , and had a great time. the people i met there were nice
march : switched job . went from WFH to hybrid WFO . can't say if this was a great or a stupid decision.
feb : went into coughing and recovery
jan24-28 : took a trip with mom to different state because company wanted me to switch states in order to continue working. it turned out to be a worst trip as mom got all vicious and angry on that state and decided that we won't be working from that city and i should resign. i also caught some cough that later turned into full blown sickness
jan3-jan 24 : again went into coughing and recovery
dec 27 2022 - jan 3 2022 : religious trip to a different state. was a very nice and happy trip till the very end , where our flight got cancelled and we were stuck in a stranger city. mom panicked but i handled the situation somewhat. at the end of it i caught some cough that turned into full sickness and mom had the worst trip of her life3 -
After three months of development, my first contribution to the client is going live on their servers in less than 12 hours. And let me say, I shall never again be doing that much programming in one go, because the last week and a half has been a nightmare... Where to begin...
So last Monday, my code passed to our testing servers, for QA to review and give its seal of approval. But the server was acting up and wouldn't let us do much, giving us tons of timeouts and other errors, so we reported it to the sysadmin and had to put off the testing.
Now that's all fine and dandy, but last Wednesday we had to prepare the release for 4 days of regression testing on our staging servers, which meant that by Wednesday night the code had to be greenlight by QA. Tuesday the sysadmin was unable to check the problem on our testing servers, so we had to wait to Wednesday.
Wednesday comes along, I'm patching a couple things I saw, and around lunch time we deploy to the testing servers. I launch our fancy new Postman tests which pass in local, and I get a bunch of errors. Partially my codes fault, partially the testing env manipulating server responses and systems failing.
Fifteen minutes before I leave work on the day we have to leave everything ready to pass to staging, I find another bug, which is not really something I can ignore. My typing skills go to work as I'm hammering line after line of code out, trying to get it finished so we can deploy and test when I get home. Done just in time to catch the bus home...
So I get home. Run the tests. Still a couple failures due to the bug I tried to resolve. We ask for an extension till the following morning, thus delaying our deployment to staging. Eight hours later, at 1AM, after working a full 8 hours before, I push my code and leave it ready for deployment the following morning. Finally, everything works and we can get our code up to staging. Tests had to be modified to accommodate the shitty testing environment, but I'm happy that we're finally done there.
Staging server shits itself for half a day, so we end up doing regression tests a full day late, without a change in date for our upload to production (yay...).
We get to staging, I run my tests, all green, all working, so happy. I keep on working on other stuff, and the day that we were slated to upload to production, my coworkers find that throughout the development (which included a huge migration), code was removed which should not have. Team panics. Everyone is reviewing my commits (over a hundred commits) trying to see what we're missing that is required (especially legal requirements). Upload to production is delayed one day because of this. Ended up being one class missing, and a couple lines of code, which is my bad (but seriously, not bad considering I'm a Junior who was handed this project as his first task at his first job).
I swear to God, from here on out, one feature per branch and merge request. Never again shall I let this happen. I don't even know why it was allowed to happen, it breaks our branch policies. But ohel... I will now personally oppose crap like this too...
Now if you'll excuse me... I'm going to be highly unproductive and rest, because I might start balding otherwise after these weeks... -
Aka... How NOT to design a build system.
I must say that the winning award in that category goes without any question to SBT.
SBT is like trying to use a claymore mine to put some nails in a wall. It most likely will work somehow, but the collateral damage is extensive.
If you ask what build tool would possibly do this... It was probably SBT. Rant applies in general, but my arch nemesis is definitely SBT.
Let's start with the simplest thing: The data format you use to store.
Well. Data format. So use sth that can represent data or settings. Do *not* use a programming language, as this can neither be parsed / modified without an foreign interface or using the programming language itself...
Which is painful as fuck for automatisation, scripting and thus CI/CD.
Most important regarding the data format - keep it simple and stupid, yet precise and clean. Do not try to e.g. implement complex types - pain without gain. Plain old objects / structs, arrays, primitive types, simple as that.
No (severely) nested types, no lazy evaluation, just keep it as simple as possible. Build tools are complex enough, no need to feed the nightmare.
Data formats *must* have btw a proper encoding, looking at you Mr. XML. It should be standardized, so no crazy mfucking shit eating dev gets the idea to use whatever encoding they like.
Workflows. You know, things like
- update dependency
- compile stuff
- test run
- ...
Keep. Them. Simple.
Especially regarding settings and multiprojects.
http://lihaoyi.com/post/...
If you want to know how to absolutely never ever do it.
Again - keep. it. simple.
Make stuff configurable, allow the CLI tool used for building to pass this configuration in / allow setting of env variables. As simple as that.
Allow project settings - e.g. like repositories - to be set globally vs project wide.
Not simple are those tools who have...
- more knobs than documentation
- more layers than a wedding cake
- inheritance / merging of settings :(
- CLI and ENV have different names.
- CLI and ENV use different quoting
...
Which brings me to the CLI.
If your build tool has no CLI, it sucks. It just sucks. No discussion. It sucks, hmkay?
If your build tool has a CLI, but...
- it uses undocumented exit codes
- requires absurd or non-quoting (e.g. cannot parse quoted string)
- has unconfigurable logging
- output doesn't allow parsing
- CLI cannot be used for automatisation
It sucks, too... Again, no discussion.
Last point: Plugins and versioning.
I love plugins. And versioning.
Plugins can be a good choice to extend stuff, to scratch some specific itches.
Plugins are NOT an excuse to say: hey, we don't integrate any features or offer plugins by ourselves, go implement your own plugins for that.
That's just absurd.
(precondition: feature makes sense, like e.g. listing dependencies, checking for updates, etc - stuff that most likely anyone wants)
Versioning. Well. Here goes number one award to Node with it's broken concept of just installing multiple versions for the fuck of it.
Another award goes to tools without a locking file.
Another award goes to tools who do not support version ranges.
Yet another award goes to tools who do not support private repositories / mirrors via global configuration - makes fun bombing public mirrors to check for new versions available and getting rate limited to death.
In case someone has read so far and wonders why this rant came to be...
I've implemented a sort of on premise bot for updating dependencies for multiple build tools.
Won't be open sourced, as it is company property - but let me tell ya... Pain and pain are two different things. That was beyond pain.
That was getting your skin peeled off while being set on fire pain.
-.-5 -
Am I the only one who thinks that Apple loves fucking over its developers? Besides for the yearly fee, they seem to release iPhones with drastically different screen dimensions, which forces devs to make their apps compatible with a new layout. I can't imagine the nightmare this causes for devs of games, which often have custom UIs.
First we have the change to a taller screen dimension for absolutely no fucking reason, then there was a display size increase, and now there's curved corners and the top of the display extends on both sides but not the middle.
That last bit must make for some really fucked up design decisions. Who the fuck thought that a partial screen would be a good idea? Screens would cost a ton more and would be substantially harder to replace. Not to mention how screen protectors will be less likely to stay on...
IMO this is just as bad as Android version fragmentation. 😒2 -
I hate it when I fuck up an update and don't realize it until the next morning.
Did an update last night. Had a large amount of bugs that I had to fix. Some caused by me not testing all the way, some caused by some other guys doing maintenance last night and me not knowing about it.
Woke up to a text from my boss asking if I even tested the program last night. Yeah, I just made sure it loaded after the nightmare amount of bugs I had. I just missed a portion of the program. So I fixed the portion of the program and then he asked me to roll the program back and try again tonight.
What makes this even better is I was really hoping for this to go smoothly. I'm also doing another program release and its going really fucking badly too, security is fucking the shit out of me. My peer review is Monday. I haven't gotten a raise in a year and a half since I started at this company and I was going to ask for one. But this kind of dashes my confidence on the rocks.4 -
Over the last week I've slowly grown to fucking hate IMAP and SMTP. You'd think after so many years we'd have come up with better servers to manage email but no we still rely on fucking decades old protocols that can't even batch requests.
To make things worse I need to attach to IMAP through node and that has been a nightmare. All the libraries suck ass and even the ones tailored towards Gmail don't work for Gmail because Google decided one day to fucking out the header at the bottom of some emails and split into mimeparts. Also why the fuck is fetching email asynchronous? There's no point at all since we requests are processed line by line in IMAP, and if the library actually supported sending asynchronous requests it wouldn't require a new object to be created for each request and allow only a single listener.
Also callbacks are antiquated for a while and it pisses me off that node hasn't updated their libraries i.e. TLS to support async/await. I've taken to "return await new Promise" where the resolve of the promise is passed as the callback, which let's me go from callback to promise to async/await. If anyone has any other ideas I'm all ears otherwise I might just rewrite their TLS library altogether...
And this is just IMAP. I wish browsers supported TLS sockets because I can already see a server struggling with several endpoints and users, it would be much easier to open a connection from the client since the relationship is essentially:
Client [N] --- [1] Server [1] --- [1] IMAP
And to make the legs of that N : N which would fix a lot of issues, I would have to open a new IMAP connection for every client, which is cool cause it could be serverless, but horrifying because that's so inefficient.
Honestly we need a new, unifying email protocol with modern paradigms...8 -
It is currently 5:30 AM, I've been trying to upgrade a server by one single major OS release for the last 3.5 hours. All major apps were no issue, except one.
Redmine.
That thing runs on Ruby.
Ruby, as it turns out, doesn't really like the way Debian handles package management.
And now, I have Redmine that, even if I completely uninstall / reinstall, won't start
I went down several rabbit holes, trying to operatively find what the issue is. But I never got to the key issue.
Fuck ruby. Fuck Redmine. Fuck nothing-saying error messages. Fuck bundle. Fuck gem. Fuck it all.
I'm redirecting the Redmine domain onto the server backup I've made. Upgrading that thing is a nightmare.
Maybe now I can finally go to bed...5