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 - "why did i agree to this"
-
I absolutely HATE "web developers" who call you in to fix their FooBar'd mess, yet can't stop themselves from dictating what you should and shouldn't do, especially when they have no idea what they're doing.
So I get called in to a job improving the performance of a Magento site (and let's just say I have no love for Magento for a number of reasons) because this "developer" enabled Redis and expected everything to be lightning fast. Maybe he thought "Redis" was the name of a magical sorcerer living in the server. A master conjurer capable of weaving mystical time-altering spells to inexplicably improve the performance. Who knows?
This guy claims he spent "months" trying to figure out why the website couldn't load faster than 7 seconds at best, and his employer is demanding a resolution so he stops losing conversions. I usually try to avoid Magento because of all the headaches that come with it, but I figured "sure, why not?" I mean, he built the website less than a year ago, so how bad can it really be? Well...let's see how fast you all can facepalm:
1.) The website was built brand new on Magento 1.9.2.4...what? I mean, if this were built a few years back, that would be a different story, but building a fresh Magento website in 2017 in 1.x? I asked him why he did that...his answer absolutely floored me: "because PHP 5.5 was the best choice at the time for speed and performance..." What?!
2.) The ONLY optimization done on the website was Redis cache being enabled. No merged CSS/JS, no use of a CDN, no image optimization, no gzip, no expires rules. Just Redis...
3.) Now to say the website was poorly coded was an understatement. This wasn't the worst coding I've seen, but it was far from acceptable. There was no organization whatsoever. Templates and skin assets are being called from across 12 different locations on the server, making tracking down and finding a snippet to fix downright annoying.
But not only that, the home page itself had 83 custom database queries to load the products on the page. He said this was so he could load products from several different categories and custom tables to show on the page. I asked him why he didn't just call a few join queries, and he had no idea what I was talking about.
4.) Almost every image on the website was a .PNG file, 2000x2000 px and lossless. The home page alone was 22MB just from images.
There were several other issues, but those 4 should be enough to paint a good picture. The client wanted this all done in a week for less than $500. We laughed. But we agreed on the price only because of a long relationship and because they have some referrals they got us in the door with. But we told them it would get done on our time, not theirs. So I copied the website to our server as a test bed and got to work.
After numerous hours of bug fixes, recoding queries, disabling Redis and opting for higher innodb cache (more on that later), image optimization, js/css/html combining, render-unblocking and minification, lazyloading images tweaking Magento to work with PHP7, installing OpCache and setting up basic htaccess optimizations, we smash the loading time down to 1.2 seconds total, and most of that time was for external JavaScript plugins deemed "necessary". Time to First Byte went from a staggering 2.2 seconds to about 45ms. Needless to say, we kicked its ass.
So I show their developer the changes and he's stunned. He says he'll tell the hosting provider create a new server set up to migrate the optimized site over and cut over to, because taking the live website down for maintenance for even an hour or two in the middle of the night is "unacceptable".
So trying to be cool about it, I tell him I'd be happy to configure the server to the exact specifications needed. He says "we can't do that". I look at him confused. "What do you mean we 'can't'?" He tells me that even though this is a dedicated server, the provider doesn't allow any access other than a jailed shell account and cPanel access. What?! This is a company averaging 3 million+ per year in revenue. Why don't they have an IT manager overseeing everything? Apparently for them, they're too cheap for that, so they went with a "managed dedicated server", "managed" apparently meaning "you only get to use it like a shared host".
So after countless phone calls arguing with the hosting provider, they agree to make our changes. Then the client's developer starts getting nasty out of nowhere. He says my optimizations are not acceptable because I'm not using Redis cache, and now the client is threatening to walk away without paying us.
So I guess the overall message from this rant is not so much about the situation, but the developer and countless others like him that are clueless, but try to speak from a position of authority.
If we as developers don't stop challenging each other in a measuring contest and learn to let go when we need help, we can get a lot more done and prevent losing clients. </rant>14 -
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 -
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 -
!!politics
My employer held a company wide zoom meeting today. It was officially optional, but like 90% of the company attended.
It started out interesting as they had invited a speaker, but it quickly degraded into a gigantic political circlejerk. It was an hour and a half of bashing everyone who doesn’t hold exactly their views, calling them evil, calling them nazis, radicals, militants, racists, etc. — and I don’t share their views, like, at all, so. That really lets me know how they feel!
As far as I can tell, everyone else at the company has the same ideology. Not only does this make me incredibly uncomfortable and require me to act and pretend at all times, it’s honestly kind of infuriating, too. The amount of insults they throw around and blatant lack of tolerance displayed by these “tolerant” people is just incredible.
To them, anyone that doesn’t hold exactly their beliefs is evil, and often a slew of other things, too. And it doesn’t seem to matter how far removed those views are; apparently libertarians are evil as well? Apparently “leave everyone alone” is evil and gets you branded as a militant far-righty? Like, how does that even work? They ascribe to “everyone who doesn’t agree with me is literally Hitler,” I guess.
Fucking hell I can’t stand these people and their politics. And when they all get going on it together? Just. Fucking toxic.
I’ve been so disgusted today after sitting in on that meeting I’ve gotten practically nothing done. And I was so hoping to finally finish this stupid ticket.
Oh, and Mr. PM wants that screwdriver to do even more things now — by next week, of course. Fucking hell.
Why did I switch jobs, again?
Right, to get away from the politics.
Fucking hell.rant root attends a meeeting political circlejerk aka “meeting” politics toxic workplace office politics on steroids office politics66 -
My code review nightmare part 3
Performed a review on/against a workplace 'nemesis'. I didn't follow the department standards document (cause I could care less about spacing, sorted usings, etc) and identified over 80 bugs, logic errors, n+1 patterns, memory leaks (yes, even in .net devs can cause em'), and general bad behavior (ex.'eating' exceptions that should be handled or at least logged)
Because 'Jeff' was considered a golden child (that's another long TL;DR), his boss and others took a major offense and demanded I justify my review, item by item.
About 2 hours into the meeting, our department mgr realized embarrassing Jeff any further wasn't doing anyone any good and decided to take matters into his own hands. Thinking 'well, its about time he did his job', I go back to my desk. About an hour later..
Mgr: "I need you in the conference room, RIGHT NOW!"
<oh crap>
Mgr: "I spoke to Jeff and I think I know what the problem is. Did you ever train him on any of the problems you identified in the review?"
Me: "Um, no. Why would I?"
Mgr: "Ha!..I was right. So lets agree the problems are partially your fault, OK?"
Me: "Finding the bugs in his code is somehow my fault?"
Mgr: "Yes! For example, the n+1 problem in using the WCF service, you never trained him on how to use the service. You wrote the service, correct?"
Me: "Yes, but it's not my job to teach him how to write C#. I documented the process and have examples in the document to avoid n+1. All he had to do was copy/paste."
Mgr: "But you never sat with Jeff and talked to him like a human being? You sit over there in your silo and are oblivious to the problems you cause. This ends today!"
Me: "What the...I have no idea what you are talking about. What in the world did Jeff tell you?"
Mgr: "He told me enough and I'm putting an end to it. I want a compressive training class developed on how to use your service. I'll give you a month to get your act together and properly train these developers."
3 days later, I submit the power-point presentation and accompanying docs. It was only one WCF with a handful of methods. Mgr approved the training, etc..etc. execute the 'training', and Jeff submits a code review a couple of weeks later. From over 80 issues to around 50. The poop hits the fan again.
Mgr: "What's your problem? When are you going to take your responsibility seriously?"
Me: "Its pretty clear I don't have the problem. All the review items were also verified by other devs. Its not me trying to be an asshole."
Mgr: "Enough with the excuses. If you think you can do a better job *you* make the code changes and submit them for Jeff for review. No More Excuses!"
Couple of days later, I make the changes, submit them for review, and Jeff really couldn't say too much other than "I don't see this as an improvement"
TL;DR, I had been tracking the errors generated by the site due to the bugs prior to my changes. After deployment, # of errors went from thousands per hour to maybe hundreds per day (that's another story) and the site saw significant performance increases, fewer customer complaints, etc..etc.
At a company event, the department VP hands out special recognition awards:
VP: "This award is especially well earned. Not only does this individual exemplify the company's focus on teamwork, he also went above and beyond the call of duty to serve our customers. Jeff, come on up and get this well deserved award."19 -
“Don’t learn multiple languages at the same time”
Ignored that. Suddently I understood why he said that. Mixed both languages. In holiday rechecked it and it was ok.
Sometimes mistakes can lead to good things. After relearning I understood it much better.
“Don’t learn things by head” was another one. Because that’s useless. If you want to learn a language, try to understand it.
I fully agree with that. I started that way too learning what x did what y did, ... But after a few I found out this was inutile. Since then, I only have problems with Git
Another one. At release of Swift, my code was written in Obj-C. But I would like to adopt Swift. This was in my first year of iOS development, if I can even call it development. I used these things called “Converters”. But 3/4 was wrong and caused bugs. But the Issues in swift could handle that for me. After some time one told me “Stop doing that. Try to write it yourself.”
One of the last ones: “Try to contribute to open source software, instead of creating your own version of it. You won’t reinvent the wheel right? This could also be usefull for other users.”
Next: “If something doesn’t work the first time, don’t give up. Create Backups” As I did that multiple times and simply deleted the source files. By once I had a problem no iOS project worked. Didn’t found why. I was about to delete my Mac. Because of Apple’s WWDR certificate. Since then I started Git. Git is a new way of living.
Reaching the end: “We are developers. Not designers. We can’t do both. If a client asks for another design because they don’t like the current one tell them to hire one” - Remebers me one of my previous rants about the PDF “design”
Last one: “Clients suck. They will always complain. They need a new function. They don’t need that... And after that they wont bill ya for that. Because they think it’s no work.”
Sorry, forgot this one: “Always add backdoors. Many times clients wont pay and resell it or reuse it. With backdoors you can prohibit that.”
I think these are all things I loved they said to me. Probably forgot some. -
Worst hack/attack I had to deal with?
Worst, or funniest. A partnership with a Canadian company got turned upside down and our company decided to 'part ways' by simply not returning his phone calls/emails, etc. A big 'jerk move' IMO, but all I was responsible for was a web portal into our system (submitting orders, inventory, etc).
After the separation, I removed the login permissions, but the ex-partner system was set up to 'ping' our site for various updates and we were logging the failed login attempts, maybe 5 a day or so. Our network admin got tired of seeing that error in his logs and reached out to the VP (responsible for the 'break up') and requested he tell the partner their system is still trying to login and stop it. Couple of days later, we were getting random 300, 500, 1000 failed login attempts (causing automated emails to notify that there was a problem). The partner knew that we were likely getting alerted, and kept up the barage. When alerts get high enough, they are sent to the IT-VP, which gets a whole bunch of people involved.
VP-Marketing: "Why are you allowing them into our system?! Cut them off, NOW!"
Me: "I'm not letting them in, I'm stopping them, hence the login error."
VP-Marketing: "That jackass said he will keep trying to get into our system unless we pay him $10,000. Just turn those machines off!"
VP-IT : "We can't. They serve our other international partners."
<slams hand on table>
VP-Marketing: "I don't fucking believe this! How the fuck did you let this happen!?"
VP-IT: "Yes, you shouldn't have allowed the partner into our system to begin with. What are you going to do to fix this situation?"
Me: "Um, we've been testing for months already went live some time ago. I didn't know you defaulted on the contract until last week. 'Jake' is likely running a script. He'll get bored of doing that and in a couple of weeks, he'll stop. I say lets ignore him. This really a network problem, not a coding problem."
IT-MGR: "Now..now...lets not make excuses and point fingers. It's time to fix your code."
IT-VP: "I agree. We're not going to let anyone blackmail us. Make it happen."
So I figure out the partner's IP address, and hard-code the value in my service so it doesn't log the login failure (if IP = '10.50.etc and so on' major hack job). That worked for a couple of days, then (I suspect) the ISP re-assigned a new IP and the errors started up again.
After a few angry emails from the 'powers-that-be', our network admin stops by my desk.
D: "Dude, I'm sorry, I've been so busy. I just heard and I wished they had told me what was going on. I'm going to block his entire domain and send a request to the ISP to shut him down. This was my problem to fix, you should have never been involved."
After 'D' worked his mojo, the errors stopped.
Month later, 'D' gave me an update. He was still logging the traffic from the partner's system (the ISP wanted extensive logs to prove the customer was abusing their service) and like magic one day, it all stopped. ~2 weeks after the 'break up'.8 -
This is more of a wishful thinking scenario......but language/tech stack/whatever bashing.
Look, I get it, we like development, we would not be here if we didn't like it. But as my good friend @Stuxnet has mentioned in the past, making this a personality trait is fucking retarded, lame, small, and overall pathetic. I agree with this sentiment 100%
Because of this a lot of people have form some sort of elitist viewpoint concerning the technologies that people use, be it Java, C#, C++, Rust, PHP, JS, whatever, the same circle jerk of bashing on shit just seems completely fucking retarded. I am hoping for a new mentality being that most of us are younger, even if you are a 50+ year old developer, maturity should give you a different perspective, but alas, immaturity and a bitchy attitude carried throughout years of self dick sucking implications would render this null.
I could not give two fucks if the dude next to me is coding his shit in whatever as long as best practices are followed, proper documentation is enforced, results are being brought to our customers(which regardless of how much you try to convince us, none of your customers are fucking elite level) and happiness is ensured, then so fucking be it.
Gripes bitches and complaints are understandable, I dislike a couple of things about my favorite tools, and often wish certain features be involved in my particular tech stacks, does this make stuff bad? no, does it make me or anyone else less of a developer,? no so why give a fuck? bitch when shit bites you in the ass when someone does not know what the fuck they are doing with a language that permits writing bullshit. Which to be honest ALL of them fucking allow. Not one is saved from this. But NOT knowing how to work a solution, or NOT understanding a tech stack does not give you AUTOMATIC FULL insight on how x technology operates, thinking as such is so fucking arrogant and annoying.
But I am getting tired of looking at posts from Timmy, a 18 year old "dev" from whothefuckcares bitch about shit when they have never even made a fucking penny out of their "development" endeavors just because they read some dickhead's opinion on the internet regarding x tech stack and believes that adopting their bullshit troll ass virgin ideas makes them l337.
Get your own fucking opinion on things, be aggressive and stand fucking straight, maybe get some fucking pussy(or dick, whatever) and for fucks's sake learn to interact with other fucking human beings, take a fucking run, play games, break out from your whinny bitch ass shell, talk to that person that intimidates you, take a run, do yoga, martial arts anything that would break you out from being such a small little bitch.
Just fucking do something that keeps you from shitting on people 24/7 365/ a year.
We used to bitch about incompetent managers, shit bosses, fucking ludicrous assignments. Retarded shit that some other dev did, etc, etc. Seems like every other fucking retard getting into this community starts with stupid ass JS/PHP/Python/Java/C#/ whatever jokes and you idiots keep upvoting that shit. Makes those n00bs gain credability. Fuck me shit is so pathetic.
basically, make dev rant great again.
No fuck off and have a beer, or tea or whatever y'all drink.13 -
"four million dollars"
TL;DR. Seriously, It's way too long.
That's all the management really cares about, apparently.
It all started when there were heated, war faced discussions with a major client this weekend (coonts, I tell ye) and it was decided that a stupid, out of context customisation POC had that was hacked together by the "customisation and delivery " (they know to do neither) team needed to be merged with the product (a hot, lumpy cluster fuck, made in a technology so old that even the great creators (namely Goo-fucking-gle) decided that it was their worst mistake ever and stopped supporting it (or even considering its existence at this point)).
Today morning, I my manager calls me and announces that I'm the lucky fuck who gets to do this shit.
Now being the defacto got admin to our team (after the last lead left, I was the only one with adequate experience), I suggested to my manager "boss, here's a light bulb. Why don't we just create a new branch for the fuckers and ask them to merge their shite with our shite and then all we'll have to do it build the mixed up shite to create an even smellier pile of shite and feed it to the customer".
"I agree with you mahaDev (when haven't you said that, coont), but the thing is <insert random manger talk here> so we're the ones who'll have to do it (again, when haven't you said that, coont)"
I said fine. Send me the details. He forwarded me a mail, which contained context not amounting to half a syllable of the word "context". I pinged the guy who developed the hack. He gave me nothing but a link to his code repo. I said give me details. He simply said "I've sent the repo details, what else do you require?"
1st motherfucker.
Dafuq? Dude, gimme some spice. Dafuq you done? Dafuq libraries you used? Dafuq APIs you used? Where Dafuq did you get this old ass checkout on which you've made these changes? AND DAFUQ IS THIS TOOL SUPPOSED TO DO AND HOW DOES IT AFFECT MY PRODUCT?
Anyway, since I didn't get a lot of info, I set about trying to just merge the code blindly and fix all conflicts, assuming that no new libraries/APIs have been used and the code is compatible with our master code base.
Enter delivery head. 2nd motherfucker.
This coont neither has technical knowledge nor the common sense to ask someone who knows his shit to help out with the technical stuff.
I find out that this was the half assed moron who agreed to a 3 day timeline (and our build takes around 13 hours to complete, end to end). Because fuck testing. They validated the their tool, we've tested our product. There's no way it can fail when we make a hybrid cocktail that will make the elephants foot look like a frikkin mojito!
Anywho, he comes by every half-mother fucking-hour and asks whether the build has been triggered.
Bitch. I have no clue what is going on and your people apparently don't have the time to give a fuck. How in the world do you expect me to finish this in 5 minutes?
Anyway, after I compile for the first time after merging, I see enough compilations to last a frikkin life time. I kid you not, I scrolled for a complete minute before reaching the last one.
Again, my assumption was that there are no library or dependency changes, neither did I know the fact that the dude implemented using completely different libraries altogether in some places.
Now I know it's my fault for not checking myself, but I was already having a bad day.
I then proceeded to have a little tantrum. In the middle of the floor, because I DIDN'T HAVE A CLUE WHAT CHANGES WERE MADE AND NOBODY CARED ENOUGH TO GIVE A FUCKING FUCK ABOUT THE DAMN FUCK.
Lo and behold, everyone's at my service now. I get all things clarified, takes around an hour and a half of my time (could have been done in 20 minutes had someone given me the complete info) to find out all I need to know and proceed to remove all compilation problems.
Hurrah. In my frustration, I forgot to push some changes, and because of some weird shit in our build framework, the build failed in Jenkins. Multiple times. Even though the exact same code was working on my local setup (cliche, I know).
In any case, it was sometime during sorting out this mess did I come to know that the reason why the 2nd motherfucker accepted the 3 day deadline was because the total bill being slapped to the customer is four fucking million USD.
Greed. Wow. The fucker just sacrificed everyone's day and night (his team and the next) for 4mil. And my manager and director agreed. Four fucking million dollars. I don't get to see a penny of it, I work for peanut shells, for 15 hours, you'll get bonuses and commissions, the fucking junior Dev earns more than me, but my manager says I'm the MVP of the team, all I get is a thanks and a bad rating for this hike cycle.
4mil usd, I learnt today, is enough to make you lick the smelly, hairy balls of a Neanderthal even though the money isn't truly yours.4 -
In my unenlightened youth, when programming was a module in my college diploma that didn't seem to be taking me where I wanted to go, I had a couple of guys guy in my class that could arguably be the weird ones.
Jonny, although he asserted that he was to be called "Jonhty", whatever, we never did. He was pretty much top of the high school food chain and for some reason elected to study computer science, none of us was prepared to put up with his shit. He was always boasting about some fanciful claim or another, famously entering the classroom and exclaiming he'd "fucked an absolute milf" and seemed somewhat evasive about the answer, turns out he was 17 and she was 35, the age difference was greater than his own age. We burst out laughing. He would also turn up late and state the college bus was late (it wasn't I got the free bus every day, he'd just not got out his wanking chariot early enough).
One valentine's day we got him a card from a mysterious stranger which was accompanied by a package containing a cucumber and Vaseline, the inside of the card read "to assist you in the following request: please go fuck yourself".
Before you think we were being unduly harsh, we had a centre table where we'd be taught from with computers around the outer rim of the room. He'd come up behind people while at the centre desk, quietly press ctrl+P and slowly walk back to the printer. I saw him do it to my machine and I got to the printer first, to which he shouted "that's MY work" which was amusing because unbeknownst to him I had put headers on all my documents so he really didn't have an answer for why my name was at the top of every page.
To top it all off he had dead eyes, there didn't appear to be much going on but the rent, there was no spark of intelligent life, and while I thought it, I never said it out loud, but other students did and I had to agree. He was just copying his way to graduation. However, he ultimately didn't graduate when people refused to allow him to copy.
Another guy, Richard I believe his name was, which is just as well because he was a right dick. In the UK our word for white trash is "chav" (that's a very naïve explanation for it but that's another rant best left for "socialsciencerant") and he was an complete idiot who was gifted with more brain cells than he ever needed to use. He actually studied hard and got reasonable grades, probably on par with me, but he boasted about smoking weed all the time, he was forever playing dark side of the moon via his loud mp3 player. I kinda left him alone generally until he was high in class one time and while we we're watching a documentary he'd shake my chair and make a weird noise in my ear every few minutes, the first couple of times startled me, the remaining multi-dozen times pissed me off.
It all came to a head with this guy when I'd been hearing about his uninteresting bs on drugs, music and how best to spend my time ("you need to lighten up man, come round my house, take a joint and relax man", that sorta thing), well this guy walked like he was mid way through shitting himself so I personally think that perhaps he is too chilled. Anyway he's arguing with me and after the exchange of him making his point, me disagreeing and expecting the end of it, he made the mistake of saying two words to me:
"Listen, mate..."
And I had him in check mate.
"Listen, I ain't your fucking mate , I don't even like you, you're a disruptive annoying twat that thinks he knows it all, we're all 17, none of us know anything, so shut the fuck up, sit the fuck down and stop boring me with your drugs, I ain't interested, and for the record I think pink Floyd ruined prog rock!"
He looked at me with sad puppy dog eyes, and started with the "but, why?", However I was interrupted and had to leave the class for unrelated reasons, I returned to be told he'd put safety pins up right on my chair so I'd sit on them, and mutual friends who TD me I'd been cruel and that he doesn't was hurt, so I should apologize, he overheard and said he was sorry for bring a bit of a dick.
However, you just know when you don't get on with someone? Yeah, that. So I said I wasn't sorry for what I said, for while it was harsh, I am not his mate, nor did I want to be his mate and that was all I had to say on the subject, and that if he wants to take offensive to a nobody not liking him then he's in for a very rough time in life.
Unsurprisingly I don't keep in touch with anyone from college!2 -
Linux is shit, OSX and iOS are trash, windows is the only OS that actually works, open source is always inferior to closed source, if you use VPN or encryption youre a criminal, java is slow, vim worse than nano, ..
Now that I've got your attention and you probably raged and downvoted.
Downvotes don't actually work on devrant. (not a bug)
This has been going on for months already - why have that function to begin with, if its just not fucking working? The usual answer to people throwing a fit is "just downvote it", WHY? it doesnt fucking work.
For a while specific options while downvoting DID actually work, but now any of the downvote options are just straight trashed and ignored, they are saved, dont get me wrong (or else it would be too obvious), but they dont affect any of the scores at all.
I understand mass bot downvoting should be prevented, but why take away anyones voice by completely ignoring downvotes. I really dont get it, its not "punishing" the creator of said post or comment, its simply reflecting what the users actually think of said comment or post, it boils my blood how thats even a thing, I am honestly disappointed.
Why should also downvoting something hide it from the feed (especially on the "recent" filter), let me fucking decide what I want on my feed via option then atleast. What if I don't agree with a rant, downvote it, but then want to see what others thought of it? how am I supposed to find it again?24 -
tldr:
first year in college we programmed 24 hrs straight to fix somebody's mess before the deadline. Decided not to screw him over, instead he claimed to have done everything and we failed the assignment.
Long version:
var group= new[]{"Mike", "Gavin", "Gus", "I", "Ben" };
var client = "Jack"';
First year of college we had an assignment to make a web program for somebody.
Ben wanted to join our group and he already knew a client so we let him join.
After joining Ben wanted to be project lead, but we already decided Mike based on his experience.
Ben claimed to be much better in every way than Mike at and kept coming with stuff the following weeks why we should make him project lead. He kept pointing out when Mike did something wrong and he even came with an audio file where he clearly made jack say that he wanted Ben to be project lead .
After that we were all a bit pissed and told him that he should get it in his head that he was not going to be project lead and just start working on his part of the assignment.
We also found out that Ben was a documentation addict, what we could write in a small paragraph, he wrote a whole page about it. No joke, I rewrote a page of his in 5-6 rows with the same information in it.
No problem you thing, wrong! Because of this he kept bothering us arguing and claiming that our documentation was wrong because it was to short.
In the week of the deadline we asked Ben if he was also done, and told us that he was done for a while now.
The day before the deadline we came to school thinking we only had to do some merging and finishing up documentation.
Then we found out that Ben has almost nothing, and what he had the IDE was screaming that it was incorrect, spaces in Id's and css class names for instance. A really good programmer, my ass!
We were so pissed off at this point, but we had 24 hrs and needed to come up with a plan to fix it.
We decided that Mike and I were going to fix Ben his shit in the coming 24 hrs and Ben was going to make our last bit of documentation because we would not have the time for that, Especially if we had to argue with him like we had to do for each bit of documentation. Gus did not have time and Gavin could not program on his own yet, he wanted to help, but helping him help us would cost more time than we had.
We all went home after that and Mike and I started to program 24 hours straight while in a Skype call, making what Ben had 2 months for. Shortly before the deadline Mike looked at our finishing up documentation received from Ben and told me it was "Okay" and zipped everything up and uploaded it to school with a few minutes to spare.
After that we thought everything was good, we made Ben's part work and delivered it in time. We also decided not to throw Ben under the bus, because this would hurt all our grades because we did not work good as a group since we should have noticed it earlier.
A few weeks go by till the assessment.
The assessment start with asking if we want individual grades or as a group when you all think you did equal amount. We choose as a group, because if we chose individual not only Ben but also Gavin would get a lower grade and we did not think that was fair because he tried so hard.
We demo the product and the teachers are positive. When the teachers start about the documentation, the first thing they tell is that they found something interesting in the documentation, and they read it to us:
"I, Ben, have made all the documentation because my group did not want to."
That was so far from the truth, we all did make our documentation about the parts we made. Yes he did do overall a little bit more because every single bit of documentation we had to argue with him, so every time he volunteers to make it, we would all agree. And he made Mike's and i's last bit of documentation.
Telling the teachers on that point would not have mattered, it would only have hurt is in another way, so we did not and all failed the assignment. And we all felt like to strangle him.
This is now a few years back, but i still want too.1 -
So i just had an interesting conversation.
View source images in comments
So some background. I used to do a lot of Minecraft development and server configuration. And Minecraft being made of mostly 12-year-olds they really don't pay very well. So I moved on from Minecraft but someone reached out for me to do their configuration for their server. (this was about a month ago) and I quoted them 40/hr because that's what I charge for my web dev work. So he promptly declined and I thought that was that. But tonight he messaged me and found a 5 month old post saying how I was looking to do free development work in order to get experience. And here is how the converstion when.
(His name is "Candy")
Candy:
Lol
Trying to take advantage of me with your bullshit $40/hour claims
Which is outright laughable
https://mc-market.org/threads/...
”I am looking for a network to stay long-term with and help/see it grow into a bigger server. (I would expect pay later down the road if we work together on an ongoing basis)”
—
Quoting your MC-Market post.
What do you have to say for yourself? Trying to take advantage of people?
Going to say something else completely delusional or own up to the fact that you were trying to take advantage of me?
I already knew you were, but now I have the hard evidence.
As I am not a stupid person.
Not only did your friend lie, but you tried to take advantage of me, thinking I was stupid enough to fall for your $40/hour bullshit for basic configuration work. MineSaga charges $30.00 an hour on the high. Don’t even try to do the same shit you did to me to anyone else. It won’t work.
Me:I was interested in doing plugin development and learning so I offered my services for free so I could learn in a more real environment. I no longer do minecraft plugins rather I am a web developer and my rate is $40/hr I am good at configuration which is why i contacted you but I am not going to lower my rate because it is "simpler" work. Just like how you can higher a prostitute to wash your car but it would be cheaper to get the kid from around the block to do it. Also not sure what your end goal is here. I gave you my rate and you didn't agree with it. So you should just move on. Plus this is the minecraft world let me know when you get to the real world so you you can pay in big boy money.
Candy:
So your configuration work for minecraft is $40/h as well?
Lol
Absolutely hilarious.
Me:
did you not read my message?
"I am not going to lower my rate because it is "simpler" work."
Candy:
Who were your most recent clients?
Me:
i'm not going to give you that information
Candy:
Because you know you are lying to me with your crazy rates, and if you aren't, that means you have near to no clients.
Yet another lie.
Me:
keep telling yourself that buddy
Candy:
Lol
Good luck getting any more clients.
rip
Me:
?
I get more clients all the time
They just are not in your realm of your minecraft imagination where you can pay a developer 20$/hr
Candy:
I just strongly disagree with the fact that you are charging $40/hour for configurative work
xD
Me:
Okay
But why even contact me? Did you really think trying to "Call me out" was going to have me lower my rates or something.
Just get over it
Candy:
I haven't called you out and overcharging like that to others in the minecraft realm for a significant gain in money for work that is not worth nearly that amount is absolutely delusional.
I would recommend you stop making up false assumptions
Me: What ever you say
I left it at that. There was some more stuff but it was not that interesting so i left it out5 -
Fucking kill me. I've just agreed to make a shitty fucking app that would be better as a Webpage, using shitty fucking technologies I don't understand, to do a thing that would be better handled by a third party.
You know why? The guy who asked me to do it is a good friend, and I'm the "best (only) code monkey" he knows. FUCK MY LIFE.
At least I'm getting payed7 -
PayPal = GayPal
PHASE 1
1. I create my personal gaypal account
2. I use my real data
3. Try to link my debit card, denied
4. Call gaypal support via international phone number
5. Guy asks me for my full name email phone number debit card street address, all confirmed and verified
6. Finally i can add my card
PAHSE 2
7. Now the account is temporarily limited and in review, for absolutely no fucking reason, need 3 days for it to be done
8. Five (5) days later still limited i cant deposit or withdraw money
9. Call gaypal support again via phone number, burn my phone bill
10. Guy tells me to wait for 3 days and he'll resolve it
PHASE 3
11. One (1) day later (and not 3), i wake up from a yellow account to a red account where my account is now permanently limited WITHOUT ANY FUCKING REASON WHY
12. They blocked my card and forever blocked my name from using gaypal
13. I contact them on twitter to tell me what their fucking problem is and they tell me this:
"Hi there, thank you for being so patient while your conversation was being escalated to me. I understand from your messages that your PayPal account has been permanently limited, I appreciate this can be concerning. Sometimes PayPal makes the decision to end a relationship with a customer if we believe there has been a violation of our terms of service or if a customer's business or business practices pose a high risk to PayPal or the PayPal community. This type of decision isn’t something we do lightly, and I can assure you that we fully review all factors of an account before making this type of decision. While I appreciate that you don’t agree with the outcome, this is something that would have been fully reviewed and we would be unable to change it. If there are funds on your balance, they can be held for up to 180 days from when you received your most recent payment. This is to reduce the impact of any disputes or chargebacks being filed against you. After this point, you will then receive an email with more information on accessing your balance.
As you can appreciate, I would not be able to share the exact reason why the account was permanently limited as I cannot provide any account-specific information on Twitter for security reasons. Also, we may not be able to share additional information with you as our reviews are based on confidential criteria, and we have no obligation to disclose the details of our risk management or security procedures or our confidential information to you. As you can no longer use our services, I recommend researching payment processors you can use going forward. I aplogise for any inconvenience caused."
PHASE 4
14. I see they basically replied in context of "fuck you and suck my fucking dick". So I reply aggressively:
"That seems like you're a fraudulent company robbing people. The fact that you can't tell me what exactly have i broken for your terms of service, means you're hiding something, because i haven't broken anything. I have NOT violated your terms of service. Prove to me that i have. Your words and confidentially means nothing. CALL MY NUMBER and talk to me privately and explain to me what the problem is. Go 1 on 1 with the account owner and lets talk
You have no right to block my financial statements for 180 days WITHOUT A REASON. I am NOT going to wait 6 months to get my money out
Had i done something wrong or violated your terms of service, I would admit it and not bother trying to get my account back. But knowing i did nothing wrong AND STILL GOT BLOCKED, i will not back down without getting my money out or a reason what the problem is.
Do you understand?"
15. They reply:
"I regret that we're unable to provide you with the answer you're looking for with this. As no additional information can be provided on this topic, any additional questions pertaining to this issue would yield no further responses. Thank you for your time, and I wish you the best of luck in utilizing another payment processor."
16. ARE YOU FUCKING KIDDING ME? I AM BLOCKED FOR NO FUCKING REASON, THEY TOOK MY MONEY AND DONT GIVE A FUCK TO ANSWER WHY THEY DID THAT?
HOW CAN I FILE A LAWSUIT AGAINST THIS FRAUDULENT CORPORATION?12 -
A /thread.
I have to say something important. As the story progresses, the rage will keep fueling up and get more spicy. You should also feel your blood boil more. If not, that's because you're happy to be a slave.
This is a clusterfuck story. I'll come back and forth to some paragraphs to talk about more details and why everything, INCLUDING OUR DEVELOPER JOBS ARE A SCAM. we're getting USED as SLAVES because it's standardized AS NORMAL. IT IS EVERYTHING *BUT* NORMAL.
START:
As im watching the 2022 world cup i noticed something that has enraged me as a software engineer.
The camera has pointed to the crowd where there were old football players such as Rondinho, Kaka, old (fat) Ronaldo and other assholes i dont give a shit about.
These men are old (old for football) and therefore they dont play sports anymore.
These men don't do SHIT in their lives. They have retired at like 39 years old with MULTI MILLIONS OF DOLLARS IN THEIR BANK ACCOUNT.
And thats not all. despite of them not doing anything in life anymore, THEY ARE STILL EARNING MILLIONS AND MILLIONS OF DOLLARS PER MONTH. FOR WHAT?????
While i as a backend software engineer get used as a slave to do extreme and hard as SHIT jobs for slave salary.
500-600$ MAX PER MONTH is for junior BACKEND engineers! By the law of my country software businesses are not allowed to pay less than $500 for IT jobs. If thats for backend, imagine how much lower is for frontend? I'll tell you cause i used to be a frontend dev in 2016: $200-400 PER MONTH IS FOR FRONTEND DEVELOPERS.
A BACKEND SOFTWARE ENGINEER with at least 7-9 years of professional experience, is allowed to have $1000-2000 PER MONTH
In my country, if you want to have a salary of MORE THAN $3000/Month as SOFTWARE ENGINEER, you have to have a minimum of Master's Degree and in some cases a required PhD!!!!!!
Are you fucking kidding me?
Also. (Btw i have a BSc comp. sci. Degree from a valuable university) I have taken a SHIT ton of interviews. NOT ONE OF THEM HAVE ASKED ME IF I HAVE A DEGREE. NO ONE. All HRs and lead Devs have asked me about myself, what i want to learn and about my past dev experience, projects i worked on etc so they can approximate my knowledge complexity.
EVEN TOPTAL! Their HR NEVER asked me about my fycking degree because no one gives a SHIT about your fucking degree. Do you know how can you tell if someone has a degree? THEY'LL FUCKING TELL YOU THEY HAVE A DEGREE! LMAO! It was all a Fucking scam designed by the Matrix to enslave you and mentally break you. Besides wasting your Fucking time.
This means that companies put degree requirement in job post just to follow formal procedures, but in reality NO ONE GIVES A SHIT ABOUT IT. NOOBOODYYY.
ALSO: I GRADUATED AND I STILL DID NOT RECEIVE MY DEGREE PAPER BECAUSE THEY NEED AT LEAST 6 MONTHS TO MAKE IT. SOME PEOPLE EVEN WAITED 2 YEARS. A FRIEND OF MINE WHO GRADUATED IN FEBRUARY 2022, STILL DIDNT RECEIVE HIS DEGREE TODAY IN DECEMBER 2022. ALL THEY CAN DO IS PRINT YOU A PAPER TO CONFIRM THAT I DO HAVE A DEGREE AS PROOF TO COMPANIES WHO HIRE ME. WHAT THE FUCK ARE THEY MAKING FOR SO LONG, DIAMONDS???
are you fucking kidding me? You fucking bitch. The sole paper i can use to wipe my asshole with that they call a DEGREE, at the end I CANT EVEN HAVE IT???
Fuck You.
This system that values how much BULLSHIT you can memorize for short term, is called "EDUCATION", NOT "MEMORIZATION" System.
Think about it. Don't believe be? Are you one of those nerds with A+ grades who loves school and defends this education system? Here I'll fuck you with a single question: if i gave you a task to solve from linear algebra, or math analysis, probabilistics and statistics, physics, or theory, or a task to write ASM code, would you know how to do it? No you won't. Because you "learned" that months or years ago. You don't know shit. CHECK MATE. You can answer those questions by googling. Even the most experienced software engineers still use google. ALL of friends with A+ grades always answered "i dont know" or "i dont remember". HOW IF YOU PASSED IT WITH A+ 6 DAYS AGO? If so, WHY THE FUCK ARE WE WASTING YEARS OF AN ALREADY SHORT HUMAN LIFE TO TEMPORARILY MEMORIZE GARBAGE? WHY DONT WE LEARN THAT PROCESS THROUGH WORKING ON PRACTICAL PROJECTS??? WOULDNT YOU AGREE THATS A BETTER SOLUTION, YOU MOTHERFUCKER BITCH ASS SLAVE SUCKA???
Im can't even afford to buy my First fuckinf Car with this slave salary. Inflation is up so much that 1 bag of BASIC groceries from Walmart costs $100. IF BASIC GROCERIES ARE $100, HOW DO I LIVE WITH $500-600/MONTH IF I HAVE OTHER EXPENSES?
Now, back to slavery. Here's what i learned.
1800s: slaves are directly forced to work in exchange for food to survive.
2000s: slaves are indirectly forced to work in exchange for money as a MIDDLEMAN that can be used to buy food to survive.
????
This means: slavery has not gone anywhere. Slavery has just evolved. And you're fine with it.
Will post part 2 later.8 -
OMFG I'm exhausted from the workload this last week, but everything is due this week and I'm totally ruined because everything is half done. Just murder me in my sleep please.3
-
ME - me, TM - teammate
I was just recruited to the company. We're starting new project based on few modules.
ME: So this module will do X and Y, I will use good old interfaces and design based on abstractions so that stuff does not get glued too much.
TM: But why? Make good old processor with all the logic and throw objects at it.
ME: B-but unit tests, decomposition and othet stuff...
TM: *insists and forces me to agree*
ME: *gets shit done his way, TM checks on code review and complains but generally doesnt give a fuck*
ME: Ok, its done. Lets get shit shipped.
TM: Well, we were just told by PM that we will need to process one more source with much different logic that does not fit current solution (he did meant GOD-PROCESSOR, idea of his).
ME: What do you mean? *injects another contextual implementation of processing logic to template method pattern solution*.
TM: I will tell PM you cant make it because of the implementation.
ME: But I just did it...
TM: Impossible, processor needs to be reimplemented. Get your shit together!
ME: *still doesnt get the shit about the god processor love*
TM: *rage quits next month*
ME: *module gets reused once more 2 month later, profit* -
ideal sprint fallacy.
total days 10 , total hours(excluding breaks ) 8 hrs per day= 80 hrs per dev
code freeze day = day 8, testing+ fixing days : 8,9,10. release day : day 10
so ideal dev time = 7days/56 hr
meetings= - 1hr per day => 49 hrs per dev
- 1 day for planning i.e d1 . so dev time left . 6 days 42 hrs.
-----------
all good planning. now here comes the messups
1. last release took some time. so planning could not happen on d1. all devs are waiting. . devtime = 5 days 35 hrs.
2. during planning:
mgr: hey devx what's the status on task 1?
d: i integrated mock apis. if server has made the apis, i will test them .
mgr : server says the apis are done. whats your guestimate for the task completion?
d : max 1-2 hrs?
m : cool. i assign you 4 hrs for this. now what about task 2?
d : task told to me is done and working . however sub mgr mentioned that a new screen will be added. so that will take time
m : no we probably won't be taking the screen. what's your giestimate?
d : a few more testing on existing features. maybe 1-2 hrs ?
m: cool
another 4 hrs for u. what about task 3?
d : <same story>
m : cool. another 4 hrs for u. so a total of 12 hrs out of 35 hrs? you must be relaxed this sprint.
d : yeah i guess.
m cool.
-------
timelines.
d1: wasted i previous sprint
d2 : sprint planning
d3 : 3+ hrs of meetings, apis for task 1 weren't available sub manager randomly decided that yes we can add another screen but didn't discussed. updates on all 3 tasks : no change in status
d4 : same story. dev apis starts failing so testing comes to halt.
d5 : apis for task1 available . task 3 got additional improvement points from mgr out of random. some prod issue happens which takes 4+ hrs. update on tasks : some more work done on task 3, task 1 and 2 remains same.
d6 : task1 apis are different from mocks. additionally 2 apis start breaking and its come to know thatgrs did not explain the task properly. finally after another 3+ hrs of discussion , we come to some conclusions and resolutions
d7 : prod issue again comes. 4+ hrs goes into it . task 2 and 3 are discussed for new screen additiona that can easily take 2+ days to be created . we agree tot ake 1 and drop 2nd task's changes i finish task 2 new screens in 6 hrs , hoping that finally everything will be fine.
d8 : prod issue again comes, and changes are requested in task 2 and 3
day 9 build finally goes to tester
day 10 first few bugs come with approval for some tasks
day 11(day 1 of new sprint) final build with fixes is shared. new bugs (unrelated to tasks. basically new features disguised as bugs) are raised . we reject and release the build.
day 2 sprint planning
mgr : hey dev x, u had only 12 hrs of work in your plate. why did the build got delayed?
🥲🫡5 -
2 hour meeting to brainstorm ideas to improve our system health monitoring (logging, alerting, monitoring, and metrics)
Never got past the alerting part. Piss poor excuses for human being managers kept 'blaming' our logging infrastructure for allowing them to log exceptions as 'Warnings', purposely by-passing the alerting system.
Then the d-head tried to 'educate' everyone the difference between error and exception …frack-wad…the difference isn't philosophical…shut up.
The B manager kept referring to our old logging system (like we stopped using it 5 years ago) and if it were written correctly, the legacy code would be easier to migrate. Fracking lying B….shut the frack up.
The fracking idiots then wanted to add direct-bypass of the alerting system (I purposely made the code to bypass alerting painful to write)
Mgr1: "The only way this will work is if you, by default, allow errors to bypass the alerting system. When all of our code is migrated, we'll change a config or something to enable alerting. That shouldn't be too hard."
Me: "Not going to happen. I made by-passing the alert system painful on purpose. If I make it easy, you'll never go back and change code."
Mgr2: "Oh, yes we will. Just mark that method as obsolete. That way, it will force us to fix the code."
Me: "The by-pass method is already obsolete and the teams are already ignoring the build warnings."
Mgr1: "No, that is not correct. We have a process to fix all build warnings related to obsolete methods."
Mgr2: "Yes. It won't be like the old system. We just never had time to go back and fix that code."
Me: "The method has been obsolete for almost a year. If your teams haven't fixed their code by now, it's not going to be fixed."
Mgr1: "You're expecting everything to be changed in one day. Our code base is way too big and there are too many changes to make. All we are asking for is a simple change that will give us the time we need to make the system better. We all want to make the system better…right?"
Me: "We made the changes to the core system over two years ago, and we had this same conversation, remember? If your team hasn't made any changes by now, they aren't going to. The only way they will change code to the new standard is if we make the old way painful. Sorry, that's the truth."
Mgr2: "Why did we make changes to the logging system? Why weren't any of us involved? If there were going to be all these changes, our team should have been part of the process."
Me: "You were and declined every meeting and every attempt to include your area. Considering the massive amount of infrastructure changes there was zero code changes required by your team. The new system simply worked. You can't take advantage of the new features which is why we're here today. I'm here to offer my help in any way I can with the transition."
Mgr1: "The new logging doesn't support logging of the different web page areas. Until you can make that change, we can't begin changing our code."
Me: "Logging properties is just a name+value pair dictionary. All you need to do is standardize on a name and how you add it to the collection."
Mgr2: "So, it's not a standard field? How difficult would it be to change the core assembly? This has to be standard across all our areas and shouldn't be up to the developers to type in anything they want."
- Frack wads smile and nod to each other like fracking chickens in a feeding frenzy
Me: "It can, but what will you call this property? What controls its value?"
- The look I got from both the d-bags I could tell a blood vessel popped.
Mgr1: "Oh…um….I don't know…Area? Yea … Area."
Mgr2: "Um…that's not specific enough. How about Page?"
Mgr1: "Well, pages can cross different areas, and areas cross different pages…what do you think?"
Me: "Don't know, don't care. It's up to you. I just need a name."
Mgr2: "Modules! Our MVC framework is broken up in Modules."
DevMgr: "We already have a field for Module. It's how we're segmenting the different business processes"
Mgr1: "Doesn't matter, we'll come up with a name later. Until then, we won't make any changes until there is a name."
DevMgr: "So what did we accomplish?"
Me: "That we need to review the web's logging and alerting process and make sure we're capturing errors being hidden as warnings."
Mgr1: "Nooo….we didn't accomplish anything. This meeting had no agenda and no purpose. We should have been included in the logging process changes from day one."
Mgr2: "I agree, I'm not sure why we're here"
Me: "This was a brainstorming meeting as listed in the agenda. We've accomplished 2 of the 4 items. I think we've established your commitment to making the system better. Thank you all for coming."
- Mgr1 and 2 left without looking at me or saying a word.1 -
I know I’ll get mixed views for this one...
So I’ll state my claim. I agree with the philosophy of uncle bob, I also feel like he is the high level language - older version of myself personality wise.. (when I learned about uncle bob I was like this guy is just like me but not low level haha).
Anyway.. I don’t agree with everything because I think he thinks or atleast I get the vibe he thinks everything can be solved by OOP, and high level languages. This is probably where Bob and I disagree. Personally I don’t touch ruby, python and java and “those” with a 10 foot pole.
Does he make valid arguments, yes, is agile the solve all solution no.. but agile ideas do come natural and respond faster the feedback loop of product development is much smaller and the managers and clients and customers can “see things” sooner than purly waterfall.. I mean agile is the natural approach of disciplined engineers....waterfall is and was developed because the market was flooded with undisciplined engineers and continues to flood, agile is great for them but only if they are skilled in what they are doing and see the bigger picture of the forest thru the trees.. which is the entire point of waterfall, to see the forest.. the end goal... now I’m not saying agile you only see a branch of a single tree of the forest.. but too often young engineers, and beginners jump on agile because it’s “trendy” or “everyone’s doing it” or whatever the fuck reason. The point is they do it but only focus on the immediate use case, needs and deliverables due next week.
What’s wrong with that?? Well an undisciplined engineer doing agile (no I’m not talking damn scrum shit and all that marketing bullshit).. pure true agile.
They will write code for the need due next week, but they won’t realize that hmm I will have the need 3 months from now for some feature that needs to connect to this, so I better design this code with that future feature in mind...
The disciplined engineer would do that. That is why waterfall exists so ideally the big picture is painted before hand.
The undisciplined engineer will then be frustrated in the future when he has to act like the cool aid man thru the hard pre mature architectural boundaries he created and now needs links or connections that are now needed.
Does moving to agile fix that hell no.. because the undisciplined engineer is still undisciplined.
One could argue the project manager or scrum secretary... (yes scrum secretary I said that right).. is suppose to organize and create and order the features with the future in mind etc...
Bullshit ..soo basically your saying the scrum kid is suppose to be the disciplined engineer to have foresight into realizing future features and making requirements and task now that cover those things? No!
1 scrum bitch focuses too much on pleasing “stake holders” especially taken literally in start ups where the non technical idiots are too involved with the engineering team and the scrum bastard tries to ass kiss and get everything organized and tasks working so the non technical person can see pretty things work.
Scrum master is a gate keeper and is not needed and actually hinders the whole process of making a undisciplined engineer into a disciplined engineer, makes the undisciplined engineer into a “forever” code grunt... filling weekly orders of story points unable to see the forest until it’s over because the forest isn’t show to the grunt only the scrum keeper knows the big picture..... this is bad this is why waterfall is needed.
Waterfall has its own problems, But that’s another story for another day..
ANYWAY... soooo where were we ....
Ahh yess....
Clean code..
Is it a good book, yes.. does uncle bobs personality show thru the book .. yes lol.
If you know uncle bob you will understand what I just did with this post lol. I had to tangent ( at least mine was related to the topic) ...
I agree with the principles of the book, I don’t agree with the extreme view point. It’s like religion there’s the modest folks and then there are the extremists. Well he’s the preacher of the cult and he’s on the extreme side.. but that doesn’t mean he’s wrong.. many things he nails... he just hits the nail thru the wall just a bit.
OOP languages are not the solution... high level languages do not solve everything.. pininciples and concepts can be used across the board and prove valuable.. just don’t hold everything up like the 10 commandments of which you cannot deviate from.. that’s the difference here I think..
Good book, just don’t take it as the Bible as a beginner, actually infact DONT read this book as a beginner. Wait a bit learn then reflect by reading this.15 -
😔this weekend should be fun, I... I need to... well you see... I need to create a woocommerce site despite my better judgments and opinions on the subject.
God, if you are listening.. well reading, please have mercy on my soul.rant suicide is forecasted. wordpress the things we do fuck my life woocommerce why did i agree to this5 -
Prequel to my previous post:
I received an offer from a startup that did not meet the originally advertised salary range. In every other aspect this place seemed like where I'd enjoy working the most and each previous interaction made a very good impression on me. So needless to say this was quite a shock.
They immediately apologised and explained the situation. They only now started to expand to and hire from my location (which can be verified) and I would be the very first person from this location (seems true too but I could only really verify this after joining). They explained the salary range I had seen was for their main hub location (accurate too) and said that the recruiter who posted the ad did not adjust it to mine. I asked why tf they didn't notify me of this earlier and they said they are super busy with everything, are new to location based salaries and normally don't check the recruiters posts as it should be her work.
Now, even if this is totally true, it was an awful sudden shock and felt a bit like a scam - totally contradicting my previous impressions.
Here are a couple of other points that I'll just sum to save time:
- before seeing the job ad I had a *reasonable* salary expectation even lower than their actual offering
- on the ad, the bottom end of their salary range far exceeded my reasonable exp.
- the relative level of my position would be even higher up the range that I have seen realised would be top 5%
- having had seen the ad, I started to have an *ideal* expectation being the bottom of the range
- in first interview I told them my exp. is the bottom end of their range +- a bit
- I told this to a dev guy who has no fucking idea about this stuff and I don't blame him but he noted this down to higher management
- generally I have not been very precise of my expectation as previously I only had lower class dev jobs, this would be the first decent.
- Hence I have seen an enormously high variation in salaries offered to me so this advertised range whilst high seemed possible
Now, with all this in mind I posted here a question about what some of you would do in my position.
I received the following group of responses:
- it's a scam, bad place, run
- it's an intentional (common) trick
- people make mistakes like this esp. startups so find out if this is intentional or not
- just decide if their current offering is reasonable for the position and location, ignore the rest
- just decide if the amount is enough
- location based salaries are retarded, don't work there (I kinda agree and also don't)
- if they can afford the higher pay in another place they should have no prob. meeting the range
- it's more important that you'd enjoy it there if the pay is sufficient for general needs
- company culture is generally more important these days
- fuck recruiters and hr people (amen to that btw)
Here is what I did:
Regardless of whether I believe them or not I hyperfocused on the potential scam/trick aspect.
I told them that every other interaction with them was positive and would love to join them but this was a really bad impression and feels like they are playing with me. I made up some bullshit previous examples of companies trying the same trick on me (which obv. never happened).
Then I said that I think to resolve this they should invite me to their main office for a day (all interviews had been online) and if after that they are still not ok to offer me at least the bottom of the adv. range then we can part ways. Otherwise this should ensure both of us that we are a good match, etc.
They seemed to love the idea and said that I should go there for x till y (3 days) and if we don't hate each other by the end I'll get the amount at the bottom of the range and they apologised again about it looking like a scam, etc.
So thanks a bunch again to those of you who provided valuable input. -
* Gets handed additions to current software platform (web)
* Gives back estimte of time after meeting with everyone and making them understand that once the testing phase of the project is reached there will be no changes, tests should be exhaustive and focus on SAID FUNCTIONALITY of the new additions. NO CHANGES OR ADDITIONS AT THIS POINT IN TIME
* All directives, stakeholders, users etc agreed on my request and spend an additional hour thinking of different corner and edge cases as provided by me in case they can't think of them (they can't, because they are fucking stupid, but I provided everything)
* Boss looks irritated at their lack of understanding of the scope and the time needed, nods in approval after he sees my entire specification, testing cases, possible additions to the system etc
* All members of the committee decide on the requirements being correct, concrete and proper.
* Finish the additions in a couple of weeks due to the increased demand for other projects, this directly affects the user base, so my VP and Director make it a top priority, I agree with their sentiment, since my Director knows what he is doing (real OG)
* I make the changes, test inside of my department and then stage for the testing environment. Everything is ready, all migrations are in order, the functionality is working as proper and the pipeline for the project, albeit somewhat lacking in elegance is good to go.
* Testing days arrive
* First couple of hours of test: Oh, you know what, we should add these two additional fields, and it would be good if the reporting generated by the system would contain this OTHER FORMAT rather than this one.
* ME: We stated that no additions would be done during the testing environment, testing is for functionality, not to see if you can all think of something else, even then, on June 10 I provided a initial demo and no one bothered to check on it on say something.
Them: Well, we are doing it now, this is what testing is for.
Me: Out of this room, the software engineer is me, and I can assure you, testing is not for that. I repeatedly stated that previously, I set the requirements, added corner cases, tables charts everything and not one single one of you decided to pay attention or add something, actually, said functionality you are requesting was part of one of my detailed list of corner cases, why did you not add it there and then before everything went up?
Them: Well I didn't read it at the time (think of the I in plural form since all of these dumb fucks stated the same)
Then my boss went on a rampage on their dumbasses.
I fucking hate software development sometimes.
Oh well. Bunch of fucking retards.4 -
My C adventure is going horribly. So I stopped. I took a second to breathe then looked at my current resources decided to use the 2 books i have as references to learn from as well, then found a reasonably long YouTube guide so I can have someone verbally explain something, and I have a friend and a few places I can now ask questions if I need it. So yeah I'm pretty confident now.rant c is a neutral entity in my life why did i choose this profession c why did i agree to this learning c7
-
I really like my position as the head of my department. But I am most definitely hitting walls(and in some way breaking them) concerning the way the CTO(my direct boss) deals with a lot of the things that his management team wants to do.
For example, the previous manager could only do so much in terms of directing a software team since she did not have a formal background in computer science or engineering, thus the developers that she had would tell her the different deals with many things and she would have to take their word for it. Nothing necessarily bad with this, but it just meant that a lot of things could have gone smoother had she the knowledge to fix said items. Whenever she would try to use resources(dev time or such) the CTO will resort to the all powerful manthra of "if it ain't broke don't fix it!".
but it was about more than fixing things that were breaking, our internal services and admin boards were built using all of the WRONG proper development practices, it feels as if they took the book of best practices.....and said fuck it and did whatever the fuck they wanted. It is the worst PHP/Java/JS code I have ever seen in my entire life and the reason why even though I do not concur with it I will always understand the dislike from other developers. Our services look like something that came out from the 90s, no style, no engineering concepts in place, no versioning no testing NADA zip(these are all web based services)
One in particular, it was an admin board used internally to let students evaluate their professors, the entire app is shit, and it was broken, for some UNGODLY reason, the original dev decided to use some weird external libraries he got from some blog somewhere and as such something that would take about 5 or 6 files is now a mess with over 200 php/js files all over the fucking place. The CTO insisted on fixing them, they were all broken, and I continuously told him that redesigning the application would be faster.
Mofo fought me on it, and in the end I did what I wanted and rebuilt the app.
It took me one afternoon. One fucking afternoon, over possibly 2 weeks of fixing it.
See, I am not one to just do whatever he pleases, but I am firm in my belief that if I know a better way I will do it and save precious time. The dude had to agree with me on this and promised to consider this shit on other items that will undoubtedly come up. He was lying out of his ass but oh well..........
W3 -
Fucking fuck! How could I be so naive?
I just started my masters in Enterprise Software Development. It's basically the continuation of the CS BSc I finished this year. I don't consider myself a lazy and bad dev and I finished in the top 5-10% of the class - I say this not because I want to brag, I know I'm not the best, I know I have my defects, BUT I don't think that it's a good sign that all of us, my top graduate friends all full of hate and anger against this whole MSc after just a week. And... It's mostly one fucking egoistic teacher's fault.
Okay, all of us are working full time which is obviously tiring if you combine it with the university classes. But I still think I could manage this first week better, if I wouldn't fucking came to the same line of the faculty.
I deeply fucking hate that I've been naively thinking that the masters will be different after experiencing one of the worst teachers last year. It's fucking first week, and I can't change the specialization anymore, only give up. I wanted to fill up the void with some usefulness, but I just fucking messed it up.
This "beloved" teacher is from the industry, he has a lot of experience and started to teach recently. Which is not a problem, no! It should be a great thing by default. But the way he holds his courses is inaccaptable. I don't think I have the right to share everything, but the following stuff just grinds my gears... Like a fucking lot:
1) He brags about a lot of stuff. Like he made really good deals in the past. Why should we know, that he made a contract with a client for 20 million euros. Okay. Whatever. That doesn't help us, and I think that bragging makes him look like an egoistic scum.
2) I hate this one the most: he fucking says that we have a choice in the administrative stuff. He gives us some hope and offers the possibility to argument and come up with our own solutions for grading and etc. But oh boy, is this a false hope, a fake idea of free will. He already knows what the final solution will be and on what kind of decisions will we all "agree". He did this last year, he does it again. Fucking naiveness of mine...
3) Lastly, he decided, that we have to go to theatre with him, all of us. No exception. And I like the theatre. But only when it isn't forced. Why and how could you pair this up with the grade you give to your students? Because that's what he does.
FML. How can I already hate this? How can I already be fed up with all the stuff? Anyways, I'm signing the contract with the university tomorrow, so let the fun games begin... I know, I look like a whining little boy now, but I just fucking had to went it after this deep fried shit-day. I probably have to get some sleep, and everything's gonna be fine. Eventually, skipping classes might become necessary in order to bear all this shit.6 -
I am really having a hard time keeping an "open" mindset with my team...
So when I email you, the junior at your first job and an almost 6 months work experience, with a set of instructions, I do not want inline comments and feedback to the tune of "Yes, I agree. I think we should go ahead" or debates on why, in your opinion.. xyz, because you tested it yourself..
WHERE THE FUCK DID YOU SETUP AND TEST BILLIONS OF ROWS OF DATA ON YOUR MANY MANY MULTI BOX CLUSTER? You live in a data center? Oh, and say "Serverless" one more fucking time....
And so begins the painful process of performance managing you out the door. (You cant fire anybody in South Africa for being a prick. Or useless.)
I am sure there once was a time where you could beat guys like this to within an inch of his life with his own keyboard. If it wasn't wireless I could have strangled him with the cord. Ah, I miss model M's....9 -
Today something pretty bad happened (as always at school)
and I'm gonna rant about it to
1) get your expertly opinion on it
2) relieve from it
SOOOOO
today I entered class to paretake in the writing of the much anticipated class test (kappa).
The teacher gives everybody a sheet with the exercises - let alone me.
I tell him to give me a sheet too.
"Put a book between you and xy"
so I do. I ask him again to give me the exam paper. No response.
Again, and he looks at me with a disrespectful look. I look back. And get thrown out of the room - not getting a chance to paretake in the writing of the test yet getting the worst grade one could possibly get in the modest german education system (=> 6)
Now I'm going to pursue any possible legal action against him (I dont care about him. After the lesson I wanted to talk with him; yet he declined my offer for reconsiliation, then he called my parents, even though he had time to think about what he did {any sane person would agree that what he did was wrong <yet my classmates dont agree>}. Also, he is that type of teacher who gives unusually unnessecary homework - which I personally see as punition, since I already know 97% of the stuff thought in [english] classes)
See why I am despising school so much?
It drains my last bit of energy until I am an empty shell with the sole goal to finish education asap in order to be able to fucking work.
BTW: I tried using my best english in this rant to demonstrate my abilities in order for you to be able to see that I honestly dont those "basic" english lessons.7 -
I can't help it sounding bitter..
If you work some amount of time in tech it's unavoidable that you automatically pick up skills that help you to deal with a lot of shit. Some stuff you pick up is useful beyond those problems that shouldn't even exist in the first place but lots of things you pick up over time are about fixing or at least somehow dealing or enduring stuff that shouldn't be like that in the first place.
Fine. Let's be honest, it's just reality that this is quite helpful.
But why are there, especially in the frontend, so many devs, that confuse this with progress or actual advancement in their craft. It's not. It's something that's probably useful but you get that for free once you manage to somehow get into the industry. Those skills accumulate over time, no matter what, as long as you manage to somehow constantly keep a job.
But improving in the craft you chose isn't about somehow being able to deal with things despite everything. That's fine but I feel like the huge costs of keeping things going despite some all the atrocities that arose form not even considering there could be anything to improve on as soon as your code runs. If you receive critic in a code review, the first thing coming back is some lame excuse or even a counter attack, when you just should say thank you and if you don't agree at all, maybe you need to invest more time to understand and if there's some critic that's actually not useful or base don wrong assumptions, still keep in mind it's coming from somebody that invested time to read your code gather some thoughts about it and write them down for you review. So be aware of the investment behind every review of your code.
Especially for the frontend getting something to run is a incredibly low bar and not at all where you can tell yourself you did code.
Some hard truth from frontend developer to frontend developer:
Everybody with two months of experience is able to build mostly anything expected on the job. No matter if junior or senior.
So why aren't you looking for ways to find where your code is isn't as good as it could be.
Whatever money you earn on top of your junior colleagues should make you feel obligated to understand that you need to invest time and the necessary humbleness and awareness of your own weaknesses or knowledge gaps.
Looking at code, that compiles, runs and even provides the complete functionality of the user story and still feeling the needs do be stuff you don't know how to do it at the moment.
I feel like we've gotten to a point, where there are so few skilled developer, that have worked at a place that told them certain things matter a lot Whatever makes a Senior a Senior is to a big part about the questions you ask yourself about the code you wrote if if's running without any problems at all.
It's quite easy to implement whatever functionality for everybody across all experience levels but one of your most important responsibilities. Wherever you are considered/payed above junior level, the work that makes you a senior is about learning where you have been wrong looking back at your code matters (like everything).
Sorry but I just didn't finde a way to write this down in a more positive and optimistic manner.
And while it might be easy to think I'm just enjoying to attack (former) colleaues thing that makes me sad the most is that this is not only about us, it's also about the countless juniors, that struggle to get a food in the door.
To me it's not about talent nor do I believe that people wouldn't be able to change.
Sometimes I'm incredibly disappointed in many frontend colleagues. It's not about your skill or anything. It's a matter of having the right attitude.
It's about Looking for things you need to work in (in your code). And investing time while always staying humble enough to learn and iterate on things. It's about looking at you
Ar code and looking for things you didn't solve properly.
Never forget, whenever there's a job listing that's fording those crazy amount of work experience in years, or somebody giving up after repeatedly getting rejected it might also be on the code you write and the attitude that 's keeping you looking for things that show how awesome you are instead of investing work into understanding where you lack certain skills, invest into getting to know about the things you currently don't know yet.
If you, like me, work in a European country and gathered some years of industry experience in your CV you will be payed a good amount of money compared to many hard working professions in other industries. And don't forget, you're also getting payed significantly more than the colleagues that just started at their first job.
No reason to feel guilty but maybe you should feel like forcing yourself to look for whatever aspect of your work is the weakest.
There's so many colleagues, especially in the frontend that just suck while they could be better just by gaining awareness that there code isn't perfect.6 -
Well, I've started programming only a few years ago, and haven't done a lot of projects.
I guess the best thins I learned was I preffer to do projects alone. Everytime I try to do a project with someone, one of two scenarios happen:
- We each do a part of the project, and only talk at the end. Normally everything works out fine.
- We can't agree on anything and, in the end, nothing ever works.
I think I only enjoyed doing a project with one person. We were learning vue.js, but I was staying behind and the guy I was with was okay at it. He would do most things, while i was watching him and he would explained what he was doing and why. Then I started doing stuff (very easy things) while he was watching me and guiding me. Telling me if there was a better way of doing something, or even if I made a typo. Basically, I would do something and he would tell me if it was wrong. We ended up making a (very) simplified imdb from scratch in, I think, 8 hours? Took us longer to choose the template then to make the actual project. Yes, he made most of the project, but I think I have an excuse on this one. I did end up learning a lot, I wouldn't pass that module if it wasn't for him.
Other then that one, I never had any good experience in a group. I would rather make everything alone, no one to disagree or fight with.2 -
So our teacher is telling us to join some kind of competition thing that the government creates, and uhh, when I went to the website, sign up with a separate account that I will probably never use once again in my whole life, and then I notice that when you click to the TOS link in the "I agree with the TOS", it does... nothing, yes, it doesn't lead you to an actual TOS page or anything, it just teleports you up, what?????, did you just create a fking TOS link and it doesn't actually lead to anywhere else? Then why do it anyway? Also, you can literally find a TOS template with some English keyword and then plastered it on some obscure page and then use the TOS link to lead to that one instead of blatantly do nothing. Also, I noticed that they use a authentication service called Eids Authentication. Who the fk is this guy? Why don't you just use something already popular like Auth0? They have way better UI/UX than whatever that is and supports way more platform logins like Google and Faxbook which are more familiar to us.