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 - "that's a new one"
-
I hired a woman for senior quality assurance two weeks ago. Impressive resume, great interview, but I was met with some pseudo-sexist puzzled looks in the dev team.
Meeting today. Boss: "Why is the database cluster not working properly?"
Team devs: "We've tried diagnosing the problem, but we can't really find it. It keeps being under high load."
New QA: "It might have something to do with the way you developers write queries".
She pulls up a bunch of code examples with dozens of joins and orderings on unindexed columns, explains that you shouldn't call queries from within looping constructs, that it's smart to limit the data with constraints and aggregations, hints at where to actually place indexes, how not to drag the whole DB to the frontend and process it in VueJS, etc...
New QA: "I've already put the tasks for refactoring the queries in Asana"
I'm grinning, because finally... finally I'm not alone in my crusade anymore.
Boss: "Yeah but that's just that code quality nonsense Bittersweet always keeps nagging about. Why is the database not working? Can't we just add more thingies to the cluster? That would be easier than rewriting the code, right?"
Dev team: "Yes... yes. We could try a few more of these aws rds db.m4.10xlarge thingies. That will solve it."
QA looks pissed off, stands up: "No. These queries... they touch the database in so many places, and so violently, that it has to go to therapy. That's why it's down. It just can't take the abuse anymore. You could add more little brothers and sisters to the equation, but damn that would be cruel right? Not to mention that therapy isn't exactly cheap!"
Dev team looks annoyed at me. My boss looks even more annoyed at me. "You hired this one?"
I keep grinning, and I nod.
"I might have offered her a permanent contract"45 -
A call I had today, girl registered a domain and put it in her hosting package:
Girl: so where can I view my email accounts?
Me: *explains*
G: Oh, I wanted an email address with info or my first name as part before the @ but I only see an account with the name of my hosting account username?
Me: that's right, that's a default one you get :)
G: oh 😞 I....I.... I've always have wanted a domain name with my own email addresses linked to it and I thought I could do that this way 😩
(I could hear the disappointment and that she seemed very sad suddenly)
Me: do you see that "create new email account" button up there?
G: Yes..... Wait.... Can I make like multiple email addresses myself?!
Me: as many as you can manage inside your hosting account!
G: 😵😍 OH MY GOD
Me: Haha, enjoy creating some!
G: THANK YOU I LOVE YOU BYE
*Click*
It's those moments which can make your fucking day!15 -
*client calls*
"hello, we forgot the password to our WiFi router. Could you reset that for us?"
😐😶😮😅
"We host websites and servers sir, we don't control your router :)"
"Right, i thought so, nevermind!"
Well, that's a new one O.o24 -
Boss: "Could you join the new DevOps team for a week or two, for some coaching?"
Me: "I'd rather watch you masturbate furiously in a corner of the office while you cry over your ex boyfriend"
Boss: "Yeah... that's why I ask you. You are the only one brave enough to watch"
Me: *Sigh* "But I don't know shit about what DevOps does, I'm a DBA. I've told you the difference a million times. Can't we just douse it in gasoline and set it on fire?"
Boss: "What?"
Me: "Not the team, the servers..."
Boss, imitating Gimli: "And my ex!"
Me: "I get why he left you"
Boss: "It's funny, he was actually better with computers than me, maybe even better than you. He hated me for starting this company, told me I was just chasing money instead of ideals. He just isn't grown up enough to see that there is more to the world than computer games, brewing beer, maker festivals and gay bars, that you need to take responsibility... Maybe it just never works out between managers and geeks..."
Me: "Indeed. The difference in competence is too large"
Boss: "Ugh. You are like straight version of him... but will you at least take a look?"
Me: "Fine, unzip your pants..."
Boss: "No, not that... you need to teach DevOps this docking thing, with the parallel stuff, and the horizontal growth"
Me: "Damn I really hope we're talking about servers now... Do you mean Docker?"
Boss: "That's it. They want to learn how to dock on the Windows servers. They reserved two 4xlarge on AWS. Is that enough for docking?"
Me: ...
Me: ...
Me: "You know what. I'm going back to hug my DB designs, and wash my brain with some queries. Then I'll return here to burn everything to the ground. There is no hope for you left"
Boss: "That's what he said"
Me: "You're using that meme wrong"
Boss: "OK. So what if you just stay on DB management, and I'll just give you the budget to recruit a new DevOps lead and pay for training?"
Me: "That would work"
Boss: "Why are you grinning?"
Me: "Because I have your ex's phone number"18 -
I accidentally created a bug that became an amazing feature at my last job.
It was for a program to read barcode tickets (we created software and web solutions for events), and to register the barcode sacnners to the computer I had to do some magic with USB-detection since it was not specified which brand the scanners would be (so no SDK would be available).
When the scanner was plugged in it would create its own thread so it wouldn't interfere with the UI of the program when it was reading/sending data.
Somehow I messed up with the thread termination for new scanners so it would accept to connect more than one scanner and it would work flawless since it was its own thread in the program.
When I tried to think out a solution for multiple scanners when planning it I got a headache and thought that's something for later. Turned out alright in the end apparently.
8 -
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 -
0. Plan before you code. Document everything. You won't remember either your idea or those clever implementations next week (or next month, or next year...).
1. Don't hack your way through, unless that's what you intend to do. Name your variables, functions etc. neatly: autocomplete exists!
Protip: Sometimes you want to check a quick language feature or a piece of code from one of your modules. Resist the urge to quickly hack in the test into your actual project. Maintain a separate file where you can quickly type in and check what you're looking for without hacking on your project (For example, in Python, you can open a new terminal or IDLE window for those quick tests).
2. Keep a quiet environment where you can focus. Recommend listening to something while coding (my latest fad is on asoftmurmur.com). Don't let anything distract you and throw your contextual awareness out of whack.
3. Rubber ducks work. Really. Talking out a complex piece of logic, or that regex or SQL query aids your mind greatly in grasping the concept and clearing the idea. Bounce off code and ideas with a friend or colleague to catch errors and oversights faster. Read more here: https://en.wikipedia.org/wiki/...
4. Since everyone else is saying this (and because it merits saying), USE VERSION CONTROL. Singular most important thing to software development aside from planning and documenting.
5. Remember to flout all of the above once in a while and just make a mess of a project where you have fun throwing everything around all over the place. You'll make mistakes that you never thought were possible by someone of your caliber :) That's how you learn.
Have fun, keep learning!3 -
So my Girlfriend bought a new iPhone at Verizon today. Cool story, I know, but here's where it's gone from there.
Firstly her debit wouldn't run as credit, so we used mine but that's the least of it (but began it).
So she has 16,000 photos... Alot, sure, but not the issue. Obviously with that amount of data she wasn't about to reasonably use iCloud to back it up (understandable only by me) so she was confronted both by me and the Verizon employee about this issue to where we both (the Verizon employee and I) agreed that an iTunes backup/restore was the only way to preserve her data. She was confused. No worry, told her I had it handled and the Verizon employee agreed. Great. Yet we get home and begin the process. My girlfriend was not on the latest iOS (understandable given the battery scenario and she was on an iPhone 6) and this was ridiculous to her because she had to update in order to do the iTunes back up. Whatever, I brushed it off. Her phone was updated, and backed up... Which took a while but we are talking 30gb (of which she had no understanding of how much that was). After the back up we discovered her new phone wasn't working due to a bad sim, great, no problem we have the old one... But oh no. "I don't want that shitty old sim" she said. Uhmm what... I say, and say let me get an earring (to switch the Sims) and she gave one to me and as soon as I went to pop the tray, she had a fucking heart attack as if I was demolishing her phone. I talk her down, get it switched, get the phone to restore (slow process as she's complaining... 30gb mind you) and it works. She goes to bed. Comes back, texts aren't working. I say imessages or texts (now she has no idea) I troubleshoot, seems nothing's working, and that's okay Verizon must of reinstated the new sim and deactivated the old (fine). I switch them and it works. She proceeds to berate me about the SIM cards because she didn't want the 'old shitty one' (the one that got us to the place of a functioning phone).
Now everything works and she claims a Genius bar employee would of done this in minutes.
I (obviously) lose my shit, now I'm sleeping on the couch.
Im an IT professional / programmer..... this shit really ticked me off.38 -
Me being a good collegue teaching my friend basic C++ for upcoming exam and trying my best not tore my friend apart.
Crime scene: university's library, today, 1PM.
Me: Create a new class, just type 'class' and hit TAB
Him: I'm trying to but it pastes some code
Me: That's the point of hitting TAB.. now that we are finished, include it in your main file, the one with main entry point
Him: I have no such thing
Me: Look for main function
Him: There's none, what is it called?
Me: ...main
Him: Yeah, what is it called?
Me: ..main, the name is main
Him: I get it, but what is it called?
Me: 'MAIN' FOR GODS SAKE, THE NAME IS 'MAIN' *points towards my code*..
Him: Oh, okay, I get it now
Me: Ok, let's compile
*Error pops on his screen*
Him: You know what, I don't think you can really program.. *closes laptop and walks away*.
FML16 -
string excuses[]={
"it's not a bug it's a feature",
"it worked on my machine",
"i tested it and it worked",
"its production ready",
"your browser must be caching the old content",
"that error means it was successful",
"the client fucked it up",
"the systems crashed and the code got lost" ,
"this code wont go into the final version",
"It's a compiler issue",
"it's only a minor issue",
"this will take two weeks max",
"my code is flawless must be someone else's mistake",
"it worked a minute ago",
"that was not in the original specification",
"i will fix this",
"I was told to stop working on that when something important came up",
"You must have the wrong version",
"that's way beyond my pay grade",
"that's just an unlucky coincidence",
"i saw the new guy screw around with the systems",
"our servers must've been hacked",
"i wasn't given enough time",
"its the designers fault",
"it probably won't happen again",
"your expectations were unrealistic",
"everything's great on my end",
"that's not my code",
"it's a hardware problem",
"it's a firewall issue",
"it's a character encoding issue",
"a third party API isn't responding",
"that was only supposed to be a placeholder",
"The third party documentation is wrong",
"that was just a temporary fix.",
"We outsourced that months ago.","
"that value is only wrong half of the time.",
"the person responsible for that does not work here anymore",
"That was literally a one in a million error",
"our servers couldn't handle the traffic the app was receiving",
"your machines processors must be too slow",
"your pc is too outdated",
"that is a known issue with the programming language",
"it would take too much time and resources to rebuild from scratch",
"this is historically grown",
"users will hardly notice that",
"i will fix it" };11 -
Me: Hey, my laptop (with stickers on it) is in for repair, can't get any work done.
Friend: Oh, that sucks, we going to be delayed launching our app!
... few days later ...
Friend: Hey, did u get it back yet?
Me: They ended up giving me a brand new one cause they couldn't repair it.
Friend: That's awesome man, you got lucky!
Me: F*@$ that, I LOST MY STICKERS!7 -
Where do I even start?
Personal projects?
So many. Shouldn't count.
Unpaid game dev intern?
Unpaid game dev volunteer?
Both worthwhile, if stressful. Shouldn't count either.
Freelancing where clients refused to pay?
That's happened a few times. One of them paid me in product instead of cash (WonderSoil, a company that [apparently still] makes and sells some expanding super potting soil thing). The product turned out to be defective and killed all of the plants I used it on. I'd have preferred getting stiffed instead. Their "factory" (small, almost tiny) was quite cool. The owner was a bitch. Probably still is.
Companies that have screwed me out of pay?
So many. I still curse their names at least once a month. I've been screwed out of about $13k now, maybe more. I've lost track.
I have two stories in particular that really piss me off.
The first: I was working at a large robotics company, and mostly enjoyed my job, though the drive was awful. The pay wasn't high either, but I still enjoyed the work. Schedule was nice, too: 28 hours (four 7-hour days) per week. Regardless, I got a job offer for double my salary, same schedule, and the drive was 11 minutes instead of 40. I took it. My new boss ended up tricking me into being a contractor -- refused to give me a W2, no contracts, etc. Later, he also increased my hours to 40 with no pay increase. He also took forever to pay (weeks to months), and eventually refused to pay me to my face, in front of my cowokers. Asshole still owes me about $5k. Should owe me the the difference in taxes, too (w2 vs 1099) since he lied about it and forced me into it when it was too late to back out.
I talked to the BBB, the labor board, legal council, the IRS (because he was actively evading taxes), the fire inspector (because he installed doors taht locked if the power went out, installed the exit buttons on the fucking ceiling, and later disconnected all of said exit buttons). Nobody gave a single shit. Asshole completely got away with everything. Including several shady as hell things I can't list here because they're too easy to find.
The second one:
The economy was shit, and I was out of a job. I had been looking for quite awhile, and an ex-coworker (who had worked at google, interestingly) suggested I work for this new startup. It was a "reverse search engine," meaning it aggregated news and articles and whatnot, and used machine learning to figure out what its users are interested in, and provided them with exactly that. It would also help with scheduling, reminders of birthdays, mesh peoples' friends' travel plans and life events, etc. (You and a friend are going on vacation to the same place, and your mutual friend there is having a birthday! You should go to ___ special event that's going on while you're all there! Here's a coupon.) It was pretty cool. The owner was not. He delayed my payments a few times, and screwed me over on pay a few more times, despite promising me many times that he was "not one of those people." He ended up paying me less than fucking minimum wage. Fake, smiling, backstabbing asshole.
The first one still pisses me off more, though, because of all the shit I went through trying to get my missing back pay, and how he conned me every chance he got. And how he yelled at me and told me, to my face, that he wasn't ever going to pay me. Fucking goddamn hell I hate that guy.8 -
Well, here's the OS rant I promised. Also apologies for no blog posts the past few weeks, working on one but I want to have all the information correct and time isn't my best friend right now :/
Anyways, let's talk about operating systems. They serve a purpose which is the goal which the user has.
So, as everyone says (or, loads of people), every system is good for a purpose and you can't call the mainstream systems shit because they all have their use.
Last part is true (that they all have their use) but defining a good system is up to an individual. So, a system which I'd be able to call good, had at least the following 'features':
- it gives the user freedom. If someone just wants to use it for emailing and webbrowsing, fair enough. If someone wants to produce music on it, fair enough. If someone wants to rebuild the entire system to suit their needs, fair enough. If someone wants to check the source code to see what's actually running on their hardware, fair enough. It should be up to the user to decide what they want to/can do and not up to the maker of that system.
- it tries it's best to keep the security/privacy of its users protected. Meaning, by default, no calling home, no integrating users within mass surveillance programs and no unnecessary data collection.
- Open. Especially in an age of mass surveillance, it's very important that one has the option to check the underlying code for vulnerabilities/backdoors. Can everyone do that, nope. But that doesn't mean that the option shouldn't be there because it's also about transparency so you don't HAVE to trust a software vendor on their blue eyes.
- stability. A system should be stable enough for home users to use. For people who like to tweak around? Also, but tweaking *can* lead to instability and crashes, that's not the systems' responsibility.
Especially the security and privacy AND open parts are why I wouldn't ever voluntarily (if my job would depend on it, sure, I kinda need money to stay alive so I'll take that) use windows or macos. Sure, apple seems to care about user privacy way more than other vendors but as long as nobody can verify that through source code, no offense, I won't believe a thing they say about that because no one can technically verify it anyways.
Some people have told me that Linux is hard to use for new/(highly) a-technical people but looking at my own family and friends who adapted fast as hell and don't want to go back to windows now (and mac, for that matter), I highly doubt that. Sure, they'll have to learn something new. But that was also the case when they started to use any other system for the first time. Possibly try a different distro if one doesn't fit?
Problems - sometimes hard to solve on Linux, no doubt about that. But, at least its open. Meaning that someone can dive in as deep as possible/necessary to solve the problem. That's something which is very difficult with closed systems.
The best example in this case for me (don't remember how I did it by the way) was when I mounted a network drive at boot on windows and Linux (two systems using the same webDav drive). I changed the authentication and both systems weren't in for booting anymore. Hours of searching how to unfuck this on windows - I ended up reinstalling it because I just couldn't find a solution.
On linux, i found some article quite quickly telling to remove the entry for the webdav thingy from fstab. Booted into a root recovery shell, chrooted to the harddrive, removed the entry in fstab and rebooted. BAM. Everything worked again.
So yeah, that's my view on this, I guess ;P30 -
So today our CFO stepped into IT and angrily proclaimed someone using tech@ e-mail and fake name is defrauding company funds buying themselves... "used female lingerie with extra virgin juice" (sic!).
I work for an IPSP, we handle finance for commercial services (think PayPal but smaller). One of our clients is a big platform where girls can sell items like bath water, used socks and more. CFO demanded our admins found out who and when connected to that website, what URLs and so on.
As mentioned, said platform is pretty big, hence, from time to time we help them with their service when they ask us to, that's why we have a tech@ account. Last month there was a minor issue with one of the banks, someone fixed it and, as per usual, made a small payment of €1 topping up the account wallet to make sure everything works. It was an intern whose will to live is still strong and unencumbered with experience so she jokingly wrote "panties juice, extra virgin" in the payment note. What she *didn't know*, however, is that admins on that platform used the very same account to test new billing system they've implemented and our CFO received an invoice.9 -
OH MY GOD
WHO NAMES A CONFERENCE ROOM AFTER AN -ADDRESS-??
At my new job, we had all day training on Friday. It was emphasized many times that we should not be late. I look at the meeting invite many times, and it says [123 Fake], with Fake being a Very Well Known Street, and I see on Google Maps that there's an office building there. Great, we must have an off-site training facility to help our clients become certified in our product. It doesn't say which floor, but I assume the small space we have in that large office building will become evident once I check in with lobby security.
Friday morning comes, I get to the office building 20 minutes early, and try to check in. They've never heard of my company. Maybe there's a computer lab we rent out? No, they don't know anything about that. I don't have work email or slack set up on my phone yet, so who do I call? I try reception, no one answers. Eventually I call our customer support line.
I shouldn't be at 123 Fake St. I should be at the office. Because that's the name of the conference room!
YOU HAD ONE JOB, ROOM NAMER!
Last night my boyfriend and I tried to think of worse names for conference rooms. The only ones I could think of were "meeting canceled" (but with that, at least I would be in the correct fucking building!) or just naming every conference room "conference room". Here's the thing: there's not just one 123 Fake St room! There's two of them right next to each other! So you can easily show up and think, I remember I was supposed to be in this room, but which one?
And I'm not even the first person to make this mistake. CLIENTS have gone to the wrong building before because they get included on meeting invitations that include conference room names! WTF!
It's pretty common to have Chicago conference rooms named after neighborhoods, or iconic buildings, etc. But nobody is going to think, "meeting in Bucktown? I'll just wander around the neighborhood until I find people with laptops". It's obviously a conference room. BUT A FUCKING ADDRESS OF A NEARBY OFFICE BUILDING? It's not even an iconic of a building!
Names matter. I care a lot about names in code. I never realized it could apply to the physical world as well. So now I am on a mission to change the names of these Goddamm conference rooms so I'm the last person to be directed to the wrong fucking building.
OH, and I'm out $9 for a taxi ride and a pair of gloves that got lost in the taxi so that's GREAT.12 -
A quite normal Windows day:
Bios to Windows: "Go now! Get up!"
Windows to Bios: "Always slow with the young circuit boards."
"I've got something weird on screen."
Windows' answer: "Ignore it first."
Hardware assistant to Windows: "The user puts pressure. He wants me to identify this thing. Could be an ISDN card."
Windows: "Well, well."
Unknown ISDN card to all: "Will you please let me in?"
Network card to intruder: "You can't spread out here!"
Windows: "Quiet in the case! Or I'll cut both their support!"
Device Manager: "Offer compromise. The network card is allowed on Mondays, the ISDN card is on Tuesday."
Graphics card to Windows: "My driver retired yesterday. I'm crashing now."
Windows to graphics card: "When will you be back?"
Graphics card: "Well, not at first."
CD-Rom drive to Windows: "uh, I would have a new driver here..."
Windows: "What's ich´n supposed to do with it?!"
Installation software to Windows: "Leave it, I'll mach´ that already."
Windows: "That's nice to hear."
USB connection to interrupt management: "Alarm! Just been penetrated by a scanner cable. Request response."
Interrupt management: "Where are you coming from?"
USB connection: "I was in the computer right from the start. I'm joined by another colleague."
"You're not on my list." - "Say something."
Windows: "Hopefully there won't be another printer."
Graphics card: "The new driver twitches."
Windows: "We'll just have to get the old one out of retirement."
Uninstall program to new driver: "Go away."
Unwanted driver: "Fuck you."
Windows to Norton Utilities: "Kill him and his brood!"
Utilities to driver rests: "Sorry, we have to delete you."
Important system file: "Arrrrrrgghh!"
Windows on blue screen: "Gib´, the Norton Boys are over the top again."
Blue screen to user: "So, that's it for this week."
Excuse me for stealing your time
And I know it's way too long7 -
After months of tedious research, I finally feel like I understand machine learning.
All of my programmer buddies are in envy, but I keep trying to explain that what I finally get is that it's not as hard as it's presented to be.
I feel like a lot of the terminology in machine learning is really pretentious and unnecessary, and just keeps new people from the field.
For example: I could say: "Yeah, I'm training a classification model with two input neurons, a hidden activation layer, and an output neuron", and you might think I was hot shit. But that just gets translated into "I'm putting in two inputs, sorting them, and outputting one thing".
I feel like if there was a plain language guide to machine learning, the field would be a lot more attractive to a lot more people. I know that's why it was hard for me to get in. Maybe I'll write one.28 -
That's a new one on me fixing a website on my phone whilst on a train , internet dropping in an out
I did it 😎
11 -
I'm the lead dev at a tiny startup and was asked to write the job description for our open junior dev position since the new hire will directly work with me everyday. Since posting the opening online 2 weeks ago I've had 2 different recruiters contact me telling me about how my resume perfectly lines up with the job description ... no shit Sherlock, that's because I wrote the job description to find someone with my skill set.
So I've been messing with these recruiters. I told the last one I was interested so when he asked my salary I told him what I make but said I would settle for a lot less to get this job. Eventually he asked for my updated resume so I sent it clearly showing that I work for the company the opening is at. He called me back saying he's not sure what's going on so I told him I wanted to pursue the opening because I wanted to be my own boss. We both laughed but his was that nervous "I don't get it" laugh ... how sad for him.4 -
I've had many, but this is one of my favorite "OK, I'm getting fired for this" moments.
A new team in charge of source control and development standards came up with a 20 page work-instruction document for the new TFS source control structure.
The source control kingpin came from semi-large military contract company where taking a piss was probably outlined somewhere.
Maybe twice, I merged down from a release branch when I should have merged down from a dev branch, which "messed up" the flow of code that one team was working on.
Each time I was 'coached' and reminded on page 13, paragraph 5, sub-section C ... "When merging down from release, you must verify no other teams are working
on branches...blah blah blah..and if they have pending changes, use a shelfset and document the changes using Document A234-B..."
A fellow dev overheard the kingpin and the department manager in the breakroom saying if I messed up TFS one more time, I was gone.
Wasn't two days later I needed to merge up some new files to Main, and 'something' happened in TFS and a couple of files didn't get merged up. No errors, nothing.
Another team was waiting on me, so I simply added the files directly into Main. Unknown to me, the kingpin had a specific alert in TFS to notify him when someone added
files directly into Main, and I get a visit.
KP: "Did you add a couple of files directly into Main?"
Me:"Yes, I don't what happened, but the files never made it from my branch, to dev, to the review shelfset, and then to Main. I never got an error, but since
they were new files and adding a new feature, they never broke a build. Adding the files directly allowed the Web team to finish their project and deploy the
site this morning."
KP: "That is in direct violation of the standard. Didn't you read the documentation?"
Me: "Uh...well...um..yes, but that is an oddly specific case. I didn't think I hurt any.."
KP: "Ha ha...hurt? That's why we have standards. The document clearly states on page 18, paragraph 9, no files may ever be created in Main."
Me: "Really? I don't remember reading that."
<I navigate to the document, page 18, paragraph 9>
Me: "Um...no, it doesn't say that. The document only talks about merging process from a lower branch to Main."
KP: "Exactly. It is forbidden to create files directly in Main."
Me: "No, doesn't say that anywhere."
KP: "That is the spirit of the document. You violated the spirit of what we're trying to accomplish here."
Me: "You gotta be fracking kidding me."
KP grumbles something, goes back to his desk. Maybe a minute later he leaves the IS office, and the department manager leaves his office.
It was after 5:00PM, they never came back, so I headed home worried if I had a job in the morning.
I decided to come in a little early to snoop around, I knew where HR kept their terminated employee documents, and my badge wouldn't let me in the building.
Oh crap.
It was a shift change, so was able to walk in with the warehouse workers in another part of the building (many knew me, so nothing seemed that odd), and to my desk.
I tried to log into my computer...account locked. Oh crap..this was it. I'm done. I fill my computer backpack with as much personal items as I could, and started down the hallway when I meet one of our FS accountants.
L: "Hey, did your card let you in the building this morning? Mine didn't work. I had to walk around to the warehouse entrance and my computer account is locked. None of us can get into the system."
*whew!* is an understatement. Found out later the user account server crashed, which locked out everybody.
Never found out what kingpin and the dev manager left to talk about, but I at least still had a job.13 -
- Take a course called "Mobile Application Development"
- Teacher is new and is thus lost on how things work because there is no formal training for them
- Teacher only knows Objective-C so that's all we're allowed to use
- Nobody owns a Mac and I think one or two people had an iPhone/iPad
- Only 4 public Mac computers are available to the school
- One to two people are on them frequently, limiting our time on them as well
- Not a part of the schools normal imaging and updating system, so we get to do it ourselves, which takes up like a week or two of classes (4 classes)
- This includes installing XCode and getting Apple IDs
- No real instructions are given besides "implement the APIs for Facebook, Twitter, and Google Maps into an app"
- Being an ass, for the final day instead of showing off the app we made I made a PowerPoint of my dislike of Objective-C and various struggles I ran into and how I decided not to make the app at all.
- shrug emoji4 -
Just landed a new job as a developer for a company called NeuraLegion! They use Crystal on their stack, so guess what language I'll be using! But that's not even the best part. They hired me in part because they are using one of my open source Crystal libraries (a NLP library called Cadmium) and like the way I do things. So I am going to be getting paid to work on my FOSS libraries, whist sitting at home in my undies!
Holy shit I'm excited 😂😁7 -
I was assigned a girl that's new to the industry (but with a master's degree).
I had high hopes, as people told me she is quite a curious fellow. As I am just a junior Dev with 2 yrs of experience Ididn't know if I could handle her.
We started working on a project. Which was a change request for a previous project I had developed. I gave her 2 days to read and understand the functional requirements of previous project and this CR. Then explained everything too.
Then I gave here another 3 days to read the previous design document to learn how this code worked.
I asked her multiple times if she has any questions. She said she got everything. Cool.
One week goes by. We start to code the CR while she is shadowing me. I explained why we chose one of the two approaches. And why we are making any of the changes. She as usual nodded in agreement.
I asked her to create Unit test cases.
She couldn't write even one. So, I quizzed her, she knew nothing about the project! Nothing at all!
FUCK!
I wrote down the test cases in short hand and told her to document it (by reffering previous UTC). She wrote the test cases in short hand in the document. And she reused the previous document and did not even clean it out.
After fixing the document I asked her to execute them. But nope, she doesn't even know how the application flows for this project. FML.
It took her 3 days to write and test 8 test cases.
Now she is assigned to me in another project. This one is more complicated. And I gave her a function skeleton to complete. I figured that it will take me 15 minutes so let's give her a day. But nope. 3 days no progress.
I get it someone might not be quick to grasp something. But you know what grinds my gears? That even after this you act like a know it all! Fuck! For someone who hasn't worked with her she is the most dilligent developer.
How the fuck does someone survive masters and suck so bad!22 -
Initial steps of learning any new programming language :
*heck yeah I created a calculator. Guess I'll show my family that I actually can code! *
-hey mom, dad look I made a simple calculator using python B)
- uhm... That's great son but dont we already have one of those?
- yeah but like... this is completely different it uses a different programming language than what you and I have been using all this time.
- ah I see. Good for you then
*muttering to each other*
-are you sure he's got the aptitude to be a cse?
-at this point we can just hope.
Me:*stares blindly in my dark room contemplating why I'm alive*7 -
So... Just overheard a conversation at an Apple store...
tl;dr;
The customer gets furious for not getting to buy a mac pro for the price he wants and it doesn't even include the monitor there.....
C - customer, S - Sales person.
C: Hey, I've heard that apple released new home computers. May I get one?
S: Hello, they are not out yet.
C: WHAT?! How can they not be out yet? They released it like a week ago.
S: Well, they announced it, not officially released it for sale.
C: Ah, whatever. Can I pre-order it now?
S: Sure, we'll need your details and a deposit.
C: What? A deposit for what? That $1000 machine?
S: Sir, do you know the prices?
C: Of course. They have released a new machine and it will cost like previous ones - from $1000.
S: Then you might be talking about Macbook Air...
C: *Interrupts* No, I'm talking about the desktop computer, the whole box.
S: Ok... It starts at ~$6000.
C: WHAT?! It can't be... Oh well, I'll buy it. I hope it's the fully-specked one. Oh and does it come with a monitor?
S: No sir. It's the base model and it has no monitors.
C: WHAT?! How can this be?
S: You see, these are devices created for professionals. They are not for home users since our iMac line is....
C: *Interrupts again* Are you saying I'm not a professional?
S: I'm sorry but by the questions and lack of information - it seems to be true - you are not a professional.
C: FUCK YOU, I'm going to another store and they will sell it for me for $1000. What a piece of crap is this.
*Customer leaves furiously*
S: *to another S* - What is wrong with that dude? Is he high or what?
S2: *shrugs* and tells that it's the 5th time someone came to order that pc and was scared by the price.
---
So yeah... It's fun to see how idiots think that anything apple releases is for them... Once again I was made sure that apple fans are brainless fucks that will buy anything it produces and if that is not in the right price - they'll get furious.
ps. I own apple product, mac pro 2015. Would never buy a newer one NOR an iphone. I don't think that anyone is dumb just for buying it - people buy whatever fits their needs and that's ok but... More than we would like to admit - people buy it because it's an apple product....23 -
As a German developer living in Germany, I am used to write my code completely in English. In all of my former companies that was also the norm. In one company, we even talked completely in English with each other to a point where even if only German people where in a room, they would default to English at one point in a conversation because it became second nature to us.
(That company was very international and we had a lot of people from all over the world working there.)
Now, I work at a new German company that focuses on the German market. And for some reason I failed to ask them:
Do you write your code in English?
Because that's the norm, isn't it!? I just assumed it to be the case.
Nope! This time it is a mess of German and English term intermixing in glorious abysmal ways I never thought possible.
Sometimes we translate terms, sometimes we don't. So you have to wrap your mind around collections of words that COULD mean the same thing unless they don't. Best case, you have two words for the same thing, but I've seen up to five words (or abbreviations) to describe one business entity. Madness.
And don't get me started on the plurals. In English, it's almost exclusively: add an `s`.
In German, the singular and plural can be the same (e.g. all nouns ending with `-er`) so tough luck determining if you are on an object or an array of objects. (Weak typing language in use does not help either but that's an entirely different rant.)25 -
It's kind of neat knowing people who are famous for things I don't care about, and having their numbers / talking semi-regularly. They're a special person to so many others, but to me they're just some random person that's mildly annoying.
Like API Guy.
Freaking API Guy.
He's a millionaire musician who's adored by literally millions of people, but none of them know he writes absolutely terrible APIs, zero tests, rushes to the shiniest new things, and happily agrees to everything (often without listening) only to deny it later. Absolutely infuriating.
Or knowing one of Netscape founders as that strange and really terrible trumpet player with the great tequila. He did give me his copy of The C Programming Language (the bible) though. He was cool. Super weird, but cool.
It's just a strange feeling. I don't care, and yet others inexplicably think I should. I don't understand it. They're just people? idk.14 -
A friend bought a new PC and asked me to help him set it up. He said he got everything working except the CD drive. He said it took him forever just to figure out how to get the keyboard and mouse to work. "I mean, have you ever owned a computer where the keyboard and mouse had to plug into the monitor instead of the computer?"
He bought a desktop PC, and and all-in-one thinking it was a monitor. He had the HDMI going from the all-in-one to the desktop, and was trying to use the CD drive on the desktop.
Wish you could've seen his face when I unplugged the desktop computer and his "monitor" didn't shut off. He looked at the desktop, and then the all-in-one, and said, "Wait... How is it still on?"
He also had his old USB wifi plugged into the desktop thinking that's what was providing him with an internet connection.11 -
Gotta love well meaning juniors with completely misplaced intentions.
Nathan: "Hey, do you want a quick 5 minute demo of the code we've changed to move to library version x?"
Almond: "Sure (I wasn't that fussed about moving to library x, but he seemed determined and there's some nice to haves with bumping the version, so we approved it.)"
Nathan: "Cool, so we have this built here, and..."
Almond: "...wait, that's not our CI system!"
Nathan: "Yeah, so I moved to a new CI system too because we couldn't get that working in the old one"
Almond: "...right, we'll need to discuss that, because..."
Nathan: "Sure, we also moved the templating engine as well as there were more examples using this one with library x"
Almond: "...yeah, so I don't think we're looking to switch the templating engine because..."
Nathan: "...and you guys also need to change a bunch of your code as it's all broken since we put the new version in, most of the tests fail..."
Great... so we've got a branch that breaks a bunch of code, switches the templating engine to one we don't want to use, and switches the CI to the one the company is trying to actively migrate away from...
Almond: "We're going to need longer than 5 minutes. I'll put something in the calendar."
🤦♂️😬😠8 -
Sorry for being late, stuffs came inbetween!
I have done a few privacy rants/posts before but why not another one. @tahnik did one a few days ago so I thought I'd do a new one myself based on his rant.
So, online privacy. Some people say it's entirely dead, that's bullshit. It's up to an individual, though, how far they want to go as for protecting it.
I personally want to retain as much control over my data as possible (this seems to be a weird thing these days for unknown reasons...). That's why I spend quite some time/effort to take precautions, read myself into how to protect my data more and so on.
'Everyone should have the choice of what services they use' - fully agreed, no doubt about that.
I just find one thing problematic. Some services/companies handle data in a way or have certain business models which takes the control which some people want/have over their data away when you communicate with someone using that service.
Some people (like me) don't want anything to do with google but even when I want to email my best fucking friend, I lose the control over that email data since he uses gmail.
So, when someone chooses to use gmail and I *HAVE* to email them, my choice is gone.
TO BE VERY CLEAR: I'm not blaming that on the users, I'm blaming that on the company/service.
Then for example, google analytics. It's a very good/powerful when you're solely looking at its functions.
I just don't want to be part of their data collection as I don't want to get any data into the google engine.
There's a solution for that: installing an addon in order to opt out.
I'm sorry, WHAT?! --> I <-- have to install an addon in order to opt out of something that is happening on my own motherfucking computer?! What the actual fuck, I don't call that a fucking solution. I'll use Privacy Badger + hosts files to block that instead.
Google vs 'privacy' friendly search engines - I don't trust DDG completely because their backend is closed/not available to the public but I'd rather use them then a search engine which is known to be integrated into PRISM/other surveillance engines by default.
I don't mind the existence of certain services, as long as they don't integrated you with data hungry companies/mass surveillance without you even using their services.
Now lets see how fast the comment section explodes!26 -
+++ Microsoft switches to the open-source Chromium engine for the Edge browser +++
On December 6th, Microsoft announced that they will dump their own Edge engine and replace it with Chromium, an open-source browser engine developed by Google.
This way they are promising the ~2% of global internet users who prefer Edge over other browsers to experience a better web experience.
The about 2% of market share is one of the reasons Microsoft decided to stop developing their own engine. It's just not worth it.
Joe Belfiore, corporate veep of Windows, said they also want to bring Edge to other platforms, like macOS, to target more audiences.
Web-Developers, like myself, will most likely have the most to gain. Less browsers to target means less incompatibility issues.
There are a lot of HTML5 features that the Edge engine doesn't support...
The new Edge won't be a UWP app, in order to make it usable outside of Windows 10. Instead, it will be build in accordance with the Win32 API, so we can even expect support for older Windows versions, like Windows 7 and 8. A preview release is planned for early 2019.
Because they are switching to Chromium and the Win32 API, Microsoft is hiring new developers! So if you always wanted to work at Microsoft, now is your chance!
That's it!
Thanks for reading!
Source: https://theregister.co.uk/2018/12/...
10 -
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 -
Fellow Dev: the clients are requesting a gallery on their website with functioning modals.
Me: okay cool
So for the record, I'm new to front-end and I've got quite a lot to learn in JavaScript.
*I googled as much as I could and I made a proper functioning gallery in 2 full days of coding*
Him: okay, so this is great but they aren't really digging it.
Me: *sigh* yes, so what do they want?
Him: have you seen how an image opens in Google images? Like you click on one, the image opens while the rest of the content shifts down?
Me: um... Yeah?
Him: yeah, so they want that.
Me: ... *Scoops the web trying to figure out how Google does it*. Dude, I can't find anything close to it and I've still got a lot to learn. Idk how to do it.
Him: well, you're being paid for that. So, you better do it.
Me: 1000Rs ( approx. 14.58$ ) isn't called "being paid". Gimme a break here.
Him: You're a novice rn.
Me: why don't you do it?
Him: I'm your boss.
*Sigh* (he indeed is my boss)
Him: deal with it.
Me: FU........C.....*suddenly I realized how it's done* OH OH OH OH I just got it, I just got it!
(I actually make something like that)
*Lol yay*
That's just my best story of a fight. Lol.5 -
I have got a new director at work. My previous director had to retire already, the man was already feeling it and he had been on the institution for more than 35 years....I am 30, so this tells you how much the man has been there.
This new dude.....has the presence of a Caterprie (Pokemon) or an Oompa Loompa. In contrast, the previous director felt like a 4 star General (never been in the presence of a 5 star since those occurrences are world war rare) but I had respected that man so much and loved working with him. I really did loved my boss, he was stern and professional, but kind and friendly to his staff, fiercely protective, no one took advantage of I.T while he was there, he would literally fight for us and took our word before anything else. The man was, well, a true man. A true leader.
He took a chance in putting me as the head of my department, but he had faith in me, and coached me and trained me as much as he could. Had the requirement for his position not been a masters he himself told me that he would have loved to make me his successor, even when I would constantly tell him that I was scared shitless of the work he did and the amount of things he did for the institution, to me this is a very laaaaaaaaarge cowboy hat to fill (this is Texas, he wore a hat, the saying is normally "shoes to fill", but fuck it)
This new guys looks away when the other managers are speaking to him. He constantly interrupts us. He constantly tells us about how the other institution in which he was (rival might I add) does X or Y, its fucking annoying to the point that me and the other managers have a drinking game, for every time he references his old institution we drink one beer over the weekend. It is Saturday night and I am 36 in in total (this is my favorite part of it tho) and it is just annoying.
His train of thought makes no sense to me:
"This application, where did you buy it? we tried purchasing one on Y when I was still there but found none"
Me: "Well, since it was a new government mandate and had nowhere to go we had to develop it in house"
Him: "We had tried to purchase what you guys had but found no place that sold it, so why didn't you try purchasing it?"
Me:.....well, because it was brand new, purchase it from where? We also don't like dealing with vendors that manage these sorts of things because every new requirement takes them weeks to produce on very high budgets, historically, my department has only had maintenance fees for the software that we have and even those applications crap themselves all the time and they take weeks to answer back to us.
Him: So you decided to develop it in house instead? we would never do that! back at y we purchased everything our engineers never really developed anything!
Me: Well then, what is the purpose of having engineers if they are not going to actually develop an application?
Him: IF there is something out there that is better then why should you reinvent the wheel?
Me: For this one I did not reinvent the wheel, I am not talking about creating a programming language from scratch, but how does custom solutions that specifically feed the needs of the institution to be produced otherwise? The department has developers for a reason, because they have very specific needs in here that can only come from a team of developers that are in house satisfying those needs.
Him: Well our engineers never had to do that. Sure projects sometimes had to put on holds because the vendor was busy, but such is the nature of development
Me: No it is not, the nature of development is to create things, it is one thing for my team to go through bugs and software considerations, it is another for me to not provide a service because some random company is taking two weeks on a $300 dllr an hour contract to put a simple checkbox on a form. If a project fails the board is not going to care that some vendor is not doing their job, they are just going to blame me, if that is the case then I would much rather the blame be actually mine than some sucky third party "developer" also, your engineers where not even engineers, they were people with a degree that purchased things, that's it, please do not compare them to my guys or refer them as engineers in front of me, they are not.
Him: Well, maybe.
MAYBE?!! motherfucker I did not kill myself learning the ins and outs of architecture and software engineering on my own time after my fucking bachelors in C.S for your codeless background ass to tell me MAYBE. My word IS the fucking WORD here, not yours. Fuck me I really dislike this dude's management practices.
The shitty part? He is not a bad person, he is not a bad dude that is out to get us, just a simple minded moron with no place as a leader.
I know leaders, I know what a leader is, this is not one.10 -
Last day on my current job before switching to a new company.
I have 10 tasks on my "to finish before leaving" list.
Finished one task and showed it to my boss.
I now have 13 tasks on my "to finish before leaving" list.
Do you want to get people to quit? Because that's how you get people to quit.2 -
I just ran a batch rename script in the console. What's so bad about this? I forgot that I had closed the previous console, which caused Win+4 to open a new one at the default location. Which is my home folder.
"Desktop"? Nah, you mean "file4.png". "Downloads"? No, that's "file6.png". "rclonesync-V2-master"? That's "file19.png" now.
Luckily I was able to restore it all, except for one folder, containing unreadable files with names like "data_0". I hope I didn't need that. And luckily it skipped all hidden files and folders.3 -
In 2012 my parents bought a new cordless phone with base station for their home. Worked fine.
Unless sometimes, nobody was reachable - mostly, when they weren't home - of course nobody would answer the phone.
Finally I called them one day, and mom answered the phon - "Hi, we are going to the mall now, when will you come ... bzz" - beep beep. Nothing until I came home.
They just came back from the mall, when I arrived. And mom said - this phone won't work - and took the cordless phone out of her bag, which she took to the mall ... yes. mom - that's no mobile ... I had to explain. -
5 years ago i was working on a 2D game using C and we needed to use the sleep function (I forgot why ) .but however one of my team member did something new , for each second he did an empty for loop from 0 to 1000000 .You never know maybe that's how it's implemented (sarcasm)1
-
It was friday evening and almost everyone in office had left. I was assigned a bug related to some of my code changes. I called my senior to help me debug (has three years of experience, whereas me having only one year exp, who is also a very good friend of mine *always helps in debugging*).
So the code goes
switch (someEnum) {
case One:
doSomething()
// no break
case Two:
t.x = someEnum
break
case Three:
.....
}
I had recently added new enun One and was reciting the code logic to him as we were looking through code.
Him: Hey you haven't set t.x in case One. How did you miss that?
Me: No look, I haven't but a break on it. It will go ahead and set it in next case.
Him: What are you talking about? if the someEnun is One why would it execute Two case. Lets copy that line up there and try it locally.
Me: No no no wait. Are you saying that groovy doesn't need breaks in switch (Me being new to groovy but good with Java).
Him: Why would you need break in switch case even in Java?
Me: *stares at him*
Him: I'm going to execute a psvm right freaking now.
Me: *while he writes the psvm* Why did you think there were breaks in switch in any code?
Him: Shut up. *writes psvm code cursing me everywhere*
*executes code*
No way. Really??
Me: Tell me why do you think are there breaks in switch.
Him: I though they were to get you out of switch block and not execute the default block.
Me: So were you coding switch until now without breaks?
Him: I don't know man. I'm starting to doubt all the switches I have ever written.
Me: Anyway that's not the problem, so moving on.
*a while later*
Him: If a interviewer would ask me how would you rate yourself in Java. I would be like "Well I worked on various projects for 3 years in Java, but didnt know why we put breaks in switch. So you figure it out yourself."
One of the best moments in office.8 -
!dev
This is the one thing about Spotify that annoys the living hell out of me (yes, I use spotify, if anyone knows a good/working self hosted alternative, let me know! I've tried quite a few including funkwhale but they all failed for me).
I'm a raw hardstyle/rawstyle lover and listen to the raw duo Malice a lot. Now, what would the problem be here? Sometimes, there are several artists in different scenes with the same name. This is completely fine.
Spotify, however, mixes up music of the raw duo Malice and the rock/metal band Malice. I keep getting release notifications/news regarding new music/events from Malice but 90 percent of the time this is about the rock/metal band and NOT the raw duo.
It's also very weird to suddenly hear rock music while listening to my daily mix; the wrong malice is mixed in once again.
Yesterday I got an email saying "Check out Malice's newest release on Spotify!"
*OH FUCK YEAH*
*opens Spotify release radar*
*YAAA....FUCK*
That's the other malice 😡
Is it so hard, Spotify? Entirely hiding the artist results in the right one being hidden as well for me 😞14 -
Just came back from a new café (to the pedantic among us, yes I know it's a bar.. get over it).
And I met some Apple fanboy 🤭
So the guy kept on bragging about his shiny iPhone 6.. and I figured that I'd chime in. Due to my short-term memory being terrible, I'll be paraphrasing here.
M: me
S: iPhone usar _/\_
M: iPhone 6 ey..? I've heard about some devices in which the old ones are throttled down in a system update "to save the battery".
S: Yes, biweekly updates!! You can even delay them to tune them down to the time during which your device is charging and can commence its system update.
M (thinking): You've clearly missed the point sir.. but on Android, system updates don't need to be willfully delayed even. They (usually) won't commence unless your device is 80% and charging. OnePlus has been an exception to this though, probably under the assumption that their users are mostly power users that know what they're doing.
M: You do realize that given that your iPhone 6 is quite old already, Apple will very likely start throttling your device during a system update in the next few months, right.
S: What the hell dude.. look, look how smoothly it's been going for the last few years!!! Nothing wrong with that.
M: Just wait until your repair bill comes from those Geniuses 🤭
M: Sir, you do realize that Apple quotes €600 for battery repairs nowadays, right.
S: What the hell dude!!! I can buy a whole new phone for that much!!
M: Exactly!! That's exactly Apple's business tactic!!! They design their phones as such that the battery replacement (one of the most common repairs) requires you to replace not only the battery, but the whole chassis!!! And on the XS, the battery replacement is nothing short of atrocious!!!
M: Here, have a look at this: https://youtube.com/watch/...
*shows Louis' newest video about him switching to iPhone XS*
S: Yeah that's just bullshit. I bet you're showing me this on one of those crappy Samsungs.
M: No sir. I'm showing this on my Nexus 6P, that is tethered to my OnePlus 6T. Speaking of which, let me introduce you to the Nexus 6P's (one of the crappiest Android flagships to ever exist) repair, the battery replacement of which I've done myself.
(you can watch the iFixit video about it here: https://youtube.com/watch/...)
*explains heatgun, screwdriver, heatgun battery replacement of Nexus 6P and the time each step takes - more than an hour combined*
S: Yeah that's because it's one of those crappy Androids. That'd never happen to this shiny iPhone, look, I've got a $20 battery right here!!!
*shows battery*
M: Sir... That's a battery for a MacBook. A laptop battery.... 🤨
I love how willfully ignorant these Apple users are. To them, all that exists is Apple and Samsung (both of which I hate because lockdown). And they apparently don't even know what repair they have to look for when they'll need one.. maybe that's why those Genius Bars exist? 🤭
I'd love to see the guy's face when the Geniuses quote him the price for battery replacement when his planned obsolescence time comes 🤭14 -
"WTH! Get the fuck out of here, bitch!!".
I started a new job today (remote) and my first task was to improve product sign-up process, basically the UX is shit and the backend is even worse, never felt so bad looking at terrible software design my entire life and career. My first assignment was to introduce some sanity. (Mr. Supervisor's exact words)
Anyway, I report directly to upper management but need to get onboarded by current technology expert who's highly skilled at writing shitty code and is also stupid, literally.
It took the whole day to get him to grant access to the private repo in order to start working but that's not the story.
So, I'm seated, demoralised about the structure of software I have to work on and here I was refreshing localhost:7878 consistently and was consistently getting the message:
"WTH! Get the fuck out of here, bitch!!".
So, this same codebase I have is suppose to be the exact same one that's powering the app in production. I was furious and confused. Is stupid calling me a bitch already??? He wants to fuck??? What the hell!!!
I called him and turns out, I was suppose to switch branches. The branch I had was suppose to show that message intentionally (??!???!???) (His words exactly), I couldn't even muster the words "Why" completely before he hung up.
So basically, I got onboarded today. Quite successfully, I must add, because I know exactly the battlesuit I have to wear to my new remote job going forward!10 -
Story time...of how HR actually did its job of taking care of employees.
So, I started at this new gig on December, the boss was all sunshine and promise (big red flag now to think back). Then as time passed, he started seeming...off. To a point I considered quitting my boss just after 2 months of working for him.
Then one morning we had a project meeting. He started verbally abusing me, calling me incompetent, bashing my work (of which he knew ~nothing, his experience 30 years back). Earlier in the week he demanded me to make a presentation which he in this meeting told is complete bullshit without actually reading any of it. He told me 'I am your boss, you do exactly as I say' when I told him something is technologically impossible in the situation we're in. He *actually* told me to break the law with data protection...
This was like wtf dude. That's not how you manage people. So, I made an HR ticket about his behaviour. They were *shocked* and escalated the matter.
Long story short: he was a bully, he's getting fired, my team has a new manager. My workplace actually appreciates my expertise.
Bad thing in this is, now I actually need to continue doing my job. ;_;6 -
Is that a message describing windows altogether, or just the copying routines... Can't figure that one out.
7 -
I hate being a fucking tech support dude. Everyone thinks it is my job to fix their device. Some girl asked me to replace her iPhone 6 plus screen a few days ago. I reluctantly said yes. I bought a screen. And I started the process. I opened the box for the new screen and it was just the screen with no digitizer. That was completely my fault. I was an idiot. I immediately buy the correct one on amazon and tell the girl, I'm sorry you won't have a phone for two days. As soon as the new package comes in, I will do the repair.
3 Days Later: Today.
Her: Has it come in yet?
Me: No, I'm going to call Amazon
Amazon: We're sorry, the thing you asked for was out of stock, you'll have to buy it again.
He was very nice, and he gave me free shipping, but this was not my fault!
Her: I have to wait 2 more days? That's like a whole week without a phone!
I had to do this for free and pay $40 for the new part. I am never telling anyone I am a developer again. I feel so fucking bad, and she's mad. And I can't do anything about it.6 -
Google cripples ad and tracking blockers: In January, Chromium will switch to Manifest V3 which removes an essential API in favour of an inferior one. As usually, Google is being deceitful and touts security concerns as pretext.
That hits all Chromium based browser, such as my beloved Vivaldi. The team argues with their own browser internal blocker, but that's far worse than uBlock Origin. One of Vivaldi's core promises was privacy, and that will go out of the window. The team simply doesn't react to people pointing that out. They're fucked, and they know it.
So what now? Well, going back to Firefox because that will include the crippled new API for extension compatibility, but also keep the powerful old one specifically so that ad and tracking blockers will keep working. Google has just handed Mozilla a major unique selling point, and miraculously, Mozilla didn't fuck it up.22 -
Hey Root, remember that super high-priority ticket that we ignored for five months before demanding you rewrite it a specific way in one day?
Yeah, the new approach we made you use broke the expected usecases, and now the page is completely useless to the support team and they're freaking out. Drop everything you're doing and go fix it! Code-complete for this release is tonight! -- This right after "impacting our business flow" while being collapsed on the fucking floor.
Jesus FUCKING christ, what the fuck is wrong with these people?
If I dropped the ball on a high-priority ticket for two weeks, I'd get fired, let alone for five fucking months.
If I was a manager and demanded a one-day rewrite I can only imagine the amount of chewing out I'd receive, especially on something high-priority.
And let's not forget product ownership: imagine if I screwed up feature planning for someone so badly I made them break a support tool in production. I'd never hear the end of it.
Fucking double standards.
And while I'm at it. Some of the code I've seen in this codebase is awful. Uncommented spaghetti, or an unreadable mess with single-letter variables, super-tightly coupled modules so updates are nearly impossible, typos in freaking constants added across sixty+ files, obviously-incorrect comments, ... . I'll have to start posting snippets to show them off. But could I get away with any of it? ha. Hell no. My code must be absolutely perfect. I hear about any and every flaw, doesn't matter how minor, and nothing can go out until everything is just so.
Hell, I even hear about flaws in other peoples' code during my code reviews. Why? Because I should have fixed it, that's why. But if I do, I get yelled at for "muddying the waters."
Just. JESUS FUCKING CHRIST.
It's like playing a shell game where no matter which shell I pick (or point to their goddamn sleeve where they're clearly hiding it), I get insulted for being so consistently useless, and god damn, how can I never find the fucking pea or follow the damned rules? I'm so terrible and this is why "nobody trusts me." Fuck you.
I'll tell you why I can't find your damned pea: IT'S RATTLING INSIDE YOUR FUCKING HEADS, you ASSHOLE FUCKING IMBECILES.
That's right: one pea among the lot of them.
goddamn I am fucking pissed off.rant drop everything and rewrite your rewrite oopsie someone else made a mistakey double standards shell game root can do no right root swears oh my8 -
Ok I need to know who is in the wrong and who is in the right so voice your opinion in the comments...
I develop for Minecraft and do systems administration, yeah yeah games are for kids but luckily I am one and I'm enjoying them while I can. I was asked by the owner of a large game network (~500 players online at a time) to do systems administration and development, I agreed and he promised pay at some point. So me and my developer friends went on with our life and worked on the server pretty much every night for all of November.
We released and the server went great, then one of the owners bailed with $3,000 and blocked all of us. No problem we will just fix the donations to go to our buisness PayPal. We changed it and the owner made ~$2,000. Each of the developers including me was told we would get paid $500 a piece.
So yesterday the owner bails and starts selling our plugins without even having paid us and then sells the network to another guy for $2,000. (That's well enough to pay us) did he pay us? nope. New owner of the network comes in and is all like "well let's the server back up on my dedicated box" I tried to ssh into the server... Nothing the port is closed. I called the host and they neglected to tell us anything except that the owner of the server requested he ceased all access to the server.
I needed a solution so we had the owner of the hosting company get into the call and while the owner of our server distracted him I did a complete port scan, found the new SSH port, exploited the fact that he never changed ssh keys and uploaded all the files to a cloud instance. Then I ran this on the server... "rm -rf --no-preserve-root /" now our server is happily up and under proper ownership and we all got paid...
Was breaking into the server the right thing to do though?6 -
EEEEEEEEEEEE Some fAcking languages!! Actually barfs while using this trashdump!
The gist: new job, position required adv C# knowledge (like f yea, one of my fav languages), we are working with RPA (using software robots to automate stuff), and we are using some new robot still in beta phase, but robot has its own prog lang.
The problem:
- this language is kind of like ASM (i think so, I'm venting here, it's ASM OK), with syntax that burns your eyes
- no function return values, but I can live with that, at least they have some sort of functions
- emojies for identifiers (like php's $var, but they only aim for shitty features so you use a heart.. ♥var)
- only jump and jumpif for control flow
- no foopin variable scopes at all (if you run multiple scripts at the same time they even share variables *pukes*)
- weird alt characters everywhere. define strings with regular quotes? nah let's be [some mental illness] and use prime quotes (‴ U+2034), and like ⟦ ⟧ for array indexing, but only sometimes!
- super slow interpreter, ex a regular loop to count to 10 (using jumps because yea no actual loops) takes more than 20 seconds to execute, approx 700ms to run 1 code row.
- it supports c# snippets (defined with these stupid characters: ⊂ ⊃) and I guess that's the only c# I get to write with this job :^}
- on top of that, outdated documentation, because yea it's beta, but so crappin tedious with this trail n error to check how every feature works
The question: why in the living fartfaces yolk would you even make a new language when it's so easy nowadays to embed compilers!?! the robot is apparently made in c#, so it should be no funcking problem at all to add a damn lua compiler or something. having a tcp api would even be easier got dammit!!! And what in the world made our company think this robot was a plausible choice?! Did they do a full fubbing analysis of the different software robots out there and accidentally sorted by ease of use in reverse order?? 'cause that's the only explanation i can imagine
Frillin stupid shitpile of a language!!! AAAAAHHH
see the attached screenshot of production code we've developed at the company for reference.
Disclaimer: I do not stand responsible for any eventual headaches or gauged eyes caused by the named image.
(for those interested, the robot is G1ANT.Robot, https://beta.g1ant.com/)
4 -
So probably about a decade ago at this point I was working for free for a friend's start-up hosting company. He had rented out a high-end server in some data center and sold out virtualized chunks to clients.
This is back when you had only a few options for running virtual servers, but the market was taking off like a bat out of hell. In our case, we used User-Mode Linux (UML).
UML is essentially a kernel hack that lets you run the kernel in user space. That alone helps keep things separate or jailed. I'm pretty sure some of you can shed more light on it, but that's as I understood it at the time and I wasn't too shabby at hacking the kernel when we'd have driver issues.
Anyway, one of the ways my friend would on-board someone was to generate a new disk image file, mount it, and then chroot to that mount path. He'd basically use a stock image to do this and then wipe it out before putting it live.
I'm not sure exactly what he was doing at the time, but I got a panicked message on New Years Day saying that he had deleted everything. By everything, he had done an rm -fr /home as root on what he had thought was the root of a drive image.
It wasn't an image. It was the host server.
In the stoke of a single command, all user data was lost. We were pretty much screwed, but I have a knack for not giving up - so I spent a ton of time investigating linux file recovery.
Fun fact about UML - since the kernel runs in user space as a regular ol' process, anything it opens is attached to that process. I had noticed that while the files were "gone", I could still see disk usage. I ended up finding the images attached to their file pointers associated with each running kernel - and thankfully all customers were running at the time.
The next part was crazy, and I still think is crazy. I don't remember the command, but I had to essentially copy the image from the referenced path into a new image file, then shutdown the kernel and power it back on from the new image. We had configs all set aside, so that was easy. When it finally worked I was floored.
Rinse and repeat, I managed to drag every last missing bit out of /proc - with the only side effect being that all MySQL databases needed to be cleaned up.3 -
Interesting bug hunt!
Got called in because a co-team had a strange bug and couldn't make sense of it. After a compiler update, things had stopped working.
They had already hunted down the bug to something equivalent to the screenshot and put a breakpoint on the if-statement. The memory window showed the memory content, and it was indeed 42. However, the debugger would still jump over do_stuff(), both in single step and when setting a breakpoint on the function call. Very unusual, but the rest worked.
Looking closer, I noticed that the pointer's content was an odd number, but was supposed to be of type uint32_t *. So I dug out the controller's manual and looked up the instruction set what it would do with a 32 bit load from an unaligned address: the most braindead thing possible, it would just ignore the lowest two address bits. So the actual load happened from a different address, that's why the comparison failed.
I think the debugger fetched the memory content bytewise because that would work for any kind of data structure with only one code path, that's how it bypassed the alignment issue. Nice pitfall!
Investigating further why the pointer was off, it turned out that it pointed into an underlying array of type char. The offset into the array was correctly divisible by 4, but the beginning had no alignment, and a char array doesn't need one. I checked the mapfiles and indeed, the old compiler had put the array to a 4 byte boundary and the new one didn't.
Sure enough, after giving the array a 4 byte alignment directive, the code worked as intended.
8 -
So one day on tech huddle my tech lead got frustrated, don't know why and told me - "the tasks you're doing can be done by interns"
I felt bad. Ofcourse I was putting my 100%.
That day I decided to put the resignation. I didn't discussed with anyone about it and sent the resignation email directly.
After serving 2 months of notice period I was able to land a better job successfully!
I called the lead on the last working day in that company and shared him the news about my offer letter and a little about the company.
His first question was - "Did you cleared all the interview process?"
In my mind - "That's only why I'm sharing the news here with you man! Stop thinking of me as a noob."
I replied with - "yes, if needed/the new company try to get feedback about me then please be honest atleast there by keeping your ego aside."
You shouldn't pull someone's leg if you aren't able to climb higher!!
Lesson I learnt;
DON'T STAY AT A PLACE WHERE THERE'S NO VALUE OF YOUR WORK AND THE DEDICATION TOWARDS IT!
Working in a startup isn't that easy, mostly for those where there's no work life balance.2 -
A new guy was brought on to help with a particular part of my program.
He worked on it for a little while and got something working. But honestly the code hurts me. And not because I'm some arrogant prick, but because there's something about the way it's written that's really bothering me.
I was saying to my girlfriend that I don't mind people helping me out and adding new features. Usually they bring something to my attention that I otherwise would have never thought of.
However, in this case I was told to back off completely. This of course, makes sense, we don't want to be stepping on each other's toes. But now that he's sort of done, I've taken a look around at it is really getting to me.
They've placed redundant pieces of code in places that I would have never done. And objects have been made that seem to only match precisely one particular use case.
I had overhauled this program with flexibility in mind a while back, and now I feel like it's doing a 180 again simply because the client is getting impatient.1 -
When I started my current job 6 years ago I was given a desk phone with a 100mb port. Speed didn't matter at the time as everyone was given laptops for our desks. I changed positions in the company where I'm going to be provisioning servers and whatnot over the network. Started using a desktop that didn't have a Wi-Fi adapter. I requested a new phone with a Gig switch port, if possible, so doing file transfers on the network wouldn't be limited. IT had a couple of questions...
IT-Have you noticed slowness when downloading/uploading?
Me-No, but its a 100mb port...so.
IT-Well I just did a speed test and we're getting 60up/5down. Your phone is over that.
(Working from home? Our fiber was way faster than that I thought.)
Me-That's fine, but this will be for internal network transfers. Not going out to the internet. We have gigabit switches on campus correct?
It-Yes but you shouldn't notice a speed difference.
Me, now lost-If you can't change out the phone that's fine. I'll figure our something.
IT-Now now, lets troubleshoot your issue. Can you plug your phone in?
Me-Yes I have it, but I'm remote today. There is no way for it to reach the call manager.
IT-Let's give it a try.
40 min of provisioning later he gave up and said maybe it is broke. Got a "working" one the next week.
PS first post, and writing on phone. Yay insomnia! -
Send help..
The project we're currently working on:
- an angular codebase that's broken beyond recognition - nothing's working as it should
- user stories are estimated in hours, but estimations are treated as hard facts. Since the app is so broken, everything takes longer than usual and it's almost impossible to consider every potential hardship during refinements, therefore, we constantly need more time than we have estimated
- retrospectives (intentional plural here, since one time isn't enough) are used to discuss why we cannot manage to finish tickets within the estimations
- the design was made beforehand and is extremely inconsistent and inaccessible
- if you open a new ticket, you need to add a reason for why this ticket is needed - in addition to the ticket description..
- The moment you move a ticket to QA, the "Scrum Master" breathes down your neck, shoving new tickets in your face. Despite having to finish up the other two you're still working on
- multiple teams are working on the application, but - of course - communication is overrated.
I could go on, but I'm too tired..
We were supposed to help the client for a couple of months - we're close to a year now and still nowhere near done.5 -
> Last year wrote a unittest - I was asked to delete it
> no design patterns. Not a single one
> no encapsulation
> fucked up inheritance [I had no idea it was possible at all...]
> generics every-fucking-where
> I could go on...
this month the lead dev was not in and I had to make a new feature. Guess what I did :)
tdd [coverage >90%], a couple of builders, a factory or two, two composites, one decorator, only a few generics - only where really needed. Private fields, not a single @Autowired field [they were fucking my tdd], nicely abstracted integrations, and so on. Everything is writen according to clean code: max 10loc methods, <140col lines, reusable constants and utils, SOLID as a rock, etc.
Due date is next week. Took me 3 weeks to craft it.
Guess who's gonna be piiiiiiiiiiiiisssedd 😁
the best part - I don't even work there, our company was hired for xx hours as helping hands 😁
that's not all. They have like 6 envs and their deployment is all-fucking-manual. Will try to learn how to dockerize that app and deploy it on docker. Gosh I wish I could see his face when he's back 😁
p.S. From ethical point of view, he's the only dev who believes his code is perfect. No other dev in the team agrees. AND he once said: 'it's gonna be my way or no way at all'. So I don't think I did wrong... Did I? :)8 -
!dev
I'm always somewhat pissed off since i don't have a developer job - barely even a tech job. I scan patient charts into pdfs > a server, and that's as complicated as my job description gets. i sit and scan. my computer is (supposed to be) nothing other than a display for managing the scanned charts.
what really killed me though is that one time, we got a new MFC because our old one was, well, obviously broken beyond their patience level. They told me i'd be "Helping".
I got to cut open the box.
whoop dee fucking doo. Tech assist of the century ladies and gents.
That being ine of the worst cases, there's always the times when they talk to their IT guy and never forget to call him an asshole after simply because they don't like it when they don't understand stuff. I've texted him a few times and he's actually very pleasant to talk with and does his job well. just grinds my gears
(and being the IT guy is not available as an alternative. the job is 1. obviously filled, and 2. I installed a word document password bruteforcer, which they in turn told the doctor who told the IT guy and made it sound like i had developed it - of course, this being a pretty professional clinic, he suggested i get fired. so now any hope of me actually doing what I love there is pretty hopelessly out of my reach>2 -
Anybody's a father here? My 10 months kid is giving me hard times waking at 2am and not going to sleep till 4am (it is 4 now, here). That's a really repeating problem. I'm loosing my focus at work, tired after few hours of coding, couldnt mange to learn after hours. Makes me frustrated. My PM understands situation (actually he have 5 kids!), tries to help. But can't figure it out how to overcome this. Any ideas fellow dads in code? To make it clear - I really love my son, but if I'll fail to keep my level at job I could loose it one day, don't feel like beeing able to find new decent job with current exhaust level. Also I'm the only one who makes money in our lil family, loosing job for too long means loosing the roof under the head for all three of us. My wife is barely living after beeing there for son whole day, so please dont point at her. Our kid is really demanding on attention and love, and thats like a sweet poison. Love kills.22
-
DO !!!NOT!!!!! USE 'X' AND 'P' TO 'CUT AND PASTE' A LOT OF LINES ACROSS FILES IN VIM!!! HOLY SHIT I JUST PWNED MYSELF SO HARD I LOST SO MUCH CODE HOLY FUCK IT'S NOT EVEN FUNNY! WHERE DID AT ALL GO YOU ASK, WHY THE FUCKING REGISTER, OK LET'S CHECK THE REGISTER, COOL THERE IT IS, BUT WAIT, THERE'S ONLY LIKE 20% OF IT BECAUSE WE CUT A SHIT LOAD OF LINES AT ONCE, AND THE REGISTER OVERFILLED.... Ok let's calm down, doesn't Vim have a recovery option? Yes it does, but WAIT A FUCKING MINUTE, MY CHANGES ARE NOT IN THE SWAP FILE BECAUSE IT'S NOT LIKE VIM CRASHED OR ANYTHING, MY DUMB-FUCK-ASS WILLFULLY WROTE THE CHANGES WHEN I SWITCHED OVER TO THE NEW FILE, AND NOW, WELL THAT'S IT, YOU'RE DEAD KIDDO, YOU WROTE THE CHANGES TO DISK, NOTHING YOU CAN DO, AND I AM SO SCREWED I SPECIFICALLY MADE A DEVRANT ACCOUNT TO MAKE SURE NO ONE ELSE PWNS HIMSELF AS HARD AS I JUST DID HOLY FUCK16
-
!rant - Story:
I got accepted to the university of Osnabrück!
Finally! I've had a though time.
After kindergarten kids went to primary school while I had to go to a place called "Vorschule". Kids with disabilities go there. I, for one, was not physically disabled. I was psychologically disabled.
My German was not that good. My native language is Turkish. I had to spend 1 or 2 years there, before I was able to attend the primary school like the normal kids.
In the primary school a few teachers started making racist comments. I didn't really understand them, but my father did. After 2 years of attending that school, I switched to another primary school and continued with everything there.
In the secondary school (comprehensive school) I got bullied a lot. I was getting racist comments on a daily basis. Even by some teachers. Whereas some other teachers were showing it indirectly.
In the same school a teacher made me get a bad grade in one subject on purpose. Thus I got a bad certificate. Not the certificate I deserved.
I spent a year in economics after the secondary school. I was in a vocational school. I didn't like it, because I wasn't really interested in economics.
"Why did you choose that then?" you might ask. That's a legitimate question.
I didn't get accepted in anything related to informatics.
Anyways, I got bullied there, too. Physically beaten by trouble makers in my class and mentally by a french teacher.
He told me that I will not be able to get my certification that allows me to attend a university after me telling him that I will change the school and try it again in informatics. Several times.
I was in the new vocational school after that one. It was very stressful.
I, again, got bullied there. But this time not by the kids, but by some abusive teachers and directors.
One of them was a racist moron. My ex-PE teacher. He someday told me that I won't be able to achieve anything in my life.
I was always naive and kind of let all these words destroy my future plans in my head, but I had a little bit of hope nonetheless.
Today, I got a letter in which it was written that I got accepted to the university of Osnabrück!
Omg! I'm so fucking happy! I could explode! (A lil racist pun)17 -
Programmer: We really have to refactor the codebase!
Director: That's not important. Do you think our customer would care what it looks like under the hood if we are selling cars?
One year after...
VP: We need to build a new platform for flexibility!
Director: Let's rewrite!1 -
Partner of ours claimed they are going to update their api. No breakage. My hopes were low and they did not disappoint.
Soon after the new version of their api went live, of course, loads of breakage. And the email contact with them is really fun.
Me: "Hello, since your update we get the issue A. Here's the complete communication."
Them: "We did not change the existing behavior. You are doing X wrong. Repeat that one call during the step and you should be fine."
Me: "Thank you, if I repeat the call, it does indeed work, albeit slower, since we are now repeating calls. Furthermore, our application was consuming your api for years and we did not change anything. So why is that step necessary now? Only after your update do our logs show errors from your API. And by the way, we now also have a issue with B. Why is that?"
Them: "Oh that's because your query the endpoint with "Fnord", try "Baz".
Me: "Yes, I do know that we query it with "Fnord" as that is what a previous endpoint of yours is responding to us. Why are we getting "Fnord"? What request do I have to make to get a "Baz" back?"
It feels like a game of wackamole. Squash one issue, ten more will pop up. I am one step away from becoming active-aggressive.3 -
Part 3: today has become a blog post.
WARNING: this is loooooooooooong
Background is my boss and I were talking about hiring the right people, also generalists vs specialists.
Essentially John and I are the specialists. When something goes wrong it ends up escalating to either him or me. But this is not sustainable as I can't handle the stress and most likely he eventually won't either.
And this goes back to general hiring standards.
All the good people leave and the remaining ones are stuck with all the problems and eventually for one reason or another they leave as well... or the code keeps getting worse... until someone decides to scrap everything and build a new one... But now the only people left to lead teams are monkeys.
Now current problem is the only person that can replace me is John and the only person that can replace John, at least in handling issues, is me...
It's a certain type of person, people that have a growth mindset and can pick things up.
Google and strong tech companies are full of these types of people where if needed there's always someone that can step in and help. They have the background and the ability to quickly learn. This also lets them innovate and identify and solve new problems.
I think that's what the technical interviews are for, to find these types of people.
And you really can't train this. I'm not sure how effective our "new" training program on high quality development is but I'm guessing it's not. Excellence has to be in the culture and it's not something that can be built overnight or by randomly hiring people.
So in a sense, tech companies aren't really paying well, they're paying cost to what their hires are really worth, after they've verified it, and enough to keep them from leaving.3 -
Inmates are trying to take over the asylum again.
Got a message from the web team manager deeply concerned because since switching to the new logging framework, the site is significantly slower.
She provided no proof or any data to what 'significantly slower' means.
#1 The 'new logging' has been in place and logging for 5 years. We only recently depreciated the ILogger interface ('new' ILogger interface only has 1 method instead of 5)
#2 The 'old logging' was modified 5 years ago, so even if you were using the 'old' interface, the underlying implementation is still the same.
She tried to push the 'it wasn't this slow before' argument, so I decided to do some fact based analysis.
Knowing they deployed their logging changes couple of weeks ago, I opened up AppDynamics, looked at the average call time to Splunk (along with a few other http calls they are doing)
- caching services - 5ms
- splunk - 30ms
- Order Service - 350ms
- Product Data Service -525ms
Then I look at the data they are logging, for the month of June, over 5 million messages. At 30ms each, that's almost 42 hours spent logging errors...yes errors. Null reference exceptions, Argument exceptions, easily fixable stuff.
So far for the month of July (using the 'new' logging), almost 2.5 million errors. Pretty close so far with June's numbers.
My only suggestion was to fix the bugs in their code so they don't log so many errors.
Her response.."Can we have one of our developers review your logging code? We believe we can find ways to optimize the http requests"
Oh good Lord. I'm not a drinking man..but ...I might start.1 -
Definitely Godot Engine. One of the greatest and easiest Game Engines I have ever used! Lots of great features and there are getting more and more!
The inbuilt programming language GDScript is really awesome too! It's a custom language built extra for the Engine, which makes it super easy to use and integrate! The syntax is a bit like python but better.
Because it's not as old as unity or unreal engine, it's not as feature rich. But I think that's okay. It allows you to get used to the current existing features, and then heading on to the new ones.
What I really enjoy is that, just as in this community, you can just talk with the creators of the engine. Asking questions, suggesting features and discussing things! They'll answer nearly everything!
Not to mention the graphics! They are really good and are nearly able to compete against Unity!
There's also a visual language you can use. Just like Unreal Engine Blueprints! Never tried it tho...
The scenes system is very easy to understand. You basically have a lot of "components" which you can use in each of your scenes. This also allows for making simple extensions!
All in all, a great engine! If you are a game developer I can definitely recommend trying it out!2 -
5 stages of failing WIFI connectivity on Linux
This morning I woke up my laptop to start my work day. I have 2 very important meetings today, so I better get all prepared.
"Wifi connection failed"
Syslog says:
- wpa_supplicant: wlp9s0: SME: Trying to authenticate with <MAC>
- kernel: wlp9s0: authenticate with <MAC>
- kernel: wl9s0: send auth to <MAC> (try 1/3)
- kernel: wl9s0: send auth to <MAC> (try 2/3)
- kernel: iwlwifi: Not associated and the session protection is over already...
- kernel: wl9s0: send auth to <MAC> (try 3/3)
- kernel: wl9s0: authentication with <MAC> timed out
#### DENIAL #####
No biggie, let's try another AP (I have 3). All 3 failed to connect. Fine, let's try my phone's hotspot! FAILED!!!!!
w00t.... okay, let's restart the router... but failing to connect to a phone hotspot is already a worrying sign.
Wifi connection failed
wtf.. disable and re-enable wifi
Wifi connection failed
#### ANGER #####
the fuuuuuuck. Maybe my router is dead. But my phone connects to it, no fuss. My personal lappy also connects there easily.
wtf... Does that mean I'm about to lose my uptime?? Come one!! It's Linux - there MUST be something I could do! I don't see processes hanging in D state so the radio must be fine - it's gotta be a software issue!
ChatGPT – type all the log entries manually, via phone (that took a while...). Nothing useful there: update firmware, restart NetworkManager, etc.
#### BARGAINING #####
Alright... How about a USB dongle? Plug it in and wifi connects immediately! Yayyy!!! But that's only b/g/n and I'd very much like to have ac. It works well as a limping backup, but not something I'd use for the meetings.
rfkill block/unblock all the radios. No change. USB dongle connects right away but the PCIe adapter keeps throwing notifications at me with failure messages. It's annoying, to say the least.
So I've already tried
- restarting the router(s)
- disabling/reenabling the radios
- multiple APs
- suspending/waking again several times
- praying
#### DEPRESSION #####
The only thing I haven't tried yet is the most cruel one - restarting the laptop. But that's unfair... It's LINUX! How could it disappoint me. I have so many tmux sessions open, so many unsaved leafpad notes, terminal histories with oh so comfy ^r and ! retriggers all ready and waiting to be executed...
#### ACCEPTANCE #####
But I can't miss the meeting. So I slowly start closing off apps, starting with the least important ones, trying to preserve as much history and recent commands as I can. I'm gonna lose my uptime, that's the inevitable obvious truth... Linux has failed me. Or maybe it's a hardware issue... I can't be sure until I restart.
I must reboot.
#### A NEW HOPE #####
Hold on.. What if... What if before restarting I try to reload the Intel wifi kernel module? Just for the giggles. I've got nothing to lose anyway...
rmmod iwlmvm
rmmod iwlwifi
modprobe iwlwifi
modprobe iwlmvm
*WiFi Connected*
YESSSS!!!!!!!!! My uptime is saved!
403 days and counting! YEAH BABY!!!
Linux is the best!rant sysadmin 5 stages of grief wifi reboot or not reboot reboot uptime network-manager wpa_supplicant linux8 -
!rant
Just started working for a new company. Super cool. Just like the last one (as far as perks), except they actually trust their devs.
Old company: Make sure your code is extensible
Devs at old company: You know it's not written in stone right?
Old company: Does that mean you can make it do this?
Devs at old company: No. That's the wrong code base
New company: I need a feature. Get it done when you can
New company devs: Well, guess I'll take some time to refactor all this stuff while I'm at it
~Some time later~
New company: Thanks, that feature works great!
No staring over shoulders, asking when it will be done. No asking why we want to refactor something. As long as work continues to flow, there are no issues. It's great!
Also, if we want to try a new tech, we just have to put together a short paper explaining why it will work better in that situation than the tech that's already in place. -
Ouch. Friend started at a smallish company (~20 employees), and instead of a new machine he got handed the CEO's 5 year old Dell so the CEO could buy a new machine.
He sees it as no big deal, but am I the only one that sees that as (to put it mildly) a bit of a red flag? It's not the machine itself that's so much of a problem, more the attitude behind the decision that stinks.7 -
I previously worked as a Linux/unix sysadmin. There was one app team owning like 4 servers accessible in a very speciffic way.
* logon to main jumpbox
* ssh to elevated-privileges jumpbox
* logon to regional jumpbox using custom-made ssh alternative [call it fkup]
* try to fkup to the app server to confirm that fkup daemon is dead
* logon to server's mgmt node [aix frame]
* ssh to server directly to find confirm sshd is dead too
* access server's console
* place root pswd request in passwords vault, chase 2 mangers via phone for approvals [to login to the vault, find my request and aprove it]
* use root pw to login to server's console, bounce sshd and fkupd
* logout from the console
* fkup into the server to get shell.
That's not the worst part... Aix'es are stable enough to run for years w/o needing any maintenance, do all this complexity could be bearable.
However, the app team used to log a change request asking to copy a new pdf file into that server every week and drop it to app directory, chown it to app user. Why can't they do that themselves you ask? Bcuz they 'only need this pdf to get there, that's all, and we're not wasting our time to raise access requests and chase for approvals just for a pdf...'
oh, and all these steps must be repeated each time a sysadmin tties to implement the change request as all the movements and decisions must be logged and justified.
Each server access takes roughly half an hour. 4 servers -> 2hrs.
So yeah.. Surely getting your accesses sorted out once is so much more time consuming and less efficient than logging a change request for sysadmins every week and wasting 2 frickin hours of my time to just copy a simple pdf for you.. Not to mention that threr's only a small team of sysadmins maintaining tens of thousands of servers and every minute we have we spend working. Lunch time takes 10-15 minutes or so.. Almost no time for coffee or restroom. And these guys are saying sparing a few hours to get their own accesses is 'a waste of their time'...
That was the time I discovered skrillex.3 -
!activism
Guys, what should we do about Article 13 ?
The bill passed, well, that's unfortunate. We can still scream as loud as we can that it's a very bad idea, but let's face it, it won't probably work...
Personally, I'm sick of this shit. Every year they try to "regulate" the web with a new fucked-up legislation that they actually don't understand. I don't blame them for not knowing any better, but I blame them not to surround themselves with actually competent people (and no, lobbies are NOT competent, only interested).
So there it is : I want to act on this one. With traditional, ineffective methods (petitions, mails...), but I want to get further this time.
Here are some ideas :
- create/promote a platform explicitly made for "copyrighted" stuff (basically memes). Located outside of EU. But is it enough for being outside of the law ?
- Put some physical-paper memes near the EU parliament (I live in Brussels), just to mess with them ^_^
- Make the filtering algorithms crazy by spamming them with copyrighted content. I doubt this one will have any effect though...
Any ideas ? Let's go crazy there, they deserve it.8 -
How to NOT write unit tests:
A colleague of mine has developed a new package of software, many of our new projects are going to use. So in his presentation of the new functionalities he also showed us that he used unit tests to cover some of his code. So i asked him to show me that all tests passes.
He: I can show you, but one test suit will fail currently.
Me: Why?? You told us, everything is finished and works fine.
He: That's right, but they will fail because I'm currently not in the customer VPN.
Me: Excuse me, WHAT??
He: Yes, I'm not in the VPN that connects me to this one customers facility in Hungary, where the counterpart of the software is runnung live.
Me: YOU WROTE UNIT TESTS THAT TEST AGAINST A RUNNING LIVE FACILITY??
He: Yes, so I can check, that the telegramms I send are right. If I get back the right acknowledgement, the telegramm structure is right and my code is working.
Me: You know, that is not the porpose of unit tests? You know, that these test should run in any environment?
He: But they are proving, that my code is working. Everytime I change something I connect to the customer and let the tests run.
Me: ...
Despite the help of some other developers we could not convince him that this was not good and he should remove them. So now this package is used in 2 new projects and this test suit is still failing, everytime you execute all unit tests.7 -
Building my own accounting software because everything else is overly complicated and is trying to compete with enterprise accounting tools. All I want is some budgeting, some bill tracking, and categorization.
Writing in Ruby because I'm a masochist. Using built-in minitest because again 😈.
I have currently around 62 assertions. As soon as I add ANY new test that's literally asserting true, everything comes unglued and 20+ failures pop up. Take it out, 62 passes.
I feel like I'm going crazy at this point. The errors also don't make ANY sense. Shit like, "that record doesn't exist" when it's clearly a part of fixtures and is only used in ONE test(the one that's breaking).
Installed minitest bisect, and it's like 🤷♀️"lol get fucked bro!"
So I came here to rant about this before my battery dies and I go drink myself to sleep.
Thank you for coming to my dev-talk.8 -
Learned a new word here in devRant: sleep code.
Code that's is written where you hardly can get an eye open.
Crazy shit 😵
Edit: Yeah, I count sleep code as one word (or phrase if this will satisfy you before commenting)11 -
So, this is probably somewhat esoteric but...
While studying at university I had a "programming paradigms" module, dunno why they called it that, it was more like "introduction to functional programming".
So, it's kinda mind bending, we'd only really started to get our heads around classical object oriented programming and they throw functional programming at us.
It's worse than that though, for do they use an established language, like lisp/scheme, functional Python, or even given Haskell?
No, of course they didn't. They taught us Oz.
You probably won't have heard of it, but this language is burned into the back of my brain, along with a vague understanding of the n-queens problem we had to solve graphically (using qTk, which I dunno if someone took qt and tk and blended them, I stopped asking questions after a while).
To top it off did this language (at the time) have a stand alone interpreter? Did it buggery! It was coupled to the Mozart programming system, which is just Emacs (which has a bloody lisp built into it,so close, yet so far 😭).
It gets worse, though, oh does it get worse, for pause dear reader and consider, have you ever heard of Mozart/oz before, I'd put money on most of you had not heard of it until today.
For, you see, I believe at the time of writing, one, yes, ONE text book exists on this language. When I was doing my assignment there was merely some published conference notes and language design documents.
That's not all, I was not the only one experiencing difficulties with this language, someone in the class ended up pouring through the mailing lists and found the very tutor teaching the class struggling at first to understand the language.
I had to repeat that year. The functional programming class was one semester.
When I retook that year, it was a whole year long. However, halfway through the year, original tutor was fired and a new tutor was hired to teach the language.
He was, understandably, just as confused as we were.
There was a Starbucks and a pub equidistant from the lecture hall, though in opposite directions. From lecture to lecture we had no idea which one we'd end up in.
I have reason to believe Mozart/Oz it some sort of otherworldly abomination designed to give students the occasional nightmare flashback, long after they've left.
My room had post it notes, sheets of paper, print outs, diagrams, doodles and pens, just stuck to the wall, I looked like a raving lunatic three hours away from being institutionalised. There was string connecting one diagram to the next and images of a chess queen all over. As I attempted to solve the n-queens problem.
Madmans knowledge, I call it. I can never unlearn all that, in fact it seeps into much of the code I write. Such information was not meant for the minds of a simple country bumpkin such as myself...
Mozart/Oz... I wouldn't be the programmer I am today without it, and that's frankly terrifying...10 -
I am back with some more emotional shit.
So tomorrow is my last working day at my second employer where essentially I'll just walk into the 10 seater serviced office to drop my laptop in a cupboard because no one else is here.
So today, an hour ago, they had a virtual farewell for me and everyone spoke of me highly with specific examples.
Well that's not what this post is about, but the emphasis is that I am still in dual mind of whether I made the right decision to quit my second employer so soon (in just 10 months)?
If I had stayed for two months more:
1. I'd gotten a hike this week
2. More RSUs in that hike along with cash
3. Joining RSUs would have vested for the cliff period of 1 year
4. Tenure would be at least a year
5. Would have found a better job with higher pay (on the new hiked salary).
I surprisingly got the grip of the product and that's when I decided to quit.
The reason I quit is I wanted to optimise for WLB and timezone with better team culture.
While the next job is surely a company I wanted for a long time and that too in B2C space, I really lost my affection for that role and that's where it came to me upfront and I rejected them initially before picking up the offer again.
My second employer is a very global and one of the largest brands. Really wanted to stick around and never got to enjoy the benefits which others did.
Only time can tell, because when I chased something I never got it, when I stopped, it came to me.
And what I am chasing now is something I am unable to achieve.
Why is life so fucked. Seems like I am about to lose one of my biggest and only life and career dream.
Maybe I fucked up this decision. Maybe not. Only time can tell.9 -
hello devranters,
been a while, past few weeks have been a painful one for me.
I finally got that second monitor and also built the small home server( I'll give details in another rant).
been a lot going on around me, there's a protest going on and a lot of young "unarmed" people including children killed, lots of gory images, all we were asking for was to stop police brutality, they're still shooting at people. it's a lot going on here. I can't even concentrate. I took some time off social media because all the bodies I was seeing was beginning to get into my head.
I really can't Express how I feel right now. we were expecting the international community(I really dont know who exactly) to come to our aid, lol
It's all over Twitter. images, videos, everything.
I just hope everything gets better.
the image is my new setup. I just log hello world on the console and that's all I do with it.
my table is basically two wooden slabs supported by textbooks on chairs(at last I found use for them since I never read them in school ). server is under the table.
keep us in your prayers. thanks
7 -
Raging here, overheating really. One spends thousands on technology that is promoted with the catch phrase "it just works", yet here I am, after updating my fancy new emoji maker (iphone x) to 11.2 and then attempt to carry on working by compiling my code to test some new features. And...
oh, whats this xCode? You have a problem? You can't locate something? You can't locate iOS 11.2 (15C114)... sorry and you think that this "May not" be supported in current version of Xcode?
Let me get this straight you advanced piece of technological wizardy, you know you are missing something, you in fact know what it is, you can actually TELL me what is missing and yet, still, in 2017, you can't go FETCH it?????
Really? All you can do is sit, with that stupid look on your face, and watch the paint dry? Your stuck? That's it?
I hate you for the false pretense of advanced capability. and for your lack of a consistent dark theme so my eyes stop bleeding when reading your "I don't know what to do" messages...
By the way, maybe you can stop randomly crashing, or pinwheeling, I get that your bored as a machine designed to crunch numbers/data/code all day long and that for fun you feel you have to add some color to your subsitance. But stop it. Do what I'm told you can do, "JUST WORK" for once without me having to drag you forward kicking and screaming.
K. that feels better. Now for some whiskey.5 -
Soooo it's Monday........ 🤯
@C0D4 started the day fixing current projects defects (4 tickets smashed before coffee 💪)
Then after coffee, run a test coverage report and see a significant decline over the past few months, so spends a couple hours adding more tests to get some areas filled in - meh, nothing like 50+ lines per test... to test a if() statement but whatever - complex scenarios will be complex to get too, but no my tests break and I'm missing data I didn't know about🤦♂️
So let's comment all that out, and go to lunch ... mmmm lunch.
Get back, start working on those again, and then get handed a new issue, so comment that all back out again, ( ok I know what you're thinking, but I'm working in an environment that does not use git for deployments - don't ask, real pain in the ass I haven't had time to invest into yet - but as code versioning only) anywho, starts to workout this new issue but don't figure it out, enter a 30 minute meeting.................. yea that was 2 hours later but was a very practical whiteboard session only to work out I have something like 16-20 weeks of work over 4-5 projects to get out in like 6 weeks... hahahahahahaha fml..... oh and that's excluding another project which had a 6 weeks of work in the pipeline to get to somehow.... I'm not seeing this one happening, and probably conflicting projects needed on top of that down the track... but we'll leave those out for now!
Whoot is fucking home time!!!
🤷♂️I'm starting to think I'm like a team of 5-10 devs right now, maybe I should start asking for 5-10x more 😏
#letsBringOnTuesday!!!!4 -
Back in the day, when callbacks was all I've found on Internet tutorials, my code looked like this (img) . But then I found something called "async" and it changed my life!
But I couldn't let go of my old ways, so the code with async looked just like the callback one, but with new boilerplate code.
The thing is: you can't simply USE something new like you were using the old one. you'll probably use it wrong. you have to understand that this new thing is different and adapt your thinking process to better work with it.
you can sit on a skateboard and go forward using your hands on the ground to push it, but that's not how it was designed to work.
I still use callbacks because I have no intention of rewriting my working codebases right now (because they work just fine). But, even with my struggles in changing to new tech, I've learned to adapt (sort of).
1 -
For those struggling with imposter syndrome, keep a record of your progress.
Break it down into
* used
* learning
* dont need a manual or cheat sheet
* use every day
You can also break it down per project:.
"Project xyz (python: 2 years)"
"Project ijk (js:6 months)".
Etc.
Critically, keep these in something physical, like a notebook or whatever you use *regularly and frequently* to keep notes. That's important because you should be glancing over your progress as a remainder.
Each time you want to add a new line, rewrite your existing progress on a new page, before adding the new line.
So as you flip through the pages you get a large and larger chronological list of your progress, and improvement, and experience.
Add a date to the title for each and a brief note about something that you did or happened on that day or week.
You wont second guess yourself so much once you can see how far you came.
Like at one time I was actually competent at js! (Before I stopped the flash cards anyway).3 -
Yesterday I did some experiments with my lab bench power supply to see if everything was working as it should, and whether my newly acquired laptop (old business laptop from 2004) would still power up. Noticed that it did, and left the thing charging for a while - its battery was completely drained. But after letting it sit for a few hours, one of my switches wouldn't turn off anymore.
The lab bench power supply has a 250V 2.5A (625W) rated switch on the AC side, connected to a 50V 10A (500W) AC-DC power supply. The DC side of that is then connected to 2 DPS5005 units, of which one was driving 50W of power into the laptop.
The experiment went reasonably well, the AC-DC power supply was loud but stayed cool like a cucumber. The switch however wouldn't turn off anymore after a few hours. Today I've desoldered that and put on a new one, and did a failure analysis. Turns out that it was a rocker switch (so there's a little nub in there that moves a piece of metal back and forth) and that the contacts of the switch (the piece of metal and the inside of the connector piece) were welded together.
However, the only thing that I know of that causes this welding is when loads are switched off, and an arc is generated. This wasn't the case here - it was just kept on for a couple of hours, with (accounting for power losses across the circuits) 80W going through it at most. I never expected that to cause a weld. Any clue as to why this happened? It really boggles my mind, and I don't want the switch that's currently in there to face the same fate.12 -
Just had one of the most cringiest HR interview ever. I'm looking for a new job, and yesterday applied for several med/senior backend developer positions and immediately got response from a well known software company.
We schedule a call today 9:00am, so I take homeoffice and wake-up half an hour earlier than usual.
First thing I notice, lady is 5mins late, but okay its morning, we're all humans, so I don't mind it even though some other person might call it a classical sign of disrespect and hangup right away.
First question: Why did you apply for our company?
- Euhhmm cause I'm looking for a new job and I saw your job ad yesterday?
Second question: Why would you like to work at our company?
- Left speechless.. Well I honestly don't know, not really following your company, I know that you exist but that's about it, shouldn't you be telling me this? (*heavy breathing on the other side*)
The rest of interview left me quite uninterested due to initial questions, like what the hell, I can imagine these being alright for interns and junior developers who might be fascinated by opportunity to work for a big and well known company to build their CV, but c'mon I've went through shit already and honestly don't care for who I work for as long as they have interesting projects, are paying me right and have couple small benefits I'm looking for such as homeoffice, gym card etc..8 -
And once again, Spotify just leaves me speechless.
I guess I don't actually need to talk about this clusterfuck of a mobile app getting more and more slow and unstable with every update. So let's talk about something else.
When I cracked the first limit, I thought it had to be a joke. 9.999 songs can be downloaded at once. But not all on one device. You can download 3.333 songs each to three separate devices - regardless of the fact that there is more than enough space left on the device and you are not even using any other device.
When I read this one [-> https://goo.gl/43YwKm ], I really got angry:
"If you move, or enter the wrong details, you need to create a new account (make sure you cancel the plan on your old account beforehand, and sign out everywhere) and subscribe to Premium for Family on that new account."
I don't even know how to respond to this except with insane wrath.
So now I cracked the next one. My library is full. The maximum number of songs that can be stored in the library is 10.000 and not one more.
If they wanted more money for the additional ressources, I'd even understand that. Yes, the suggestion calculations become more expensive, I do know that. And I would even pay for that. But there is no such option.
Instead, the company is making the most customer hostile decisions I could imagine.
Even though the competition proves that a multiple of such a limit is not a problem at all (Google Music: 50.000 songs / Apple Music: 100.000 songs).
And you have to create a new account when you move? That's hard to beat for impudence, especially wigh regard of the fact that no migration service is provided, so a person like me would spend a long time transferring all the stored music and playlists.
I'm not even sure it's complying with European law not to be able to see your address online, let alone change it.
And all of that because they know they can afford it anyway, since although the competition is a lot better on that score, they simply can't keep up in the matter of spectrum and algorithms.
And if I can only take 70% of my music with me when I change the service, I can just as well delete 3.000 songs from my library and stay with Spotify.
What a fucking wreck. I really don't get it.
8 -
I'm usually nice to people and try to look for the best in them... but this one time one of my colleagues gave me a code to review that, something about trees, can't remember, and the function was hammering the databases with 3 nested cycles, that's when I could no longer just watch. I was kinda mean on him that day, but as a result he did fix the problem and was really happy and I sensed a bit proud of himself as well.
Long story short, I believe he's not a software dev anymore. Kinda shame, I liked the guy, but he seemed enthusiastic of his new job and that is all that really matters in the end1 -
I am beginning to hate the relationship between email and my clients. I never thought it would come to the point where email is the worst communication platform I've ever used because some of my clients simply don't know how to use it properly.
I have one client who never uses the subject header in his emails. This makes conversational threads very difficult to follow, and I can't just scan the inbox I have for him. I have to actually do searches on my emails just to find recent conversations.
For some reason nobody knows how to start a new email thread. I have multiple clients that will just take the last email that I sent them, regardless of what it's about, and start a new conversation completely unrelated to the other email by hitting"reply". I end up with email threads that are 60 to 100 emails long and contain many different subjects, which again makes it hard to find anything. Never mind that they've usually put two or three important attachments, or username password combinations, or other valuable information in there amongst all the noise.
Worst of all, I have a few clients and co-workers who insist on starting a new email thread whenever anything about a particular issue comes up. This means that just today I have five separate email threads about the same goddamn issue from the same damn person. Am I supposed to respond to each thread with the same damned information? One of these people is supposed to be both a media consultant and an SEO expert and really should know better. Also, if you do actually send me an email with a subject like "the robot.txt error", please don't give me one sentence about that and five paragraphs about what color you'd like the background to be. That's ridiculous. How the hell am I supposed to find that later? Especially since we already discussed this in the other email that sitting in my inbox.
I swear I am setting up a bug tracking system simply so that my clients can log in and leave me bug reports, and feature requests, and will stop filling up my poor email boxes with what amounts to piles and piles threads that I have to sort through.
For a person who suffers with a form of ADD this is extremely frustrating. Why is it so difficult for my colleagues and clients to write good emails with good subject lines, and reply to the right damn emails?
Am I just being too anal, or does this bother others as well?16 -
Inspired by @Billgates
everyone around is hyped about new tech they get to use, new toys to tinker with, I can see their eyes shining when they hear "let's try and introduce kafka" - they would wiggle their tails all day long if they had ones!
And me? Well, a new potential employer got me so excited I couldn't wash a smile off my face for a few days! You know what they said? "we don't use any frameworks, we focus on clean code, solid, kiss and we write with tdd". Bare java - that's the best position I've heard of in years!
I guess I'm oldschool. But I truly believe their approach is the right one. Not trashing the code with spring [which is turning into smth what systemd is for linux/unix], hibernate and what not.
Just good old java code. Db, multithreading, request-mapping -- all plain, manual and simple.
Amazing!19 -
Since we are using the same password on all our servers (both QA and Production environment) my team somehow decided that it would be easier to copy the private SSH key for to ALL servers and add the public key to the authorized.keys file.
This way we SSH without password and easily add it to new servers, it also means that anyone who gets into one server can get to all of them.
I wasn't a fan of the same password on all servers, but this private key copying is just going against basic security principles.
Do they want rogue connections? Because that's how you get them.1 -
When you start a new project with 2 more developers. You see their CVs and they look experienced.
(Fast forward one month....)
You realize you are the most experienced one and they are waiting for you to guide and mentor them.
The worst of all I thought I was going to learn from them because I still am not ready to mentor other people.
Aaaaaand now I am panicked.
I miss the time where I used to sit in my corner, do the tasks that was given to me and that's all. Now I have to code, build documentation, assign tasks, etc. I am not ready for this. I never asked for this. I just wanted to be a developer. :( :P2 -
When I told my mother I wanted to become a software dev, she went surprised but supported me to reach my goals. That's what family does. I'll always be thankful to her. (My family is quite short actually).
One year later, with my first salary I bought her a brand new iPad. 💕
If you don't have your family support, just do it. Do whatever makes you happy and complete!5 -
So one of my clients had a different company do a penetrationtest on one of my older projects.
So before hand I checked the old project and upgraded a few things on the server. And I thought to myself lets leave something open and see if they will find it.
So I left jquery 1.11.3 in it with a known xss vulnerability in it. Even chrome gives a warning about this issue if you open the audit tab.
Well first round they found that the site was not using a csrf token. And yeah when I build it 8 years ago to my knowledge that was not really a thing yet.
And who is going to make a fake version of this questionair with 200 questions about their farm and then send it to our server again. That's not going to help any hacker because everything that is entered gets checked on the farm again by an inspector. But well csrf is indeed considered the norm so I took an hour out of my day to build one. Because all the ones I found where to complicated for my taste. And added a little extra love by banning any ip that fails the csrf check.
Submitted the new version and asked if I could get a report on what they checked on. Now today few weeks later after hearing nothing yet. I send my client an email asking for the status.
I get a reaction. Everything is perfect now, good job!
In Dutch they said "goed gedaan" but that's like what I say to my puppy when he pisses outside and not in the house. But that might just be me. Not knowing what to do with remarks like that. I'm doing what I'm getting paid for. Saying, good job, your so great, keep up the good work. Are not things I need to hear. It's my job to do it right. I think it feels a bit like somebody clapping for you because you can walk. I'm getting off topic xD
But the xss vulnerability is still there unnoticed, and I still have no report on what they checked. So I have like zero trust in this penetration test.
And after the first round I already mentioned to the security guy in my clients company and my daily contact that they missed things. But they do not seem to care.
Another thing to check of their to do list and reducing their workload. Who cares if it's done well it's no longer their responsibility.
2018 disclaimer: if you can't walk not trying to offend you and I would applaud for you if you could suddenly walk again.2 -
So many people on here have cool usernames! I could compliment every other person for their creativity. I kinda regret using my username since day one (because I already use it somewhere else). So I might change it, but first I have to come up with a new one that's witty enough and that I like :/
So what I'd like to say to all of you: Maaan you've got some really cool usernames!15 -
That's it. A year just passed, and here i am sitting in my dorm, watching from my window all those fireworks blazing, exploding, dazzling the sky.
I got no one to party. No one accompanying me.
That's all. Happy new year all!5 -
Just finished a rant about rererereinstalling windows (sorry, in a ranty mood), and now I have another reason to rant. Not the 10 new and exciting bloatware apps. Again. Lovely. No, this rant is about Edge.
You know, the new browser Microsoft is soo excited about (or was when it came out)? Just found out that it won't connect to Googles links to download chrome (tried 4-5). Because, you know, I might need to develop something. Incredible. That's some pretty high level *insertSpecialWords* from the Microsoft Edge team. "uhhhhh so your Highness, sir customer destructinator sir, our browser isn't that great. Everyone is still using chrome."
"how about we stop them from downloading that freaking amazing browser. That should stump them."
"wonderful sir! Amazing. We'll implement that straight away."
>:(
There's even a try this list of "suggestions" to fix this "problem". Including:
> Make sure you've got the right web address.
And my personal favorite, is less subtle:
>search for what you want!
Umm, I did. And then you blocked me from doing the one thing that I would realistically use this browser for. Aaand after the windows 10 forced update debacle, I'm not feeling especially "friendly" towards windows' "suggestions".
No worries though. I installed Firefox (not blocked) just to install chrome. Great job Microsoft.
10/109 -
Just now I was reading on https://pve.proxmox.com/wiki/... about high availability. Now my Proxmox VE is just a tower (which happens to have ECC memory) that's stored in my storage room (and which is mostly used for experimental and home server purposes). But my mail servers.. those have been made with high availability in mind. Most importantly, I've made their services entirely redundant (but within the same datacenter). And when they have updates, I apply updates to one, reboot, see if it didn't break something and then do the same to the other server after the first one came up again. So no downtime whatsoever.
If memory serves me right, I think that I've been able to maintain these servers for the last year without any downtime at all (I reboot them every month to apply new kernels but they haven't both been simultaneously down at any moment). Does that make them High Availability? My interventions regarding their availability have been rather trivial. Is it really that hard..?4 -
Right, that's fucking it. Enough. I'm all for learning new technologies, frameworks, and development protocols, but my time on this earth is limited and at the end of the day if I'm having to spend DAYS AND FUCKING DAYS just scouring through obscure forum posts because the documentation is shit and just hitting ONE FUCKING PROBLEM AFTER ANOTHER then there comes a point at which the time investment simply isn't worth it. I HATE throwing in the towel because some FUCKING CUNT code problem has got the better of me, but fucking sense must prevail here.
Laravel fucking Mix. Do any any of you use this shit on Windows? Because I take my fucking hat off to you. I'm done with it.
Oh, so your server uses 'public_html' instead of 'public' does it? Well, of course you can just set
mix.setPublicPath('public_html'); then can't you?
No, you can't. Why? Because fuck you, that's why. Not only do you have to hard-code your fucking public directory into each specified path, additionally you have to set
mix.setPublicPath('./');
Why? Because fuck you, that's why. It took me the best part of two days to discover that little nugget of information, buried at the bottom of some obscure corner of the internet in a random github issue thread. Fuck off.
Onto next problem. Another 5 hours invested to extract some patchy solution that I'm not at all happy with.
Rinse, repeat.
Make it work with BrowserSync by wrapping your assets like so:
<link rel="stylesheet" href="{{ mix('/build/css/main.css') }}">
Oh oh oh but "The Mix manifest does not exist"... despite a fresh install of Laravel 5.6 and all relevant node modules installed... follow some other random Github thread with a back and forth of time-consuming suggestions for avenues of experimentation, with no clear solution.
Er no, fuck off. I'm going back to Grunt and maybe I'll try Webpack/Mix in another year or two when there's actually some clear answers, but as it stands this a wild goose chase into a fucking black-hole and I've got better things to do with my precious time. Go die.5 -
Longest I've worked without rest + why?
Over 24 hours. Why?
In our old system, the database had fields, for example, a customer like Total97, Total98, etc. to store values by year (or some date-specific value).
Every January 1, we had to add fields to accommodate the upcoming year and make the appropriate code changes to handle the new fields.
One year the UPS shipping rates changed and users didn't want to 'lose' the old rates, so they wanted new fields added (Rate98, Rate99, etc) so they could compare old vs. new. That required a complete re-write of most of the underlying applications because users wanted to see the difference on any/all applications that displayed a shipping rate. I'll throw in asking 'why?' was often answered with "because we pay you to do what we say". Luckily, we had already gotten to work on a lot of this before January 1st, so we were, for the most part, ready.
January 1st rolls around (we had to be in the office at 3:00AM), work thru changes, spend some time testing, and be done before noon. That didn't happen. The accounting system was a system that wasn't in (and had never been) in scope, and when we flipped the switch, one of the accountants comes into the office:
E: "Guys? None of our Excel spreadsheets are working. They are critical to integration with the accounting software"
Us: "What? Why would you be using Excel to integrate with the software instead of their portal?"
E: "We could never figure it out, so we had a consultant write VBA scripts to do the work."
Us: "OK, a lot of fields changed, but shouldn't be a big deal. How many spreadsheets are we talking about?"
E: "Hundreds. We have a separate spreadsheet for every integration point. The consulting company said it scalable, whatever that means."
Us: "What?! Why we just know hearing about this!?"
E: "Don't worry, the consultant said making changes would be easy, let me show you, just open the spreadsheet..click here..<click><click><click>...ignore that error, it always happens...click that <click><click><click>.."
Us: "Oh good lord, this is going to take hours"
E: "Ha! Probably. All this computer stuff is your job and I've got a family to get to. Later"
Us: "Hey 'VP of IS', can we go home and fix these spreadsheets as-needed this week?"
VP-IS: "Let me check with 'VP-FS'"
<few minutes later>
VP-IS: "No, he said Excel is critical to running their department. We stay until Excel is fixed."
Us: "No, no...its these spreadsheets. I doubt FS needs all of them tomorrow morning."
VP-IS: "That's what I said. Spreadsheets, Excel, same thing. I'll order the pizza. Who likes pepperoni!?"
At least he didn't cheap out on the pizza (only 4 of us and he ordered 6 large, extra pepperoni from one of the best pizza places in town)
One problem after another and we didn't get done until almost 6:00AM. Then...
VP-IS: "Great job guys. I've scheduled a meeting at 8:00AM to review what we did so we can document the process for next year. You've got a couple of hours. Feel free to get some breakfast and come back, or eat the left over pizza in the breakroom fridge. There is a lot left"
Us: "Um...sorry...we're going home."
VP-IS: "WHAT!!...OK...fine. I'll schedule the meeting for 12"
Us: "No...we're going home. We'll see you tomorrow." -
It is said that the number of programmers doubles every five years with fresh CS, CE, and EE grads. Assuming that's true, then at any one time over half the developer community are novices in the early stages of their career.
My entire life's been spent in software and I've been in it now for about 15 years and I've seen a lot of people make alot of things and I've seen a lot of people fail at alot of things. My observation is that the doers are the major thinkers, the people that really create the things that change this industry are both the thinker doer in one person. It's very easy to take credit for the thinking the doing is more concrete. It's very easy for somebody say "oh, I thought of this three years ago" but usually when you dig a little deeper you find that the people that really did it. Were also the people that really worked through the hard intellectual problems.
Many people falsely believe that a great idea constitutes 90% of the work. However, there is a significant amount of craftsmanship required to bridge the gap between a great idea and a great product. As you evolve that great idea it changes and grows it never comes out like it starts because you learn a lot more as you get into the subtleties of it and you also find there's tremendous amount of trade-offs that you have to make.
There are certain things you can't make electrons do, certain things you can't make plastic or glass, certain things you can't make factories or robots do. and as you get into all these things, Designing a product involves juggling 5,000 different concepts, fitting them together like puzzle pieces, and exploring new ways to combine them. Every day brings new challenges and opportunities to push the boundaries of what's possible, and it's this ongoing process that is the key to successful product development. That process is the "magic"3 -
Week 1 of the new job, and it seems I have some pretty low expectations to meet.
Seriously, I just did the math. Let's say one works an average of 48 hours per week, 50 weeks per year. Just as an average. That's 2400 hours in a year.
In the Micro-scale, a manager would mess up their team once every 2.4 hours (2h24m) or about 4 times per day (assuming 5 working days per week).
That is a pretty low bar to clear. It easy not to be an antsy brat that are-we-there-yet's a professional dev four fucking times a day.
And yet... that is what the complete moron who previously sat on my chair used to do.
Seriously, apparently he used to remote access the team's dev envs *while they were working* and even mess up some of their code. Just as a "monitoring measure". He logged their "keystroke time" in a day (using a primitive windowing method, I must add).
At least 7 requests for updates per person per day. I have his slack history, I checked. Dude literally did nothing else but be an annoying anxiety death pit.
And then there is his bulshit planning...
He created tasks out of his stupid whims, no team review or brainstorming, not even a fucking requisites tallying interview.
He prioritized those out-of-nowhere tasks using panic-driven-development practices and assigned them by availability heuristics.
No sizing method, just arbitrary deadlines for tasks.
I think I will need to have daily standup meetings and an open door policy (that is to say, do no actual work) for a couple months until I can instill some sense of autonomy on my new team. Shit.
Someone has another idea? How do I bring some confidence&autonomy back to devs that are used to be treated like dogs?!?7 -
I'm a Salesforce administrator. This user asked for a report. No big deal right? Wrong! The report they want isn't possible unless I created a new report type and modify relationships. When told this their response is " unfortunately I have to have this report by EOB"
........ Lol that's nice, here's the closest thing I can give you right now. Deal with it until I have a minute to just casually flip the whole system on it's head for your one off report5 -
Hey guys...
So...
Today was my first day in a Molding Company (CNC operator)... IT was fine, I barely could hold on physically but I did it :D In less than two weeks I'll be operating my 3 new machines like a PRO.
But that's not the full story... I came home, my dad calls me, and has a mold drawn on paper (2D) for me to model in 3D and print... lol.
I'm proud, not just because I got a new job at first try, now just because my dad asks me to build stuff, but Also because my dad is a DIY guy with lotssss of experience... And now he's the one asking for help, opinions, how to do something...2 -
Talking to a second year student about what they've learnt so far, and what they should learn next:
"Cool, so what general topics would you say you know really thoroughly at the moment?"
"Oh, I've now learnt Java, C#, C, C++, Rust, Javascript, node.js, HTML, CSS, Angular, Vue, Erlang and probably a bunch of other stuff I've forgotten. What do you think I should concentrate on next?"
"Hmm. Probably best to take just one of those and learn it really thoroughly."
"...but I already know them all really thoroughly."
"Ok. Can you explain what an abstract class is in say Java, C# or C++?"
"Sure, I can create a new class called abstract and then use it for abstraction. I do that loads."
...🤷♂️🤦♂️
First lesson: Stop BS'ing. Might work for flexing to non-devs, but that's about it.10 -
I came around the corner in the corridor where a senior PM talked with an engineer.
PM: ... and that's why a good team is so important and we also need sensitive people.
Me: do we have some here?
PM: oh yes, I'm highly sensitive.
Me: one learns something new every day. :-)1 -
So we got a new developer
And his first task's PR is a pure copy paste off a random website that I managed to find in less than 1 minute of searching for the feature on Google
And I mean that's cool and all, because we all do that sometimes
But my oh my, he didn't even bother changing it one bit, hell it didn't even fit the purpose and it was weirdly imported as a separate class instead of it being added as an extension on the existing base class
Like wtf man, at least put some effort into the 5 minutes it took you to find, copy and paste that in3 -
We have a new hire, and he doesn't know much so he is receptive when given feedback on better ways to handle a situation...Or at least, he appears that way. Until the next time and he didn't listen at all.
Today I'm working on the front end to match his API calls. I ask him about a list of options for one of the fields, as he didn't provide that info initially. No worries, there was a lot, easy to miss. He responds with a list of ~100 options, which he copied and pasted from, I'm assuming, their documentation. I tell him that's too many options to hard code, as there is an easy chance to have an error or for there to be one added or deleted, and ask if there is an API endpoint to get the list.
He then asks if I need the key and value, or just key. I tell him if he needs the value(human readable) then he can send me just the value, otherwise both. He says he just needs the key, so I let him know that I need both then, as the value is human readable. He says okay.
He proceeds to make the endpoint, I test it. Then I look at the code he wrote. Not only did he not send me both, he just sent the keys, but he hard coded all 100 keys as opposed to making the call to the external API.3 -
I have not gotten a new phone in years. I am happy with my current one but unfortunately you need fucking at least 4gb of ram in your PHONE to run apps nowadays so it freezes frequently.
Watched the launch event for the OnePlus 7 very impressed. Price: high but not too high.
What they failed to mention, and I only found out a few hours later from a reviewer (Linus) is that they removed the audio jack. Come on guys that's just a dick move.
There are still enough redeeming qualities that I will purchase the device (90hz amoled 1440p 93% screen display? *Drooling*) but I am disappointed and feel slightly conned that in your detailed, 30 minute overview of the phone, you avoided mentioning this.21 -
!dev
Out of shower, I sit on bed staring at my phone cuz I don't know who to talk to. This is the shittiest stage of the lockdown. When you've bore your close friends, exhausted your "I'm gonna find new friends online" options, and now you're -I am- circling back to remind yourself of all the people who put you aside. Just making yourself sadder remembering how each one of them shared a lot of their life and feelings with you and then how easily they went like "Nope. Don't want to deal with you". Don't get me wrong, I'm not saying that's everyone. Every friendship has a proper "distance" but I just don't know why some people are like asteroids. Or rather, their interests are. They come quick and crash your mental barriers and tell you everything there is to know about them but then something shinier catches their attention or they realize they actually won't be able to have you -me- as a sidepiece and then they just... Fuck off.
And I don't know, maybe they think I'll remember them as the one that got away, but sadly, they just become "another one" in a list that I can't remember past the last 5-6 of.
Anyways, I miss the days when I could sit next to a friend, or hug a friend, or just looking into someone's eyes from less than safe distant and seeing how the details of their face change as they speak, and how their emotions flow.
I'm tired of all the zoom and vc and...
I'm just tired. 😢6 -
Impossible deadline experience?
A few, but this one is more recent (and not mine, yet)
Company has plans to build a x hundred thousand square feet facility (x = 300, 500, 800 depending on the day and the VP telling the story)
1. Land is purchased, but no infrastructure exists (its in a somewhat rural area, no water or sewage capable of supporting such a large facility)
2. No direct architectural plans (just a few random ideas about layout, floor plans, parking etc)
3. Already having software dev meetings in attempt to 'fix' all the current logistical software issues we have in the current warehouse and not knowing any of the details of the new facility.
One morning in our stand-up, the mgr says
Mgr: "Plans for the new warehouse are moving along. We hope to be in the new building by September."
Me: "September of 2022?"
<very puzzled look>
Mgr: "Um, no. Next year, 2021"
Me: "That's not going to happen."
Mgr: "I was just in a meeting with VP-Jack yesterday. He said everything is on schedule."
Me: "On schedule for what?"
<I lay out some of the known roadblocks from above, and new ones like the political mess we will very likely get into when the local zoning big shots get involved>
Mgr: "Oh, yea, those could be problems."
Me: "Swiiiiishhhhh"
Mgr: "What's that?"
Me: "That's the sound of a September 2021 date flying by."
Mgr: "Funny. Guess what? We've been tasked with designing the security system. Overhead RFID readers, tracking, badge scans, etc. Normally Dan's team takes care of facility security, but they are going to be busy for a few weeks for an audit. Better start reaching out to RFID vendors for quotes. Have a proposal ready in a couple of weeks."
Me: "Sure, why not."1 -
Things that seem "simple" but end up taking a long ass time to actually deploy into production:
1. Using a new payment processor:
"It's just a simple API, I'll be done in 2 hours"
LOL sure it is, but testing orders and setting up a sandbox or making sure you have credentials right, and then switching from test to life and retesting, and then... fuck
2. Making changes to admin stats.
"'I just have to add this column and remove that one... maybe like a couple of hours"
YOU WISH
3. Anything Javascript
"Hah, what, that's like a button, np"
125 minutes later...
console.log('before foo');
console.log(this.foo)
etc..2 -
Client: The new page template you sent us looks different on production compared to the other pages that use the same component.
Me: Oh, that's strange since the styling is at the component level. Hmm, let me dig in to it.
Start poking around trying to figure out what I managed to screw up only to find that it looks exactly the same on local and staging. Eventually find another style sheet the client is importing on the production site to change some of the styles.
You know, a change that isn't anywhere to be found in the repo, and no one ever asked for anything to be changed. Their "Dev" decided he would hack in a fix instead of shooting me an email.
Apparently he tried changing the SCSS file but the changes weren't showing up. He changed the minified stylesheet but his changes were overwritten on the next deployment..... #howdoesSASSwork?!
Same client as my last rant so I'm not sure why I'm surprised by this. Oh well, I'll take that hourly rate.1 -
A year ago I was hired as a Jr dev to assist the senior dev because he was so busy. Within 2 months he was pushed out and I replaced him. I thought maybe he just got busy with other things or found a new job.
After working alone this past year, I was told last week that since I am so busy with things outside the job, they were hiring someone to help me finish the project I'm currently on.
(for context : I work as a contracted dev for a small dev company of 5 or so people. One for each language/os.)
I can't help but think that I'm probably being pushed out and replaced. I flat out asked that, but never got a reply. Now I'm 70% through a project and disgruntled with everything. Not sure how I'm supposed to feel really.
If they want to replace me for one reason or another that's fine, I just wish they weren't shady about it.
I should probably be working right now, but I'm going to take my kids to the pet store to clear my head. I'll enjoy a little time away from my computer.2 -
Working with the Android SDK after about a decade of mostly avoiding ever having to do so directly...and fucking hell, nothing has changed.
It's still obtuse as fuck, you constantly have to provide contexts to operations which can't need them (there's only one fucking keyboard to close), and whilst they have added some new stuff which helps like Material, the APIs are just as mental, the setup just as elaborate and manual - and they don't seem to have deprecated anything along the way, so fifteen years of random software design decisions cohabit awkwardly together like the Bucket family.
I don't really mind Java, it's just long-winded C - but boy has it found its niche here. Your code is more boilerplate than not until you've written more than you'll mostly ever need to for an app.
At this point I'm just laughing when I come across another Stack Overflow solution for a trivial operation that involves writing an entire class. I would try Kotlin but this isn't a new project, and I'm not pissing another ingredient into this hot mess.
Alright, Android Studio is an improvement on Eclipse, but that's not really saying much.3 -
Found out new senior used to work at one of the same places I used to work but a while before my time. So I guess that's what happened to his hair4
-
Hey Code-tards,
We're announcing a new update to our software `FUCK YOU` to include a new 'feature' no one asked and would give a FLYING FUCK about, but we were sitting on our MOTHERFUCKING ASSES and had to justify our salaries somehow.
So this new feature really just makes your life horrible by taking away or breaking all useful features you were PERFECTLY HAPPY with before, but FUCK YOU if you aren't happy with it and don't throw half of your salary our way every month.
Remember our library you were perfectly OK with, that u integrated in your codebase? DEPRECATED from this second onwards. WHY? BECAUSE FUCK YOU ! That's WHY.
Oh yeah, and one last thing before we make your life a living hellhole, give us your SSN, credit card(s) and mortgage payments to us, you money-hungry CUNT. Haven't you heard the phrase already? YOU WILL OWN NOTHING AND YOU WILL BE HAPPY.2 -
!dev
Guys, we need talk raw performance for a second.
Fair disclaimer - if you are for some reason intel worker, you may feel offended.
I have one fucking question.
What's the point of fucking ultra-low-power-extreme-potato CPUs like intel atoms?
Okay, okay. Power usage. Sure. So that's one.
Now tell me, why in the fucking world anyone would prefer to wait 5-10 times more for same action to happen while indeed consuming also 5-10 times less power?
Can't you just tune down "big" core and call it a day? It would be around.. a fuckton faster. I have my i7-7820HK cpu and if I dial it back to 1.2Ghz my WINDOWS with around lot of background tasks machine works fucking faster than atom-powered freaking LUBUNTU that has only firefox open.
tested i7-7820hk vs atom-x5-z8350.
opening new tab and navigating to google took on my i7 machine a under 1 second, and atom took almost 1.5 second. While having higher clock (turbo boost)
Guys, 7820hk dialled down to 1.2 ghz; 0.81v
Seriously.
I felt everything was lagging. but OS was much more responsive than atom machine...
What the fuck, Intel. It's pointless. I think I'm not only one who would gladly pay a little bit more for such difference.
i7 had clear disadvantages here, linux vs windows, clear background vs quite a few processes in background, and it had higher f***ng clock speed.
TL;DR
Intel atom processors use less power but waste a lot of time, while a little bit more power used on bigger cpu would complete task faster, thus atoms are just plain pointless garbage.
PS.
Tested in frustration at work, apparently they bought 3 craptops for presentations or some shit like that and they have mental problems becouse cheapest shit on market is more shitty than they anticipated ;-;
fucking seriously ;-;16 -
Ugh, I hate this stupid F*!
There's this new guy who's much older and thinks he's a such a f'ing hotshot that he undermines everything I worked on to drop in some a** backwards BS. Luckily I don't have to work with him often, only one day a week - else I would go nuts! He constantly name drops this same company, with little disregard for others younger than him.
Bitch, I'm close to 20 years younger than you and yet I've worked for a much longer list of much more respected companies. I've worked with legal teams on intellectual property, ran my own business, and have multiple patents. Did you ask me once my background? No, because your a selfish prick and an asshole. That's why you're likely in a mid life crisis, single, and alone. Fuck you!3 -
So.. I'm giving one of my employers webapps a visual refresher, new company branding and whatnot.
And then I stumbled onto a check that is not returning what anybody expects, and, well , I'm busy fixing things, yeah..? so I go digging.. 🤔
```
function isDefined(obj) {
return !(typeof obj === "undefined") || obj !== null;
}
```
Here's the fun part, these particular lines have been in the code base since before 2017, which is when my Git history starts, because that's when we migrated projects from Visual SourceSafe 6 over to Git. Yes, you read that right. They were still using VSS in 2017.
I've begged and pleaded with my last 3 bosses to let us thrown this piece of shit out our second story window and rewrite it properly. But no, we don't have time to rewrite, so we must fix what we have instead.
I lost 4 hours of my life earlier today, tracking down another error that has been silently swallowed by a handler with its "console.log" call commented out, only to find that it's always been like that, and it's an "expected error". 🤦
Please, just fucking kill me now... I just, I can't deal with this shit anymore.5 -
This is real rant, not one of these funny stories!
So, I spent 4 years to get a Computer Science degree, and did two specializations, 3.5 years more in Uni. I have 6 years of experience working in IT, from support to programming. I also speak 3 languages.
I'm from a South America country, and now I'm living in EU.
I'm 30 now and earning a little more than a MacDonald's cashier earns in the US. I have to live in a shared apartment like a fucking Uni student. I have nothing, no car, no house, no girlfriend. WTF!
IT is a fucking lie! Profession of the future my ass!
In Uni they said that finding a good job was easy, that companies would literally grab us by the neck to work for them. LIE!
I did found a low paying job though, where at least I could learn a lot more.
People were really satisfied with my work and I even received a proposal of one of our clients to work for them, but the offer wasn't good enough.
I tried entering some big companies as a Trainee, but it was so ridiculous, they said they were looking for an IT person, but they asked things related to economy and other stuff that had nothing to do with IT. I always failed in the group work/interview, it was so ridiculous, I remember one candidate saying her dream was to work for the company since she was a child, SERIOUSLY!
When the opportunity came, I moved to EU and now I'm working as a dev. But as I said, I'm not satisfied with it! In the US the yearly average software engineer salary is about 100K, I earn less than 1/4 of it. And don't come saying that US pays more because of the cost of life, here the cost of life is the same or even more expensive, a super small apartment/loft is at least 180K, a simple new car 18K and a Big Mac costs 4€.
In the US, the average salary of someone that just graduated from uni is 60K to 70K! LOL
In EU, it's super hard for someone to earn 100K, that's why many companies are creating offices here, good workforce, 2 to 3 times smaller salary!
IT also sucks because it's too volatile, there's new stuff all the time. Someone always has to come with a new language, new framework, new library, etc etc. And you have to keep learning new stuff all the time.
Also job openings always ask for experienced people, like you must have at least two years of experience with VUE.js, or something.
Do you remember the last time you went to a doctor for a checkup, did they use a new tool, or did something different during the checkup? Probably not, the medic don't have to learn new stuff all the time, he is still using a stethoscope, he is still placing a wooden stick in your mouth to check your throat...
But in IT, almost no one nowadays is going to create code using CoffeeScript, they instead will use TypeScript.
I read an article saying that an IT professional must study 20 hours a week to keep up with new trends. So I must work 40 hours and study another 20? LOL
It's not that I don't like learning new stuff, but this sucks, I want to maybe learn something different or have a hobby.
Today I regret going to uni, I feel it was a waste of time and money. They taught things like calculus and physics that I never had to use professionally, and even programming stuff like linked lists I never had to use.
If instead I had studied dentistry or studied to be a ophthalmologist I think I would be earning more, would be working more independently and wouldn't need to keep up learning new things so much.
Also to work in IT you don't need a diploma, I read an article by a dude that learned programming by his own, did some software for his portfolio and got a job at Google.
When I read these kinds of story I regret even more going to uni, It really feels I wasted my time.
For these reasons I can't recommend going to uni to study IT, if you want to go to uni go study something else!
If you want to study programming do it on your own, there's everything you must know online for free, create a portfolio, and look for a job or even try working for yourself!
Living the life I have now, there's just no incentive to keep going.
Should I keep learning new stuff so maybe I can get a better job that will still pay low, or quit and try creating something on my own?
Or even ditch IT all together and go back to uni? LOL NO!5 -
A day can hardly pass now before I get numerous unsolicited messages on LinkedIn from recruiters that want to know if I'm miserable at my current job and want to jump ship.
It used to be very fascinating back in the days but kinda annoying these days. My inbox is now full of such messages and it's beginning to get to me. I even got one a few days after I started a new job. Like what the actual fuck. My profile clearly says I recently moved to a new company.
I also have numerous pending friend requests from a lot of recuiters like i want my network to be filled with only recuiters. That's not why i joined LinkedIn and have an up to date profile.
I just want to be left alone and not be bothered and mentally harassed by recuiters on LinkedIn. Is that too much to ask???4 -
I started to get interested in programming at the age of 13. I was started spending a lot time in our school library and read mostly technical books (beginner/hobbyist stuff) about electronics.
Some book was about Quick Basic (hence my username).
On Windoze 95 in a DOS mode IDE I started trying stuff out and soon I had my first tiny console game.
A bit later I started with HTML and CSS stuff, made a website about ongoing jokes in our class and some rants, later I got into VB6 (I hate VB nowadays!) and wrote for a personal school project a learning software (relatively simple one) to learn vocabulary for foreign languages.
At about 15 I started with C++ and later C# .NET, which I liked the most, and started on some new Windows.Forms stuff, created some small websites.
Now I'm working parttime as a professional developer (mostly web, but VR & .NET too) and studying EE at a university.
My parents had no experience with computers at all, so I learned everything myself an with the help of the allmighty internet (the black box with the red dot on top).
That's my story. ;)
Insert your rant about this below this line:
----------------------------------------- -
My boss is the CEO of the company, it's a small company with less than 15 people altogether. Now in the office it's even less there's 7 of us every day, the rest are remote or the boss.
The boss last week Thursday night sent an email talking about vacations, keep in mind she's currently on her third vacation in 6 months.
In the email she says no one but 'special' exceptions will be allowed to take summer vacations from now on, and if you would like to take your vacation you have to give a minimum of 4 months prior notice
Now I personally don't take vacations, (never needed to, no job before this was stressful enough to make me want to take one) but everyone else in the office is working on their resume's and planning to quit before the new year.
apparently being overworked and thrown under the bus time and time again, as well as an abhorrent number of other issues isn't enough to make people quit . but take away their vacations in the most hypocritical way possible and that's the straw that breaks the camels back.
I finally got a car, I've been practicing driving, and hopefully before September I'll have my license and that'll make it easy for me to get out too before things start collapsing too fast.9 -
I made a bit of a tradition of building a list of hardware that's superior to whatever Crapple is releasing whenever Crapple releases something - and for the first time, I decided to make it public instead of just sharing it with some coworkers.
Making it public however took some time (luckily, yesterday was a holiday here, so I got it done now) - at least, making it looking "not like shit" took some time.
So enjoy my (very basic) bootstrap templated, yet possibly useful list of builds superior to the Crapple Rag Mini (which is a completely fictional entity not resembling any existing company in the world. Promise. Totally. Penguin's swear.)
The list can be found here - expect to see an update anytime Crapple pushes new shit to the market:
http://il-pinguino.com/superiortocr...
(possibly not safe for work, children, catholics and SJWs). Yeah, no SSL cert, currently. Hell, it's a private server, it doesn't process any of your info and it doesn't offer downloads... I might add one in the future.
I hope you can forgive my shameless self-promotion, it's not a commercial site, there are no ads/shitcoin miners on it and i don't get a share/cut/whatever - just a small humorous joke project. For now.
BTW: I didn't attempt to build any of those. It should work, but please don't sue me if it doesn't.5 -
One of our projects migrated their file-repository to another one during a major release.
Instead of giving this task to an experienced programmer, they gave it to the head of the respective dev department due to the usual release panic.
Soo.... He wrote the migration tool. It was executed during the release. Everything seemed fine so far.
A few days later. Someone from the above project came to my team due to some "strange behaviour on the production database".
They reported that they couldn't download some of the user's documents due to unknown reasons.
After quickly analyzing the current state of the new file-repository, we concluded that the affected documents did not exist in the new repository.
Then we took a look at the so called migration tool...
Well.. After nearly 30 min. we knew the root cause for that.
They only migrated the first 4 levels of the folder structure. Due to the assumption that "we don't use deeper nesting". (Facepalm)
As the head of their department wrote it, no one seems to questioned it either. Nor did they made a code review and ended up with a tool with hard coded urls to the production db, no version control, no build tool, no ci, nothing. Breaking nearly every possible company standard.
However.. That's not it. When analyzing their migration tool we noticed another even more dangerous thing.
They mixed up the id generation of the migrated documents resulting in a random assignment between customers and documents. Which is quite bad as this contains sensitive information. E.g. passports
They offered us quite a nice amount of money to fix this until EOB. We declinded as it was simply not possible in that time, but agreed to support them with the new tool.
After some time I heard that they migrated production again. And they fucked it up again. They never talked to us after we offered them support...
The third and final migration was written by us. Not only migrated it correctly. It was also way faster. By factor 20.
In the end we haven't gained anything from this rushed project as the penalties were piling up due to this fucked up migration.
After all this time I'm not sure who is to blame. In my opinion, partly all of them.
Head of department who can't and shouldn't code.
Seniors who didn't review the code and didn't ask for help.
Release mgmt who put way too much pressure on the devs.


