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 - "work has to wait"
-
One of my favorite aspects of devRant has always been getting to learn more about the awesome people who use it. Beyond just the awesome stories posted by many here, one of my favorite ways to learn about and feel connected to the people here has always been desk/setup reveals. I personally love seeing different kinds of setups from all over the world, knowing that’s what the people here use to do their work and compute in general.
As an experiment, we want to try a few different things to highlight desk/setup/remote coding location posts. First, we’ve created the first devRant Instagram account, which is completely focused on developer desks/setups/workstations/remote coding. Please check it out here and follow: https://www.instagram.com/devdesks/
I want to use the account to bring more attention to the wide assortment of setups the awesome members of the devRant community post from all over the world. We’ll promote cool desk/setup/remote work images that are posted on devRant to the Instagram account for more exposure/additional audience.
Beyond that, I also want to try to come up with a way to better organize all of the desk/setup posts on devRant and encourage more of them. One kind we don’t see that often that I personally really enjoy is people coding with their laptops in locations that show the culture of their country or something special about the region they are from. Personally, I’m going to try to post some of those for where I live and work.
So how can you help with this effort? It’s easy! We encourage people to post their setups/working remotely pics and we will start featuring them on the Instagram account and hopefully elsewhere in the devRant app for some increased visibility/searchabilty over what we have now (since pics are kind of hard to search).
Also, we plan to make the weekly rant this week “post your setup,” so maybe wait until then to post, and you can work now on getting that awesome shot :) I know a lot of people here love photography like I do, so I think that part is fun too.
Please let me know if you have any ideas or questions about this, and I’m looking forward to seeing the desks/setups of many more devRanters in the next few days!
P.S. not a requirement, but one thing I think makes these photos better looking through a lot of them is when there is code visible in some way.43 -
Long rant ahead, but it's worth it.
I used to work with a professor (let's call him Dr. X) and developed a backend + acted as sysadmin for our team's research project. Two semesters ago, they wanted to revamp the front end + do some data visualization, so a girl (let's call her W) joined the team and did all that. We wanted to merge the two sites and host on azure, but due to issues and impeding conferences that require our data to be online, we kept postponing. I graduate this semester and haven't worked with the team for a while, so they have a new guy in charge of the azure server (let's call him H), and yesterday my professor sends me (let's call me M), H and W an email telling us to coordinate to have the merge up on azure in 2-3 days, max. The following convo was what I had with H:
M: Hi, if you just give me access to azure I'll be able to set everything up myself, also I'll need a db set up, and just send me the connection string.
H: Hi, we won't have dbs because that is extra costs involved since we don't have dynamic content. Also I can't give you access, instead push everything on git and set up the site on a test azure server and I will take it from there.
M: There is proprietary data on the site...
H: Oh really? I don't know what's on it.
<and yet he knows we have no dynamic data>
M: Fine, I'll load the data some other way, but I have access to all the data anyway, just talk to Dr. X and you'll see you can give me access. Delete my access after if you want.
H: No, just do what I said: git then upload to test azure account.
Fine, he's a complete tool, but I like Dr. X, so I message W and tell her we have to merge, she tells me that it's not that easy to set it up on github as she's using wordpress. She sends me instructions on what to do, and, lo and behold, there's a db in her solution. Ok, I go back to talking to H:
M: W is using a db. Talk to her so we can figure out whether we need a database or not.
H: We can't use a database because we want to decrease costs.
M: Yes I know that, so talk to her because that probably means she has to re-do some stuff, which might take some time. Also there might be dynamic content in what she's doing.
H: This is your project, you talk to her.
<I'm starting to get mad right now>
M: I don't know what they had her do apart from how it interfaces with what I've done.
H: We still can't have databases.
M: Listen, I don't do wordpress, and I'm not gonna mess with it, you talk to her
H: I won't do any development
<So you won't do any dev, but you won't give me access to do it either?>
M: Man, the bottleneck isn't the merging right now, it's the fact that W needs a db
H: I know, so talk to her
M: THE RESTRICTION TO NOT HAVE DATABASES IS NOT MINE, IT'S YOURS, YOU TALK TO HER. I can't evaluate whether it's a reasonable enough reason or not since I don't know the requirements or what they're willing to spend.
H: It's your project.
M: Then give me fucking access to azure and I'll handle it, you know you'll have to set up wordpress again regardless whether we set it up the first time.
H: Man just do your job.
At this point I lost it. WHAT A FUCKING TOOL. He doesn't wanna do dev work, wants me to go through the trouble of setting up on a test subscription first, and doesn't want to give me access to azure. What's more, he did shit all and doesn't want to anything else. Well fuck you. I googled him, to see if he's anyone important, if he's done anything notable which is why he's being so God damn condescending. MY INTERNSHIP ALONE ECLIPSES HIS ENTIRE CV. Then what the fuck?
There's also this that happened sometime during our talk:
M: You'll have to take to Dr. Y so he'll change the DNS to point to the azure subscription instead of my server.
H: Yea don't worry, too early for that.
M: DNS propagation takes 24 hours...
H: Yea don't worry.
DNS propagation allows the entire web to know that your website is hosted on a different server so it can change where it's pointing to. We have to do this in 2-3 days. Why do work in parallel? Nah let's wait.
I went over his head and talked to the professor directly, and despite wanting to tell him that he was both drunk and high the day he hired that guy, I kept it professional. He hasn't replied yet, but this fucker's pompous attitude is just too much for me alone, so I had to share.
PS: I named his contact as Annoying Prick 4 minutes into our chat. Gonna rename him cz that seems tooooooo soft a name right now.undefined tools i have access and you don't haha retards why the fuck would you hire that guy? i don't do development46 -
Linux sucks.
Now now, chill. I'm using it as my main OS for a few years now. I know what I'm talking and this title is a bit click-baity, but this just has to go out there:
1. It's usable as a Windows replacement just fine - FALSE. XFCE4 is years old and buggy as hell especially on multi-monitor set-up, Gnome3 gets stuck more often than my Windows 98 machine used to, KDE is like a rich kid on meth. Plug in Bluetooth headphones? Well no, sorry, you have to research that online, since you'll probably need to install some packages for it to work. Did I say "work"? Well no, because after more research you realize that Debian on Gnome3 on gdm3 launches pulseaudio on its own, so you have 2 instances of pulseaudio, and one of them is stealing your headphones sometimes and you either have no sound or shitty sound. How do I know that you ask? The same way I know everything else - every time you try to do something new on any Linux, it involves a ton of research. Exciting research, don't get me wrong, but at this point it looks more like a toy than a reliable desktop computer operating system.
2. And why am I using pulseaudio? Why not alsa? years ago people were discussing on forums that pulseaudio is old and dead, yet here we are with new LTS release of Ubuntu still shining with Pulseaudio. How about several different service management systems being deprecated by new ones, each having different configurations and calling methods? Apparently systemd is old and lame now. It's a mix of 10 year old software that works badly, with a 5 year old replacement that works worse, somehow trying to live under the same roof. Does it work? Ask my headphones who sound like a fucking dial-up modem.
3. Let's talk about displays, shall we? xorg is old and deprecated, right? We got Wayland that's mostly stable. Don't know what that is? That's just basic knowledge for Linux. And when you try to install network-manager, it also tries to install Mir toolkits. Because why the fuck not install 3 display managers when you want a network manager, of which one is old and dying, one is young and stupid, and another is an infant that died of cancer?
4. Want to integrate with Google Drive? Yeah, there's a tool that mounts the drive as a local directory. Yeah only for Ubuntu. Want it on Debian? You need to compile it. Oh wait, it's on Ocaml, because fuck mainstream languages, we're hipsters. How do you compile Ocaml? Well you need to have Ocaml on your system, dummy. How do you do that? Well you need to compile Ocaml. Ok, how do I do that? Well, git clone, download and install some dependencies, configure, make... oh sorry, you're using libssl1.0.2g when you need libssl1.0.1f, nope, sorry, won't work. Want to install libssl1.0.1f? Why? You already have the "g", stupid! Want to remove libssl1.0.2g? Bye-bye literally everything that you have on your PC. But at least you got the "f". Does it work now? Well no, because you need libssl1.0.2g for another dependency to work.
And all I ever wanted was to get a fucking document from google drive (not nudes, I promise).
5. Want to watch a movie? Let me tear that screen in half and make the bottom half late by a couple of frames, because who needs vertical sync, right? Oh you do? Well install the native drivers maybe. Oh you have? Welcome to eternal Boot to Recovery mode, motherfucka!
---------------------------------
Yeah, most of the times things work just fine. But the reason I know what those things are and how they work is not curiosity. The reason that I know the inner workings of Linux much better than the inner workings of Windows, is because in those few years that I've been using it full time, it has caused me 10 times more headache than I have ever experienced with other systems. And it's not the usual annoyances like "OMG it rebooted when I didn't ask it to", but more like "Oh, it won't work and I need 2 days to find out why" kind of stuff, because even if you experience the same thing again, it's always caused by some new shit and the old solution won't work any more.
I still love it, and will continue to use it. I don't know why really. Maybe because I'm not afraid of fucking it up any more? Maybe because I can do what I want in it and recovering will be easier than on Windows?
It's a toy for me, after all these years. And I also use it for professional reasons.
But whenever someone presents it as a better alternative to Windows, I just want to puke.51 -
Was lead developer at a small startup, I was hiring and had a budget to add 3 new people to my team to develop a new product for the company.
Some context first and then the rant!
Candidate 1 - Amazing, a dev I worked with before who was under utilized at the previous company. Still a junior, but, she was a quick learner and eager to expand her knowledge, never an issue.
Candidate 2 - Kickass dev with back end skills and extras, he was always eager to work a bit more than what was expected. I use to send him home early to annoy him. haha!
Candidate 3 - Lets call him P.
In the interview he answers every question perfectly, he asks all the right questions and suggests some things I havent even thought of. CTO goes ahead and says we should skip the technical test and just hire the guy, his smart and knows what his talking about, I agree and we hire him. (We where a bit desperate at this stage as well.)
He comes in a week early to pick up his work laptop to get setup before he starts the next week, awesome! This guy is going to be an asset to the company, cant wait to have him join the team - The CTO at this stage is getting ready to leave the company and I will be taking over the division and need someone to take over lead position, he seems like the guys to do it.
The guys starts the next week, he comes in and the laptop we gave him is now a local server for testing and he will be working off his own laptop, no issue, we are small so needed a testing stack, but wasnt really needed since we had procedures in place for this already.
Here is where everything goes wrong!!! First day goes great... Next day he gets in early 6:30am (Nice! NO!), he absolutely smells, no stinks, of weed, not a light smell, the entire fucking office smells of weed! (I have no problem with weed, just dont make it my problem to deal with). I get called by boss and told to sort this out people are complaining! I drive to office and have a meeting with him, he says its all good he understands. (This was Friday).
Monday comes around - Get a call from Boss at 7:30am. Whole office smells like weed, please talk to P again, this cannot happen again. I drive to office again, and he again says it wont happen again, he has some issues with back pain and the weed helps.
Tuesday - Same fucking thing! And now he doesnt want to sign for the laptop("server") that was given to him, and has moved to code in the boardroom, WHERE OUR FUCKING CLIENTS WILL BE VIEWING A DEMO THAT DAY OF THE PRODUCT!! Now that whole room smells like weed, FML!
Wednesday - We send P a formal letter that he is under probation, P calls me to have a meeting. In the meeting he blames me for not understanding "new age" medicine, I ask for his doctors prescription and ask why he didnt tell me this in the interview so I could make arrangements, we dont care if you are stoned, just do good work and be considerate to your co-workers. P cant provide these and keeps ranting, I suggest he takes pain killers, he has none of it only "new age" medicine for him.
Thursday - I ask him to rather "work" from home till we can get this sorted, he comes in for code reviews for 2 weeks. I can clearly see he has no idea how the system works but is trying, I thought I will dive deeper and look at all of his code. Its a mess, nothing makes sense and 50% of it is hard coded (We are building a decentralized API for huge data sets so this makes no sense).
Friday - In code review I confront him about this, he has excuses for everything, I start asking him harder questions about the project and to explain what we are building - he goes quiet and quits on the spot with a shitty apology.
From what I could make out he was really smart when it came to theory but interpreting the theory to actual practice wasnt possible for him, probably would have been easier if he wasnt high all the time.
I hate interview code tests, but learned a valuable lesson that day! Always test for some code knowledge as well even if you hate doing it, ask the right questions and be careful who you hire! You can only bullshit for so long in coding before someone figures out that you are a fraud.15 -
I’m a senior dev at a small company that does some consulting. This past October, some really heavy personal situation came up and my job suffered for it. I raised the flag and was very open with my boss about it and both him and my team of 3 understood and were pretty cool with me taking on a smaller load of work while I moved on with some stuff in my life. For a week.
Right after that, I got sent to a client. “One month only, we just want some presence there since it’s such a big client” alright, I guess I can do that. “You’ll be in charge of a team of a few people and help them technically.” Sounds good, I like leading!
So I get here. Let’s talk technical first: from being in a small but interesting project using Xamarin, I’m now looking at Visual Basic code, using Visual Studio 2010. Windows fucking Forms.
The project was made by a single dev for this huge company. She did what she could but as the requirements grew this thing became a behemoth of spaghetti code and User Controls. The other two guys working on the project have been here for a few months and they have very basic experience at the job anyways. The woman that worked on the project for 5 years is now leaving because she can’t take it anymore.
And that’s not the worse of it. It took from October to December for me to get a machine. I literally spent two months reading on my cellphone and just going over my shitty personal situation for 8 hours a day. I complained to everyone I could and nothing really worked.
Then I got a PC! But wait… no domain user. Queue an extra month in which I could see the Windows 7 (yep) log in screen and nothing else. Then, finally! A domain user! I can log in! Just wait 2 extra weeks for us to give your user access to the subversion rep and you’re good to go!
While all of this went on, I didn’t get an access card until a week ago. Every day I had to walk to the reception desk, show my ID and request they call my boss so he could grant me access. 5 months of this, both at the start of the day and after lunch. There was one day in particular, between two holidays, in which no one that could grant me access was at the office. I literally stood there until 11am in which I called my company and told them I was going home.
Now I’ve been actually working for a while, mostly fixing stuff that works like crap and trying to implement functions that should have been finished but aren’t even started. Did I mention this App is in production and being used by the people here? Because it is. Imagine if you will the amount of problems that an application that’s connecting to the production DB can create when it doesn’t even validate if the field should receive numeric values only. Did I mention the DB itself is also a complete mess? Because it is. There’s an “INDEXES” tables in which, I shit you not, the IDs of every other table is stored. There are no Identity fields anywhere, and instead every insert has to go to this INDEXES table, check the last ID of the table we’re working on, then create a new registry in order to give you your new ID. It’s insane.
And, to boot, the new order from above is: We want to split this app in two. You guys will stick with the maintenance of half of it, some other dudes with the other. Still both targeting the same DB and using the same starting point, but each only working on the module that we want them to work in. PostmodernJerk, it’s your job now to prepare the app so that this can work. How? We dunno. Why? Fuck if we care. Kill you? You don’t deserve the swift release of death.
Also I’m starting to get a bit tired of comments that go ‘THIS DOESN’T WORK and ‘I DON’T KNOW WHY WE DO THIS BUT IT HELPS and my personal favorite ‘??????????????????????14 -
<rant>
*Rules For Work*
1. Never give me work in the morning. Always wait until 4:00 and then bring it to me. The challenge of a deadline is refreshing.
2. If it's really a rush job, run in and interrupt me every 10 minutes to inquire how it's going. That helps. Even better, hover behind me, and advise me at every keystroke.
3. Always leave without telling anyone where you're going. It gives me a chance to be creative when someone asks where you are.
4. If my arms are full of papers, boxes, books, or supplies, don't open the door for me. I need to learn how to function as a paraplegic and opening doors with no arms is good training in case I should ever be injured and lose all use of my limbs.
5. If you give me more than one job to do, don't tell me which is priority. I am psychic.
6. Do your best to keep me late. I adore this office and really have nowhere to go or anything to do. I have no life beyond work.
7. If a job I do pleases you, keep it a secret. If that gets out, it could mean a promotion.
8. If you don't like my work, tell everyone. I like my name to be popular in conversations. I was born to be whipped.
9. If you have special instructions for a job, don't write them down. In fact, save them until the job is almost done. No use confusing me with useful information.
10. Never introduce me to the people you're with. I have no right to know anything. In the corporate food chain, I am plankton. When you refer to them later, my shrewd deductions will identify them.
11. Be nice to me only when the job I'm doing for you could really change your life and send you straight to manager's hell.
12. Tell me all your little problems. No one else has any and it's nice to know someone is less fortunate. I especially like the story about having to pay so many taxes on the bonus check you received for being such a good manager.
13. Wait until my yearly review and THEN tell me what my goals SHOULD have been. Give me a mediocre performance rating with a cost of living increase. I'm not here for the money anyway.
</rant>10 -
So my manager (a 29 y/o, who hardly can use a mac) walks towards me with a hint of panic in his eyes.
Manager: Hey commander keen, do you know how to use vertical look up in excel, I've tried, and looked at tutorials.
Me: yeah I really don't know excel (and not willing to learn, especially on the fly), I don't even have excel installed, I can write I script that does what you want.
Manager: No you have enough on your plate
3 hours later
Manager: hey I still can't figure it out, could you solve it with a script, won't that take to long
Me: no send me the files, Ill do it with a script.
I start writing 2 for loops and wait for the file, 10 ish minutes later its basicly done, just need to put in the column indexes.
I send a message on both slack channels (hey are you going to email or slack me the file)
After a hour I walk to his desk and again ask him for the file.
Manager a good 2 hours later on slack: Hey I just send you the file, I hope its not to much work, it has to happen asap.
So if you have kids, and they are not that bright by some kind of birth defect, don't worry, they can always become a manager.
But you can't get me down today. I hit 2000 upvotes and the employer is unknowingly a proud sponsor for reading and writing all these rants and comments :-) thnx devrant8 -
I was 15 years old and the first year of high school. Everything was new to me and I was such a newbie. At that time I had 2-3 year of programming behind me at an institution where they taught competitive programming. And I knew something about computers. Not much but more than most of my school mates. At that time I wanted to become "super cool hacker".
So we had this very very thought teacher for history which was also our form master. She really knows how to explained everything about history and in an interesting way. But while she was teaching we also had to write down notes from her powerpoints that were on a projector. And occasionally she would wait for us to copy everything and then move on with her lecture. But sometimes she didn't. This was frustrating as hell. The whole class would complain about this because you couldn't take notes down normal, you had to do it at double speed.
But she got one weak spot. She was not very good with computers. Our school computers were locked in some kinda closet so that students didn't have physical access to a computer and were also password protected. So I came up with the plan to plant wireless mouse in her computer so that I could control her mouse. At that time it seemed like SUPER HACKER MASTER PLAN.
So I got an opportunity one time when she left the classroom and let closet where the computer was open. I quickly sneaked the USB of the wireless mouse in the computer and then go back to the seat.
So THE FUN began.
Firstly I would only go back in powerpoint so that all my schoolmates could write down notes including me. And it was hilarious to watch when she didn't know what is happening. So then I would move her mouse when she tried to close some window. I would just move it slightly so she wouldn't notice that somebody else is controlling mouse. And by missing X button just by slight she would click other things and other things would pop up and now she had to close this thing so it became a nightmare for her. And she would become angry at the mouse and start complaining how the computer doesn't work and that mouse doesn't obey her.
One time when she didn't pay attention to her computer and projector I went to paint program and drew a heart and wrote we love you (In Slovenian Imamo vas radi -> See the picture below) and one of my school mates has the picture of it. We were all giggling and she didn't know what is was for. And I managed to close everything before she even noticed.
So it got to the point where she couldn't hand it more so she called our school IT guy so that he would check her computer (2 or 3 weeks passed before she called IT guy). And he didn't find anything. He was really crappy IT guy in general. So one week passed by and I still had messed with her mouse. So she got a replacement computer. Who would guessed all the problems went away (because I didn't have another mouse like that). I guess when our IT guy took the computer to his room and really thoroughly check it he found my USB.
So he told her what was the problem she was so pissed off really I didn't see her pissed off so much in all my 4 years in high school. She demanded the apology from whom did it. And at that moment my mind went through all possible scenarios... And the most likely one was that I was going to be expelled... And I didn't have the balls to say that I did it and I was too afraid... Thanks to God nobody from my school mates didn't tell that it was me.
While she waited that somebody would come forward there was one moment when our looks met and at that moment both of us knew that I was the one that did it.
Next day the whole class wrote the apology letter and she accepted it. But for the rest of 4 years whenever was there a problem with the computer I had to fixed it and she didn't trust anybody not even our IT guy at school. It was our unwritten contract that I would repair her computer to pay off my sin that I did. And she once even trusted me with her personal laptop.
So to end this story I have really high respect for her because she is a great teacher and great persons that guide me through my teen years. And we stayed in contact.
11 -
So before I resign from my job tomorrow I thought I'd talk a little about a couple of things at work that I won't ever tell my boss in person but are generally some of the reasons I want to leave.
---------- warning long rant ----------
1. The CEO of the company finds out I only have my learner's and take the bus, goes on to belittle me about taking the bus.
(It may have been meant as a joke but I was offended, and we don't have any actual HR to complain to)
First off my real reason for not getting my restricted is mostly related to the fact public transportation does the job it needs to, I don't really complain unless the planning is fucked up (Adele concert rant lol) but typically I don't need a car. The other reason is because with a car I'd have to wait in traffic 1-2 hour each way. Also cars cost money which I don't have.
2. CEO buys himself and general manager brand new Range Rovers, you know those giant monstrosities box jeep looking things.
I hate this because I earn $31k, those things probably cost around $50 each (so typically 3 years worth of my wages).
When I had a talk about my contract at the 6 month mark, the general manager (my boss) said he wouldn't budge on my salary (yet they buy these jeeps)
3. I live way too far from work and because of it being Auckland and the current inflation for house prices, the rent prices have also increase, I wouldn't be able to get a house closer to home nor rent with minimum wage :(
4. Though it's not too necessary they mask that the app was made by me, whenever I see an email about the app to potential clients they refer to be as this app guy, and during their presentations they don't really include as part of the reason this app has been developed ( aside from my boss being the client, I came up with some interesting ideas to turn their paper form of the process they use into a digital one, I also did research for the specific topics, something I could have just asked for instead).
5. Old fashioned way of looking at so called "IT", they added fixing computers to my contract which I dread, especially since I'll be close to a deadline and then I get a call to fix someone's computer...
6. They don't seem to want to expand their "development team" to more than one person.
When I give my resignation I have to stay here for a month and I bet people will start to act differently around me, my likely my boss and the CEO. I think the other people that work will understand, given my situation.
I'm planning to for the last month to only do planning for the app they want me to work on, UML diagrams, use cases, Sprint planning (albiet, only developer here lol). Research on the third party libraries we need for the app and generally give the next guy the easiest path to getting the app done.
I want to do this because the Android and iOS app we're done via cowboy programming in a sense. (I don't have too much in terms of documentation and planning aside from a Microsoft planning website setup with to-do of which features are done for the iOS and paper Todo for the Android app.
Alright long rant over, I've got it all written down, glad I'll be leaving this place.51 -
This is dedicated to all Webdevs, especially those WordPress fanboys.
I was reflecting on some things since I do more frequent freelance jobs at the time. And I have to admit: people are fucking crazy.
I had some serious talk with customers and some serious talk for people I work as subsidiary.
The average customer thinks a nice webpage costs I'm 9-50 bucks. They got some shitty Webhosting for 1-5$/month including domain and think they are set.
They have unclear visions about what they actually want, it all boils down to "I like the design". I made a page for someone who just posted images, no text nothing and I told him a trillion times NEEDS some text, even a fucking picture description would be sufficient, else he'll never score anything at google.
Ofc it got denied, now he's bitching how nobody finds the site when they google his name. The other thing is that Wordpress became the solution for everything.
I'm a fucking certified magento developer and I hate magento with a passion. Magento is an overabstracted clusterfuck and believe me, I did the certification I had to learn more than average about the core. But damn, don't slap woocommerce on everything.
Narrowninded fucktards, the cheap out of the box solution isn't always the best.
Don't cry if you got hacked because you were too dumb to upgrade your wordpress. Don't tell me to do some "enhancements" on a server you probably share with 100 other uses. I can't fix your Webserver with your shitty ftp account.
I also hate WordPress with a burning passion. Cum guzzling cavetroll it is. It has it usages, but don't rely on a core So small every kind of extra functionality has to somehow tinkered on it and then expect it to work flawlessly and for 10$ price.
Of course you can buy a theme that, if it would have been special made for you cost 800$ or more, but it wasn't. It just looks like it from the outside. If you want customization you are at the mercy of the option it provides. I can't even tell how many times i spent whole evenings explaining how their shiny template works. Just to do some crazy shit with JavaScript like rearranging domelements because it didn't work as expected.
I still stay to my word. Nothing great has been nor will be created with a Wordpress core. Don't tell me how some great stuff has been achieved. Or wait, please do so. But before you do think about if that wouldn't been faster, cheaper, more reliable , etc... if done with a framework like symphony or laravel... or even zend or cake.
And that brings me back to the point:
Is cheap and "out of the box" really what you need and desire? As customer and as developer?6 -
Okay i'm done - YOU FUCKING ANDROID STUDIO MORONS. Being at a high level in C++, I tried to do some android coding. THERE ARE FUCKING NO GOOD TUTORIALS, NO GOOD DOCS, HECK, THE SELF GENERATED CODE OF THE IDE IS WRONG: WHAT THE FUCK IS GOING ON YOU FUCKING MORONS?
oh wait, let me first import android.widgets.rant;
or was it android.widgets.devrant.rant; or was it android.dr.rant.RantManager;?
Oh wait, I know lets search the docs?
OH WAIT THE DOCUMENTATION DOESNT HAVE THAT.
NOW HOW ABOUT I JUST TRY THE EXAMPLE CODE? WELL UH-UH! YOU HAVE TO FIND OUT YOURSELF WHAT TO IMPORT IN ORDER FOR IT TO WORK. ALSO, WHAT FUCKING UP WITH THAT PERMISSION SYSTEM? ITS SO BADLY DOCUMENTED!!!
Oh wait, I'm sure that I have to change something in this file... or was it that other file?
GOD
how dare they have style and design guidelines?
MORONS!
I will resort to implement my app idea in godot, idc anymore... I don't want to burn out because I used the "official high standard" tech.
it definitely isn't high standard and definitely not good. Thank you morons@google
THANK YOU FOR NOTHING
A FRAMEWORK WHERE I NEED 2 DAYS TO FIGURE OUT TO ADD EVENT LISTENERS TO MY THINGS IS DEFINITELY NOT ONE I'D LIKE TO USE.
also, whats up with
AudioRecord (int audioSource, int samplerateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes);
ARE WE BACK IN THE C ERA? CAN'T YOU BE BOTHERED TO IMPLEMENT SOME SIMPLE FUCKING ENUMS????
WHATS THE POINT OF AN OOP LANGUAGE IF YOU ARE GOING TO USE IT LIKE C?
Oh wait I found a tutorial ... First trigger: "java scripts". Second trigger: this guy LITTERALLY ONLY TEACHES YOU HOW TO PLACE WIDGETS ON THE CANVAS. THANKS FOR NOTHING SHERLOCK!
Oh btw: did you know that android studio gives the best error messages?
"Error: illegal start of expression"
NO ERROR MESSAGE - NOTHING!
YOU BETTER USE THE IDE OR YOU GO HOME YOU FUCKER!!!
Oh and btw: if you want to read the best documentation - the code itself YOU GOTTA AGREE TO OR TERMS OF SERVICE!!!! WE DONT WANT ANYBODY TO BECOME SUCCESSFUL WITHOUT US KNOWING!!!!!
THANK YOU GOOGLE FOR NOTHING!
YOU FUCKERS!
thanks godot for *atleast* existing. You are the... last pick i'd pick, but :shrug:, I have experienced android studio now.
If anybody has any advice on what to use instead, please go ahead. And you better not tell me how good you are at android studio. I DONT CARE ABOUT WHAT YOU CAN IMPLEMENT IN ANDROID STUDIO. I JUST WANT SOMETHING THAT IS USABLE WITHOUT HAVING TO BE EXTRA CAREFUL WHEN DOING *ANYTHING*!!!!
fuckers.48 -
Dev manager: great news guys. We’ve built a new tool to do automated testing on apps. We’ve gotten rid of the old Appium solution we were using and built this new one.
Me: why not just use the inbuilt native stuff? Click to record works really well.
Manager: nah we thought it would be more flexible to build it ourself.
Me: ... ok ... moving on ... how does it work?
Manager: well this new .jar, you download it, pass in a config file, setup up your simulator and appium and the jar will do everything for you.
Me: ... wait you said you hate Appium? Now you’ve built a wrapper around it? And it doesn’t even set everything up, you’ve to do it all by hand?
Manager: oh we had too, would be too much effort to replace it. Don’t worry we can now write all our tests in .yaml config files instead of using Appium.
Me: so we’ve lost the ability of auto-complete and type ahead, everyone has to upskill on a new tool, it offers no new features over what’s available out of the box and we’ll have to deal with new bugs and maintenance and stuff our self ... because we need more flexibility?
Manager: oh don’t worry. The guy who built it is staying here. He’s going to deal with bug fixes and add features. He’s only one guy, but he’s really sharp, it’ll be great for us and the team.
Me: ... ... ...
*audible noise of soul breaking*
Me: ... ok thank you. I’ll look into this new tool3 -
I have been a mobile developer working with Android for about 6 years now. In that time, I have endured countless annoyances in the Android development space. I will endure them no more.
My complaints are:
1. Ridiculous build times. In what universe is it acceptable for us to wait 30 seconds for a build to complete. Yes, I've done all the optimisations mentioned on this page and then some. Don't even mention hot reload as it doesn't work fast enough or just does not work at all. Also, buying better hardware should not be a requirement to build a simple Android app, Xcode builds in 2 seconds with a 8GB Macbook Air. A Macbook Air!
2. IDE. Android Studio is a memory hog even if you throw 32GB of RAM at it. The visual editors are janky as hell. If you use Eclipse, you may as well just chop off your fingers right now because you will have no use for them after you try and build an app from afresh. I mean, just look at some of the posts in this subreddit where the common response is to invalidate caches and restart. That should only be used as a last resort, but it's thrown about like as if it solves everything. Truth be told, it's Gradle's fault. Gradle is so annoying I've dedicated the next point to it.
3. Gradle. I am convinced that Gradle causes 50% of an Android developer's pain. From the build times to the integration into various IDEs to its insane package management system. Why do I need to manually exclude dependencies from other dependencies, the build tool should just handle it for me. C'mon it's 2019. Gradle is so bad that it requires approx 54GB of RAM to work out that I have removed a dependency from the list of dependencies. Also I cannot work out what properties I need to put in what block.
4. API. Android API is over-bloated and hellish. How do I schedule a recurring notification? Oh use an AlarmManager. Yes you heard right, an AlarmManager... Not a NotificationManager because that would be too easy. Also has anyone ever tried running a long running task? Or done an asynchronous task? Or dealt with closing/opening a keyboard? Or handling clicks from a RecyclerView? Yes, I know Android Jetpack aims to solve these issues but over the years I have become so jaded by things that have meant to solve other broken things, that there isn't much hope for Jetpack in my mind 😤
5. API 2. A non-insignificant number of Android users are still on Jelly Bean or KitKat! That means we, as developers, have to support some of your shitty API decisions (Fragments, Activities, ListView) from all the way back then!
6. Not reactive enough. Android has support for Databinding recently but this kind of stuff should have been introduced from the very start. Look at React or Flutter as to how easy it is to make shit happen without any effort.
7. Layouts. What the actual hell is going on here. MDPI, XHDPI, XXHDPI, mipmap, drawable. Fuck it, just chuck it all in the drawable folder. Seriously, Android should handle this for me. If I am designing for a larger screen then it should be responsive. I don't want to deal with 50 different layouts spread over 6 different folders.
8. Permission system. Why was this not included from the very start? Rogue apps have abused this and abused your user's privacy and security. Yet you ban us and not them from the Play Store. What's going on? We need answers.
9. In Android, building an app took me 3 months and I had a lot of work left to do but I got so sick of Android dev I dropped it in favour of Flutter. I built the same app in Flutter and it took me around a month and I completed it all.
10. XML.
If you're a new dev, for the love of all that is good in this world, do NOT get into Android development. Start with Flutter or even iOS. On Flutter and build times are insanely fast and the hot reload is under 500ms constantly. It's a breath of fresh air and will save you a lot of headaches AND it builds for iOS flawlessly.
To the people who build Android, advocate it and work on it, sorry to swear, but fuck you! You have created a mess that we have to work with on a day-to-day basis only for us to get banned from the app store! You have sold us a lie that Android development is amazing with all the sweet treat names and conferences that look bubbly and fun. You have allowed to get it so bad that we can't target an API higher than 18 because some Android users are still using devices that support that!
End this misery. End our pain. End our suffering. Throw this abomination away like you do with some of your other projects and migrate your efforts over to Flutter. Please!
#NoToGoogleIO #AndroidSummitBoycott #FlutterDev #ReactNative16 -
I really hate this company.
The code is a disaster. Every single other employee is a salesperson. Nobody has any bloody clue what I do or how difficult it is. They don't care about stability (unless things are crashing), maintenance (until crashing), code quality (until it delays features), or anything apart from shiny new features they can sell. The boss (the king salesman, if ever there was one) doesn't know how to manage, but tries to by acting like his "nice asshole" self -- he's an asshole that gives you passes, makes sure it's bloody obvious that he's doing it begrudgingly, yet everything is still absolutely your fault. If he arbitrarily decides it's too much your fault, he stops being "nice" and flips out on you in front of everyone. That's a "nice asshole": an asshole who can barely even pretend to be nice.
Fuck him.
And you know what? I really hate having to work next to these fucking birds, too.
Today was our weekly conference call, and I was both late and unprepared. I was too focused on my work, and got a ping 4 minutes into the meeting, so I obv didn't have time to prepare. Boss was also pissy today, and I didn't have much to show for my week, thanks to lots of little "OMG NEED ASAP" shit projects that all took too long, pushing back what I was actually supposed to work on. Which didn't get finished, of course, and today that project was "the most important" -- I suspect simply because it wasn't finished. AGADJFSKL. Cue the birds fucking screaming and never fucking shutting up no matter what I did. Blanket? No effect. Spray bottle? SCREAM MORE! Boss was yelling at me, the birds were screaming, and I couldn't think. Goddamn fucking disaster.
and yes, we have a macaw. A macaw and over 20 cockatiels. Said macaw decided today was a lovely day to just fucking SCREAM non-stop, and the tiels were doing their best to keep up. Thinking clearly during this cacophony? Not gonna happen.
Wait, "go elsewhere," you say? Somewhere quieter? Where is this "elsewhere?" We live in a fucking tiny house, and during the call it was (and still is) filled with sleeping people, and surrounded by a fucking desert. Who the fuck thought living in the desert was a good idea, anyway? Like, seriously. What brainless moron thought "You know what? This is a great place! Let's settle down right here," while trudging through the scorching sand and dust, looking at the basically lifeless horizon filled with large, hot, dry, dusty, barren rocks (aka "mountains"), and fucking dying from thirst? Probably someone so delirious from heatstroke they never actually recovered, and continued raving that it's a goddamn paradise to their heat-addled imbecile followers. I really hope they hallucinated a la-z-boy in place of a hedge of teddybear cholla and died an excruciating and prickly death. Fuck that guy/girl, too.
But I digress.
I seriously need an office that isn't a 30 min drive into gang-central. I'd work outside, but I live in the middle of the bloody fucking desert, and get heat exhaustion within about half an hour. Everywhere else in the house people bother me almost incessantly.
just. FUCKING FJASKLDFJGAG.
I HATE THIS PLACE SO SO SO MUCH.
'I've had such Zen lately,' Alex said. Maybe then, but lately? I've just been too exhausted and burned out from putting up with all this shit to get angry. Days like today? I could pour kerosene over everything and laugh as it all just burned to ash.rant it's a cool day at 96f/35c root has problems and fan the flames as your blazes burn root should see a shrink desert kerosene asshole boss when you fall i'll take my turn15 -
I'm 20, and I consider myself to be as junior as they come. I only started programming seriously in June 2016,and since then, I've been doing mainly Android Work, and making my own servers and backends(using AWS/Firebase nd stuff).
For the first time in life, I was approached by a recruiter for a company on linkedIn. They "stumbled upon" my Github profile and wanted to see if I was interested in an internship opportunity. This company is an early stage start up, by that I mean a dude with an idea calling himself the CEO and a guy who "runs a tech blog" and only knows college level C programming (explaination follows).
So they want me to make the app for their startup. and for that, I ws first asked to solve a couple problems to prove my competence and a "technical interview" followed.
They gave me 3 questions, all textbook, GCD of 2 numbers, binary search and Adding an element to the linked List, code to be written on a piece of paper. As the position was that of an Android Developer, I assumed that Java should be the language of choice. Assumed because when I asked, the 'tech blogger' said, yeah whatever.
But wait, that ain't all, as soon as I was done, Mr. Blogger threw a fit, saying I shouldn't assume and that I must write it in C. I kept my cool (I'm not the most patient person), and wrote the whole thing in C.
He read it, and asked me what I've written and then told me how wrong I was to write 2 extra lines instead of recursion for GCD. I explained that with numbers large enough, we run the risk of getting a stackoverflow and it's best to apply non recursive solution if possible. He just heard stackoverflow and accused me of cheating. I should have left right then, but I don't know why, I apologized and again, in detail explained what was happening to this fucktard. Once this was done, He asked me how, if I had to, I'd use this exact code in my Android App. I told him that Id rather write this in Java/Kotlin since those are the languages native to Android apps. I also said that I'd export these as a Library and use JNI for the task. (I don't actually know how, I figured I can study if I have to).
Here's his reply, "WTF! We don't want to make the app in Java, we will use C (Yeh, not C++, C). and Don't use these fancy TOOLS like JNI or Kotlin in front of me, make a proper application."
By this I was clear that this guy is not fit to be technical lead and that I should leave. I said, "Sir, I don't know how, if even possible, can we make an Android App purely in C. I am sorry, but this job is not for me".
I got up and was about to leave the room, when we said, "Yeah okay, I was just testing you".
Yeah right, the guy's face looked like a howling monkey when I said Library for C, and It has been easier for me to explain code to my 10 year old cousin that this dumbfuck.
He then proceeded to ask me about my availability, and I said that I can at max to 15-20 hours a week since my college schedule is pretty tight. I asked me to get him a prototype in 2 months and also offered me a full time job after I graduate. (That'd be 2 years from now). I said thank you for the offer, but I am still not sure of I am the right person for this job.
He then said, "Oh you will be when I tell you your monthly stipend."
I stopped for a second, because, money.
And then he proceeded to say 2 words which made me walk out without saying a single word.
"One Thousand".
I live in India, 1000 INR translates to roughly $15. I made 25 times that by doing nothing more than add a web view to an activity and render a company's responsive website in it so it looks like an app.
If this wasn't enough, the recruiter later had the audacity to blame me for it and tell me how lucky I am to even get an offer "so good".
Fuck inexperienced assholes trying shit they don't understand and thinking that the other guy is shitsworth.10 -
Root: Fleshes out missing data in some factories. Tests affected code and finds the change breaks some specs (but shouldn’t).
Root: Reaches out to spec author.
Root: Messages thundercunt (the ticket’s code reviewer) on slack about the specs and the reaching out. No response.
Root: Works on another ticket while blocked.
Root: Logs off.
Root: Talks with spec author chick in the morning. Decide to pair on specs later.
TC: Still no slack response.
Root: Gives update in standup. Mentions factories and broken specs. Mentions pairing with spec chick.
TC: Still no slack response.
Root: Pulled off tickets in favor of prod issue. Gets ignored by everyone else diagnosing prod issue. Investigates prod issue by herself. Discovers prod issue isn’t from bad code, but bad requirements — code works as requested. Communicates this with details. Gets ignored by people still diagnosing prod issue. Tries again. Gets ignored. Gives up. Works on non-blocked tickets instead.
TC: Still no slack response.
Hours later:
TC: Comments on PR telling me I broke specs (how did I not notice?), that I need to reach out to spec chick and work with her, and that I can’t resolve the ticket until it’s fixed and passes code review.
TC: Still no slack response. (21 hours later at this point)
TC: Logs off. Still no response (25 hours at this point)
———
Ignoring the prod issue for the moment…
I broke specs. No shit.
I need to talk with spec chick. No shit.
I can’t resolve the ticket. No shit!
Bitch, I told you all of this 21 fucking hours prior, and again 3 hours prior during standup. But no, I clearly “don’t communicate” and obviously have no bloody clue what I’m doing, either, so I need everything spelled out for me.
And no, I didn’t resolve the fucking ticket. Why the fuck would I if it still has pending changes? Do you even check? Ugh!
And what the fuck with that prod issue? I’m literally giving you the answer. fucking listen! Stupid cunts.
Why is it all of the women I work with are useless or freaking awful people? Don’t get me wrong, many of the men are, too, but I swear it’s every single one of the women. (Am I awful, too?)
Just. Ugh.
I can’t wait to leave this sewer of a company.
Oddly still a good day, though. Probably because I talked to recruiters and sent out my resume again.rant oh my root gets ignored. root swears oh my root talks in third person root solves a prod issue thundercunt root communicates root wants to leave root gets ignored14 -
Fuck my life...
Okay, so I’m working on a web app with a small group... the app is basically a lead generator for new business in another country. We just need contact details cause they’re a fucker to buy.
Step 1: prototype to the investors, working with the ceo to make this thing look shiny AF.
Goes well as fuck.
CEO: “when can we get this out?”
Me: “it’s basically done mate, get your guys to look at it and we can talk about marketing”
Que a shower of 10 or so bellends with senior in their title going into a room and coming out with:
Bellends: “so on this page we want the user to confirm and accept the contract”
Me: “cool, makes some sense, that’s what it’s already doing.”
Bellends: “afterwards we want to show them the price and have them put in their banking details.”
Me: “Wait, you what when?”
Bellends: “Yeah, well Jenny says we should have as few clicks as possible to get to the final stage and have the customer accept.”
Me: “Jenny’s on fucking crack, moving the contract formation phase to after the contract acceptance stage is not an option”
Bellends: “Oh it’s okay, Andy in legal said that would be okay”
Me: “Andy’s a fucking moron, tell him that online contract formation laws were updated 2014/2015 and you can’t do that anymore”
Bellends: “No, andy’s legal, surely he knows”
Bellends: “We want all of this above the fold”
Me: “OH FUCKING SUCK A DICK YOU ABSOLUTE BAND OF FUCKWADS... which one of you, which one hasn’t looked at a website this millennia!?”
Needless to say I ignored all their shit, got the lead generator out and told the CEO those ten people are certifiably fucking useless.
Bonus round; recent, but “it has to be on internal infrastructure”
“Why? It’s a mobile app sending rest calls to a third party saas.”
“It just has to, we have this thing called the private cloud and w”
“Wait... you what son, priv 🤦🏼♂️ private what mate?”
“Private cloud”
“You... you mean a server rack?”
“Nah we spent £2mn on it, it’s brilliant”
“Hahahaha you fucking dick, you blew £2mn on server infra with fuckall to put on it!?”
“No, no it’s the private cloud”
“Fucking idiot, aye son, where’s the fucking bean stalk you prick!?”
“It has to go on internal infr”
“Shut up, that won’t work”9 -
True Story. Good rant bad pitched.
Just a small information before: In Germany, if you want to be a softdev and want to learn it, you can either go study IT or you can have a apprenticeship, which is 3 years with 75% of work in a company which will pay you (around 1K / month) and 25% in a school.
I work for this city-govermant company nearly 1 year now. Around 6 month into I told them I which to have a intern for 3 years (apprenticeship) at my site. Most likely because I really enjoy to teach.
My boss agreed to this very fast, told me it's a good idea, it would be a new way for our company to evolve. In Feb 2019, when we had interviews with candidates, we decided for one and I made a resource plan for most of 2019 in which I blocked 3 weeks for the start of his apprenticeship in July (2 weeks ago) because I knew he is a kid, 18 years, etc, never coded etc.
7 days into his apprenticeship my boss called me and my boss to her and told me there is a project which should be done by end of june and why it isnt finished.
It was the same project which I had ressources for 4 weeks in June but the department didn't come up with proper feature requests etc. so another department got the time from me. I told my boss exactly this: not my fault that it isn't done, showed her emails, reminders etc.
I also offered her to spend a weekend soon if everything is there now, but she told me: no. It has to be done ASAP. ASAP means, start now, don't stop until its done.
I told here, I have a intern on my site, I blocked the time.
She told me one sentence I will never forget:
"If your intern is blocking this project, he has to go. You decide. Now."
I was so surprised that I didn't even got any word out then "yes, I will start." I was shocked by this words and her decision to quit this young guy.
Just to give a a bit more background: we hired him in Feb 19 for Jul 19. If we would quit him right now, he would most likely not have any chance on the market for another apprenticeship and has to wait for Jul/Aug 20 and 1 year without job, money etc. He even moved to our city for this job...
So I moved back to my desk and today, 2pm, I finished all of the project, nearly 50h+ work done in 5 days, so he can stay.
What the actual fuck...15 -
!security
(Less a rant; more just annoyance)
The codebase at work has a public-facing admin login page. It isn't linked anywhere, so you must know the url to log in. It doesn't rate-limit you, or prevent attempts after `n` failures.
The passwords aren't stored in cleartext, thankfully. But reality isn't too much better: they're salted with an arbitrary string and MD5'd. The salt is pretty easy to guess. It's literally the company name + "Admin" 🙄
Admin passwords are also stored (hashed) in the seeds.rb file; fortunately on a private repo. (Depressingly, the database creds are stored in plain text in their own config file, but that's another project for another day.)
I'm going to rip out all of the authentication cruft and replace it with a proper bcrypt approach, temporary lockouts, rate limiting, and maybe with some clientside hashing, too, for added transport security.
But it's friday, so I must unfortunately wait. :<13 -
I’m a .NET desktop fullstack dev these days… Never worked web unless for my own small needs/personal projects.
I started using tech one way or the other by the time windows was version 3.1 and been through quite a bit ground-breaking changes in the industry of software development and the internet but if there’s one thing I cannot understand of it all, no matter how much thought I put into it is: How the fuck did we manage to make it so fucking complicated to develop anything these days?
I remember like it was yesterday that you could stand a website with HTML, CSS and JS, three fucking files and you’ve made yourself a single page site. Then came the word “Responsive”, “Responsive” written everywhere. Fair enough, grid system popped up. All of the sudden jQuery was summoned… and everything that happened after this point has been a fucking circus of high-pitched teens talking on conferences about fucking libraries and frameworks to make integration with real time, highly scalable, eco-friendly, serverless, data driven, genome aware, genderless, quantum technologies to interact with bio dynamically generated organisms, namely fucking users.
Every fucking bit of the process of building a mobile/web application seems to be stopped by yet another incredibly dumb attempt to suicide a developer. Can you go from starting an app and publishing an app without jumping through a thousand VERY specific hoops? No, fuck no.
I fucking hate it… It’s a bit hard to get Desktop dev jobs these days but for as long as I work on IT I will continue to stick to that area, until someone for the love of life comes up with a fucking solution to all this decadent circus of bureaucratic technocracy.
Fuck big industry, fuck tech giants, fuck javascript and webassembly, fuck kids putting ASCII art on console applications that I DON’T FUCKING NEED to install dependencies THAT I DON’T FUCKING NEED to extend functionality on frameworks that I DON’T FUCKING NEED… oh wait, I do need all this because YOU FUCKING MADE IT MANDATORY NOW! FUUUUUUUUUUUUUUUUUUUUUUUCK YOU!!!9 -
Here's a follow-up to my New Year's resolutions rant six months ago:
( https://devrant.com/rants/1117379/... )
I've completed (or made significant strides in) 5 of my 7 resolutions:
1) Rid and keep my like free of toxic people. This includes parents.
I have had a serious conversation with everyone who made my life worse and whom I wanted to keep around, outlining my issues with them and my expectations should they want to remain in my life. I happily cut out everyone who refused to change their behavior, including my parents. My life is quieter now, and much nicer.
3) Take care of myself for a change!
I've started this, but with work, a monster, etc. it's been almost prohibitively difficult. Minimal lasting progress despite considerable effort. I will make more time for it and make it happen. (I was down 12 pounds at one point! Though this isn't just about weight.)
4) Stop putting up with things I don't have to.
If I don't like something optional, snip snip!
I no longer wait patiently (fuming) for slow-moving people. If something prevents me from being productive or going about my day, I no longer let it. Carpe diem; calcitrare culus! I have been much more productive and energetic because of this.
5) Actually enjoy things I enjoy.
Okay, this one is very difficult. Whenever I'm not working, I feel like I'm wasting my time. However, I have made a conceited effort every day to take time off and do something that sounds fun. Sometimes that's more work, but usually it's music, a game, a book, exercise, or bed. I'm still working on actually enjoying my time away from work, however, but I'm making progress!
7) Finish de-googling my life.
I no longer use a gmail account (except a work-provided account), nor do I use any of their services unless absolutely necessary (and I do so through TOR). My phone still has Google Play Services; however, I'm working on finding a replacement that I can @Root. (Suggestions welcome!)
------
The two resolutions I haven't yet addressed:
2) Find a well-paying job that isn't also toxic.
My job has gotten less toxic of late, with the boss actually listening and everyone writing up feature requests (with co-sponsors) instead of just dumping them in my lap. I perform an effort analysis on them, and everyone discusses them as a team to determine which actually deserve development time. This is tens of times better than before. I also no longer have to be at the office. In fact, I haven't been there in months -- and don't even remember the alarm codes haha. I may also be getting another developer, though I suspect this is actually a lie.
6) Finally buy a harp. I've wanted one since I was 3 ffs.
I haven't done any research yet on which harp(s) I should buy. Also, I have no idea where I would keep it, so I may defer this until we move, or just get a tiny one (lap-sized and cute!) to practice on. Probably both!
------
It's been six moths, and I'm happy with my progress. 😄9 -
Fuck code.org. Fuck code. Not code code, but "code" (the word "code"). I hate it. At least for teaching. Devs can use it as much as they want, they know what it means and know you can't hack facebook with 10 seconds of furiously typing "code" into a terminal. What the fuck are you thinking when you want me to hack facebook? No, when I program, it's not opening terminal, changing to green text and typing "hack <insert website name here, if none is given, this will result to facebook.com>" Can you just shut the fuck up about how you think that because you can change the font in google fucking docs you have the right to tell me what code can and can't do? No, fuck you. Now to my main point, fuck "code" (the string). It's an overused word, and it's nothing but a buzzword (to non devs, you guys know what you're talking about. how many times have you seen someone think they are a genius when they here the word "code"?) People who don't know shit don't call themselves programmers or devs, they call themselves coders. Why? It fucking sounds cool, and I won't deny that, but the way it's talked about in movies, by people, (fucking) code.org, etc, just makes people too much of a bitch for me to handle. I want everyone reading this rant who has friends who respect the fact that YOU know code (I truly believe everyone on devRant does), how it works, and it's/your limitations, AND that it takes hard work and effort, to thank god right now. If you're stuck with some people like me, I feel you. Never say "code" near them again. Say "program." I really hate people who think they know what an HTML tag is and go around calling themselves coders. Now onto my main point, code.org. FUCK IT. CAN YOU STOP RUINING MY FUCKING AP CS CLASS. NO CODE.ORG, I DON'T NEED TO WATCH YOUR TEN GODDAMN VIDEOS ON HOW TECHNOLOGY IS IMPORTANT, <sarcasm>I'VE BEEN LIVING UNDER A ROCK FOR THIRTY YEARS</sarcasm>. DO I REALLY NEED ANOTHER COPY OF SCRATCH? WAIT, NO, SCRATCH WAS BETTER. YOU HAD FUCKING MICROSOFT, GOOGLE, AND OTHER TECHNOLOGICAL GIANTS AND YOU FUCKED UP SO BAD YOU MADE IT WORSE THAT SCRATCH. JUST LETMECODE (yes I said that) AND STOP TALKING ABOUT HOW SOME IRRELEVANT ROBOT ARM DEVELOPED BY MIT IS USING AI AND MACHINE LEARNING TO MAKE SOME ROBOT EVOLVE?! IF YOU SPEND ONE MORE SECOND SAYING "INNOVATION" I'LL SHOVE THAT PRINT STATEMENT YOU HAVE A SYNTAX ERROR UP YOUR ASS. DON'T GET ME FUCKING STARTED ON HOW ITS IMPOSSIBLE TO DO ANYTHING FOR YOURSELF WHEN YOUR GETTING ALL THE ANSWERS WITHOUT DOING ANY WORK AND THE FACT THAT JAVASCRIPT IS YOUR FUCKING LANGUAGE. <sarcasm>GREAT IDEA, LETS GET THESE NEW PROGRAMMERS INTO A PROFESSIONAL ENVOIRMENT BY ADDING A DRAG AND DROP CODE (obviously we can say it) EDITOR</sarcasm> MAYBE IF YOU GOT THIS SHIT UP YOUR ASS AND TO YOUR BRAIN YOU'D ACTUALLY GET TO PRPGRAMMING IN YOUR ADVANCED AP COURSE. ITS CALLED FUCKING CODE.ORG FOR A REASON32
-
This is my most ridiculous meeting in my long career. The crazy thing is I have witnessed this scenario play out many times during my career. Sometimes it sits in waiting for a few years but then BOOM there it is again and again. In each case the person that fell into the insidious trap was smart and savvy but somehow it just happened. The outcomes were really embarrassing and in some cases career damaging. Other times, it was sort of humorous. I could see this happening to me and I never want it to happen to you.
Once upon a time in a land not so far away there was a Kickoff Meeting for an offsite work area recovery exercise being planned for our Oklahoma locations. Eleven Oklahoma high ranking senior executives were on this webinar plus three Enterprise IT Directors (Ellen, Jim and Bob) who would support the business from the systems side throughout the exercise.
The plan was for Sam Otto, our Midwest Director of Business Continuity to host this webinar. Sam had hands-on experience recovering to our third party recovery site vendor and he always did a great job. He motivated people to attend the exercise with the coolest breakfasts and lunches you could imagine. Donuts, bagels, pizza, wings, scrumptious salads, sandwiches, beverages and desserts. He was great with people and made it a lot of fun.
At the last minute Charles 'Don't Call Me Charlie' Ego-Smith, the Global Business Continuity Senior Vice President, decided to grand-stand Sam. He demanded the reins to the webinar. Pulled a last-minute power-play and made himself the host and presenter. You have probably seen the move at some point in your career. I guess the old saying, 'be careful what you wish for' has some truth to it - read on and let me know if you devRanters agree...
So, Charlie, I mean Charles, begins hosting the session and greets all of the attendees. Hey, good so far! He starts showing some slides in the PowerPoint presentation and he fields a few questions, comments and requests from the Oklahoma executives. The usual easy to handle requests such as, 'what if we are too busy to do recover all systems', 'what if we recover all of our processes from home', 'what if we have high profile visitors that month?' Hey you can't blame them for trying. You are probably thinking to yourself, 'been there - heard that!' But luckily our experienced team had anticipated the push-back. Fortunately, Senior Management 'had our backs' and committed that all processes and systems must participate and test - so these were just softball requests, 'easy-peasy' to handle. But wait, we are just getting started!
Now the fireworks begin. Bob, one if the Enterprise IT directors started asking a bunch of questions. Well, Charles had somewhat of a history with Bob from previous exercises and did not take kindly to Bob's string of questions. Charles started getting defensive and while Bob was speaking Charles started IM'ing. He's firing off one filthy message after another to me and our teammate Sam.
'This idiot Bob is the biggest pain in the ass that I ever worked with'; 'he doesn't know shit', 'he never shuts the f up', 'I wanna go over to his office and kick his f'in ass...!'
Unfortunately...the idiot Charles had control of the webinar and was sharing his screen so every message he sent was seen by all of the attendees! Yeah, everyone including Bob and the Senior Oklahoma executives! We could not instant message him to stop as everyone would have seen our warnings, so we tried to call Charles' cell phone and text him but he did not pick up. He just kept firing ridiculously embarrassing dirty IM messages and I guess we were all so stunned we just sat there bewildered. We finally bit the bullet and IM'ed him to STOP ALREADY!!! Whoa, talk about an embarrassing silence!
I really felt sorry for Bob. He is a good guy. Deservedly, Charlie 'Yes I am going to call you CHARLIE' got in big time hot water after the webinar with upper management. For one reason or another he only lasted another year or so at our company. Maybe this event played a part in his demise.
So, the morale is, if you use IM - turn it off during a webinar if you are the host. If you must use it, be really careful what you say, who you say it to and pray nothing embarrassing or personal is sent to you for everyone to see.
Quick Update - During the past couple of months I participated on many webinars with enterprise software vendors trying to sell me expensive solutions. Most of the vendors had their IM going while doing webinars and training. Some very embarrassing things came flying across our screens. You learn a lot reading those messages when they pop-up on the presenters' screen, both personal and business related. Some even complaints from customers!
My advice to employees and vendors is to sign-out of IM before hosting a webinar. Otherwise, it just might destroy your credibility and possibly your career.5 -
Prologue
My dad has an acquaintance - let's call him Tom. Tom is an gynecologist, one of the best in Poznań, where I live. He's a great guy but absolutely can not into tech of any kind besides his iPhone and basic PC usage. For about a year now I've been doing small jobs for him - build a new PC for his office, fix printer, fix wifi, etc. He has made a big mistake few years ago by trusting a guy, let's call him Shitface, with crating him software for work. It's supposed to be pretty simple piece of code in which you can create and modify patient file, create prescription from drugs database and such things. This program is probably one of the worst pierces of code I've ever seen and Shitface should burn for that. Worse, this guy is pretentious asshole lacking even basic IT knowledge. His code is garbage and it's taking him few months to make small changes like text wrapping. But wait, there's more. Everything is hardcoded so every PC using this software must have installed user controls for which he doesn't have license and static IP address on network card.
Part 1
Tom asked me to build him a new PC that will be acting like a server for Shitface's program. He needs it in Kalisz (around 150 km from my place). I Agred (pun intended) and after Tom brought me his old computer I've bought parts and built a new one. I have also copied everything of value and everything took me around three hours.
Part 2
Everything was ready but Shitface's program. I didn't know much about it's configuration so when I've noticed that it's not working even on the old PC I got a bit worried. Nevertheless I started breaking everything I know about it and after next three hours I've got it somewhat working. Seeing that there's still some problems with database connection (from Windows' Event Viewer) I wrote quick SMS to Shitface asking what can be wrong. He replied that he won't be able to help me any way until Monday (day after deadline). I got pissed and very courteously asked him for source code because some of libraries used in this project has license that requires either purchase of commercial license or making code open source. He replied within few minutes that he'll be able to connect remotely within next 10 minutes. He was trying to make it work for the next hour but he succeeded. It was night before deadline so I wrapped everything up and went to bed thinking that it won't take me more than an hour to get this new PC up and running in the office. Boy was I wrong.
Also, curious about his code, I've checked source and he is using beautiful ponglish (mixed Polish and English) with mistakes he couldn't even bother to fix. For people from Poland, here's an example:
TerminarzeController.DeleteTerminarzShematyDlaLekarza
Part 3
So I drove to Kalisz and started working on making everything work. Almost everything was ready so after half an hour I was done. But I wanted to check twice if it's all good because driving so far second time would be a pain. So I started up Shitface's program, logged in, tried to open ANYTHING and... KABUM. UNHANDLED EXCEPTION. WTF. I checked trace and for fuck sake something was missing. Keep in mind that then I didn't know he's using some third party control for Windows Forms that needs to be installed on client PC. After next fifteen minutes of googling I've found a solution. I just had to install this third party software and everything will work. But... It had to be exactly this version and it was old. Very old. So old that producent already removed all traces of its existence from their web page and I couldn't find it anywhere. I tried installing never version and copying files from old PC but it didn't work. After few hours of searching for a solution I called Mr Shitface asking him for this control installation file. He told me that he has it but will be able to send it my way in the evening. Resigned I asked for this new PC to be left turned on and drove home. When he sent me necessary files I remotely installed them and everything started working correctly.
So, to sum it up. Searching for parts and building new PC, installing OS and all necessary software, updating everything and configuring it for Tom taste took me around what, 1/3 of time I spent on installing Mr Shitface's stupid program which Tom is not even happy with. Gotta say it was one of worst experiences I had in recent months. Hope I won't have to see this shit again.
Epilogue
Fortunately everything seems to work correctly. Tom hasn't called me yet with any problems. Mission accomplished. I wanna kill very specific someone. With. A. Spoon.1 -
So... my girlfriend has a very random work schedule. Sometimes she works 4 days a week sometimes only 1, sometimes only at the weekend sometimes not at all. If only there would be an app to track that... 🤔
She tried quite a few apps on the app store but they were shit/ugly/too complex..etc
Wait.. i’m a developer, i can do that.
So i made a dead simple calendar-like app in javascript+fuseopen.
She selected the colors, background, layout etc..
If she taps on a date it turns red indicating that is a workday, if a workday is tapped it turns back to normal color.
The main logic is:
Main:
If(AppHasSavedWorkdays){
//check if save is current month
LoadCalendarWithWorkdays();
}else{
CreateEmptyCalendarAndSave();
}
She likes it.
Cool, so let’s build this! She has an iphone and my mac is still in the service center so i can’t build🙁
But its okay, i have a mac at my office, we can build there, the only downside is that is 40min of travel.
We take the subway, go to the office, build the app, make a certificate, install to her phone, everything goes as planned.
Coming back we were lucky enough to catch the bus that goes in 30 min intervals, we only had to wait like a minute so life is good 😃
I enter the house, chill down on the bed, pull out my laptop to close the project when a FUCK ME!!!!
I completely forgot to implement a whole else branch on start!!!
Soo the app does nothing when is opened on january 1😂😂
I guess that’s why we have testers and qa.. 😃
8 -
Does anyone remember MUDs? Multi-User Dungeons — working on those in LPC was my first experience with real programming. Before that, I'd only made simple websites.
To get permission to program in one MUD, you had to prove that you knew the world, by reaching a certain level in the game. Death had consequences, with a level being lost, as well as risking loss of your items if someone looted you or your corpse was lost. This alone was hard enough to make most players give up. I played (and played wisely) to get there, being the first of my friends. It was hard work and fun.
After months of playing every day, finally, I was a wizard! Well, first, I had to convince someone else to take me as an apprentice, which was it's own challenge, because I was a 13 y/o girl. I ended up having to wait for an older male friend to get to the proper rank and get made a full wizard himself, because anyone else was reluctant (thinking that I'd just screw up or make them look bad), and no one was very happy about it. After some more weeks, I started programming my own content for the MUD, to share with others. It was a great opportunity to learn and express myself, seeing how creative programming could be.
I got called all kinds of names for asking questions and making mistakes, and I questioned why I even wanted to work with these people who hated my guts and didn't want to teach me anything, but I kept going. As I wasn't allowed to take computer classes in school, being able to do projects on my own like this was the only way to learn. I also became more stubborn, patient, and independent, which has always been necessary for this career.
Most importantly, I saw what could be done with programming, and was inspired to keep going with my own projects, no matter how much hate that I got for it. I went on to work on more games and software, often on my own. I always explore new technology, ignore the haters, and forge ahead with my own vision.4 -
Dev checked in code (I suspect purposely not inviting me on the code review invite) saying he "fixed" the authentication bug in the web service.
Um no, like I told you last week, the authentication error is because the load balancer wasn't passing the user's authentication to IIS.
If I didn't overhear him telling a user "Still getting the error? I don't know, we might have to re-write that service", he might have gotten away with it.
Me: "Wait, that doesn't sound right. If I hit the server directly, authentication works. Its an issue with the load balancer, not the service"
Dev: "Admin said the load balancer is fine and it has to be the service."
Me: "I don't buy it. IIS is returning the authentication error, not the service."
Dev: "I added exception handling and nothing is being logged. Must be something in the service configuration."
Me: "No, IIS performs the authentication, not the service. I explained that last week, remember?"
Dev: "Oh yea. What changes do we need to make to the service?"
<my blood pressure starts to spike>
Me: "None. Give me a sec.."
<we have other apps on the same server farm that work just fine, so I re-configure the service pool settings to match theirs>
Me: "See, now going through the load balancer, the service works fine. For some reason, the admin had our service set up differently."
Dev: "OK, I'll let the users know the service is fixed."
Me: "Service was never broke and I'm not leaving it in its current state. In the morning I'll talk to the admin and see what he can do to fix."
6 -
I have been gone a while. Sorry. Workplace no longer allows phones on the lab and I work exclusively in the lab. Anyway here is a thing that pissed me off:
Systems Engineer (SE) 1 : 😐 So we have this file from the customer.
Me: 😑 Neat.
SE1: 😐 It passes on our system.
Me: 😑 *see prior*
Inner Me (IM): 🙄 is it taught in systems engineer school to talk one sentence at a time? It sounds exhausting.
SE1: but when we test it on your system, it fails. And we share the same algorithms.
Me: 😮 neat.
IM: 😮neat, 😥 wait what the fuck?
Me: 😎 I will totally look into that . . .
IM: 😨 . . . Thing that is absolutely not supposed to happen.
*Le me tracking down the thing and fixing it. Total work time 30 hours*
Me: 😃 So I found the problem and fixed it. All that needs to happen is for review board to approve the issue ticket.
SE1: 😀 cool. What was the problem?
Me: 😌 simple. See, if the user kicked off a rerun of the algorithm, we took your inputs, processed them, and put them in the algorithm. However, we erroneously subtracted 1 twice, where you only subtract 1 once.
SE1: 🙂 makes sense to me, since an erroneous minus 1 only effects 0.0001% of cases.
*le into review board*
Me: 😐 . . . so in conclusion this only happens in 0.0001% of cases. It has never affected a field test and if this user had followed the user training this would never have been revealed.
SE2: 🤨 So you're saying this has been in the software for how long?
Me: 😐 6 years. Literally the lifespan of this product.
SE2: 🤨 How do you know it's not fielded?
Me: 😐 It is fielded.
SE2: 🤨 how do you know that this problem hasn't been seen in the field?
Me: 😐 it hasn't been seen in 6 years?
IM: 😡 see literally all of the goddamn words I have said this entire fucking meeting!!!
SE2: 😐 I would like to see an analysis of this to see if it is getting sent to the final files.
Me: 🙄 it is if they rerun the algorithm from our product. It's a total rerun, output included. It's just never been a problem til this one super edge case that should have been thrown out anyway.
SE2: 🤨 I would still like to have SE3 run an analysis.
Me: 🙄 k.
IM: 😡 FUUUUUUUUUCK YOOOOOU
*SE3 run analysis*
SE3: 😐 getting the same results that Me is seeing.
Me: 😒 see? I do my due diligence.
SE2: 😐 Can you run that analysis on this file again that is somehow different, plus these 5 unrelated files?
SE3: 😎 sure. What's your program's account so I can bill it?
IM: 😍 did you ever knooooow that your my heeeerooooooo.
*SE3 runs analysis*
SE3: 😐 only the case that was broken is breaking.
SE2: 😐 Good.
IM: 🤬🤬🤬🤐 . . . 🤯WHY!?!?
Me: 😠 Why?
SE2: 😑 Because it confirms my thoughts. Me, I am inviting you to this algorithm meeting we have.
Me/IM: 😑/😡 what . . . the fuck?
*in algorithm meeting*
Me: 😑 *recaps all of the above* we subtract 1 one too many times from a number that spans from 10000 to -10000.
Software people/my boss/SE1/SE3: 🤔 makes sense.
SE2:🤨 I have slides that have an analysis of what Me just said. They will only take an hour to get through.
Me: 😑 that's cool but you need to give me your program's account number, because this has been fixed in our baseline for a week and at this point you're the only program that still cares. Actually I need the account to charge for the last couple times you interrupted me for some bullshit.
*we are let go.*
And this is how I spent 40+ useless hours against a program that is currently overrunning for no reason 🤣🤣🤣
Moral: never involve math guys in arithmetic situations. And if you ever feel like you're wasting your time, at least waste someone else's money.10 -
A nice word to all developers who say stuff like "I know I write bad code, but what does it matter.":
Please try to think in a logical way about what this part you are about to write has to do. It is much more difficult to rewrite code, the longer you wait after you started to code.
Bad code can have big impacts on different levels.
For example financially: Bad coding style or program structure can lead to thousands or much more in losses because of nasty bugs, bad performance, expandability or maintainability.
Think about quality over quantity.
A little example: I had to work together with other coders to meet a fucking tight deadline. The last day we coded like crazy and these dudes started to apply styling changes (CSS) directly as inline styles to the HTML code, instead of taking a few minutes more to find where in the CSS files they had to make the changes.
At the end of the deadline we had more stylingbugs than before. It took us another whopping 3 hours to fix what they had done.
So next time you code: Thinking before coding is mostly faster than just straightahead coding and fixing at the end. 😉2 -
#First
I joined a start up and worked after college hours as an intern over there. I would usually bunk my college and go to my internship. I had limited knowledge at that moment. I worked very hard over there because I wanted (still want) to gain practical knowledge.
Almost a month into it and I had to take a break from it because I had college work. Rejoined the same start up during my vacations. Worked quite a lot and learnt quite some stuff. I continued the internship after my one month vacation for another month once my college started. All this while I was not being paid, not even a little bit of allowance. But that didn't matter because I wanted to learn
Fast forward six months to November 2016. I have been placed in an MNC through my college placements. One day I get a call from this start up owner(we had become good acquaintances by then) if I was willing to work as a paid intern while I was working on the projects that the company landed (so I guess as a free-lancer) and as an unpaid intern while I was working on the company projects. I agreed. Jump to December. I have joined and started working on an Android project of this very big company.
At time point, I should inform you'll that I'm not very good at Android and that the company size is very small. Company owner plus the tech lead in one city (where I'm from) and another two full time employees in another city. Out of which one quit to start his own company apparently. The start up would primarily employ interns and provide exposure to them while getting their work done.
Back to the story. The tech lead vaguely assigns everyone their work. Everyone over here includes new interns and previous interns like me who will get paid some amount. 3-4 days into the project, the tech lead quits. The tech lead and the company owner call three of us and says that one of you will have to be a project manager for this project. And then both of them and 2 of my colleagues look at me. And I don't know what to say. I hesitate initially because it's too much responsibility but agree to it finally.
The next day I come to office and read about the project thoroughly and catch up with my colleagues about the progress. The entire day I'm panicking about what I'm going to do. In the evening, my boss tells me that we have to go for a meeting with the client for whom we are doing this project. At this moment, the shit out of me has been scared. Mostly because I don't know what the fuck am I going to do over there apart from being stupid and asking dumb questions. So we reach the client's office and wait for him. The entire time I'm thinking to myself that I'm going to drown this company by opening my mouth. Surprisingly, all the questions that I asked seemed legitimate and I asked a lot of questions. And so I didn't drown the company after all...phew!
It's been more than a week. And holy fuck! What a pain it is to manage people. Half of my time is spent on updating excel sheet about their progress, where are they stuck and what is needed. And the other half about thinking what the fuck am I doing or how am I gonna do it.
So to sum up, intern-turned-freelancer-turned-project manager who has no idea what the fuck is going on. Seems pretty crazy, don't you think.6 -
After returning back from the company we were purchasing a new phone system (hardware+software, $100K+, kind of a big deal)
VP: “I need the new phone system software integration for our CRM by next week. I need to demo the system for the other VPs”
Me: “No problem. Were you able to get their API like I asked?”
VP: “Salesman didn’t know for sure what that was, but he said all the developer software documentation is on their site.”
Me: “Did he give you a URL? Their main site is all marketing mumbo-jumbo. I assume there is another one specific for developers.”
VP: “Yea, he might have said something, but I don’t understand why you need it. The salesman said the integration would be seamless. He showed me several demos.”
Me: “No, I mean I need to know, is the API a full client install? a simple dll? is this going to be a web service integration? How will I know what to program against?”
VP: “I think I heard him say something about COM? Does that sound like an API?”
Me: “It’s a start. Did he provide you anything, a disk, a flash drive, anything with the software?”
VP: “No, only thing he told me was our CRM integration would be seamless and our development team would have no problems.”
Me: “OK..OK…I get it…he’s a salesman. Is there an 1-800 number I can call? A technical support email address? Anyone technical I can reach out to?”
VP: “Probably, but I don’t understand what the problem is. I need the CRM integrated by next week. I gave the other VPs a promise we would get it done. I do not break promises.”
Me: “Wait…when are we installing the new system?”
VP: “Well, the purchase order will be cut at the end of the month’s billing cycle, the company has about a two month turnaround time to deliver and install the hardware, so maybe 3 months from now? Are you going to be able to have the integration ready for next week?”
Me: “If we won’t see any of the hardware for 3 months, what exactly am I integrating with?”
VP: “That API you wanted or whatever it is. COM…yea, it’s COM. I was told the integration would be seamless and our developers would have no problem. I don’t understand why you can’t simply write the code to make it work. Getting the hardware installed is going to be the hardest part.”
Me: “OK, so I have no documentation, we have no hardware, no software, and no idea what this ‘seamless integration’ means. I’m afraid there isn’t anything I can do right now. ”
VP: “Fine!...I’ll just have to tell the other VPs you were not able to execute the seamless integration with the CRM.”
Which he did. When the hardware+software was finally installed, they hired consultants (because I “failed”). I think the bill was in the $50K range to perform the ‘integration’ which consisted of Excel spreadsheets (no kidding). When approached with the primary CRM integration, the team needed our API documentation, a year’s development time and $300K. I was pissed off enough, and I had the API documentation, I was able to get the basic CRM integration within 3 days. When an agent receives a call, I look up the # in our database, auto-fill the form with the customer info, etc. Easy stuff when you have the documentation.
The basics worked and the VP was congratulated by ‘saving’ the company $300K. May or may not have been bonuses involved, rumors still out on that one, but I didn't see em'. Later my manager told me the VP was really ticked that I performed the integration ‘behind his back’, but because it was a success, he couldn’t fire me.10 -
What an absolute fucking disaster of a day. Strap in, folks; it's time for a bumpy ride!
I got a whole hour of work done today. The first hour of my morning because I went to work a bit early. Then people started complaining about Jenkins jobs failing on that one Jenkins server our team has been wanting to decom for two years but management won't let us force people to move to new servers. It's a single server with over four thousand projects, some of which run massive data processing jobs that last DAYS. The server was originally set up by people who have since quit, of course, and left it behind for my team to adopt with zero documentation.
Anyway, the 500GB disk is 100% full. The memory (all 64GB of it) is fully consumed by stuck jobs. We can't track down large old files to delete because du chokes on the workspace folder with thousands of subfolders with no Ram to spare. We decide to basically take a hacksaw to it, deleting the workspace for every job not currently in progress. This of course fucked up some really poorly-designed pipelines that relied on workspaces persisting between jobs, so we had to deal with complaints about that as well.
So we get the Jenkins server up and running again just in time for AWS to have a major incident affecting EC2 instance provisioning in our primary region. People keep bugging me to fix it, I keep telling them that it's Amazon's problem to solve, they wait a few minutes and ask me to fix it again. Emails flying back and forth until that was done.
Lunch time already. But the fun isn't over yet!
I get back to my desk to find out that new hires or people who got new Mac laptops recently can't even install our toolchain, because management has started handing out M1 Macs without telling us and all our tools are compiled solely for x86_64. That took some troubleshooting to even figure out what the problem was because the only error people got from homebrew was that the formula was empty when it clearly wasn't.
After figuring out that problem (but not fully solving it yet), one team starts complaining to us about a Github problem because we manage the github org. Except it's not a github problem and I already knew this because they are a Problem Team that uses some technical authoring software with Git integration but they only have even the barest understanding of what Git actually does. Turns out it's a Git problem. An update for Git was pushed out recently that patches a big bad vulnerability and the way it was patched causes problems because they're using Git wrong (multiple users accessing the same local repo on a samba share). It's a huge vulnerability so my entire conversation with them went sort of like:
"Please don't."
"We have to."
"Fine, here's a workaround, this will allow arbitrary code execution by anyone with physical or virtual access to this computer that you have sitting in an unlocked office somewhere."
"How do I run a Git command I don't use Git."
So that dealt with, I start taking a look at our toolchain, trying to figure out if I can easily just cross-compile it to arm64 for the M1 macbooks or if it will be a more involved fix. And I find all kinds of horrendous shit left behind by the people who wrote the tools that, naturally, they left for us to adopt when they quit over a year ago. I'm talking entire functions in a tool used by hundreds of people that were put in as a joke, poorly documented functions I am still trying to puzzle out, and exactly zero comments in the code and abbreviated function names like "gars", "snh", and "jgajawwawstai".
While I'm looking into that, the person from our team who is responsible for incident communication finally gets the AWS EC2 provisioning issue reported to IT Operations, who sent out an alert to affected users that should have gone out hours earlier.
Meanwhile, according to the health dashboard in AWS, the issue had already been resolved three hours before the communication went out and the ticket remains open at this moment, as far as I know.5 -
Teaching new recruit some SQL (even though hes supposed to fucking know SQL and have multiple years experience but I was a contractor and idgaf, not messing up my money. Just fucking annoying to have an idiot around you all the time).
Me: Okay, so sys tables, so this one is for jobs yeah?
Him: Yeah
Me: Okay, so in this table, its obviously not one row per job per step cos you have multiple rows for the same job and step. Also, there is a datetime field, so what is it showing?
Him: Hmmmmm..... (after some time, back and forth we get to the answer).... history table
Me: Cooooooool, okay, so, lets say, I have a job with 5 steps. If i run it once, how many rows will be in this table?
Him: 5 rows.
Me: Correct, so if I were to have run this same job, 10 times, how many rows get inserted into the table?
Him: (Now...you have to understand, how long this thought process was, im trying to fill the gap with words but really, he was like, having a flashback or something...I kept quiet but silently wanting him to say anything....then he looks me dead in the eyes).... 10!
Me: Motherfucker what!?!? 10 What? If 1 time == 5, what does 10 times ==?
Him: Hmmmmmmmmm.... (yes...we are doing this whole flashback montage all over again)....... Ohhhhh, 1!
Me: .....Stop, think, its a history table. It holds history, for when every step is run for a job, why would it be only one row?
Him: OMG, I know what a history table is!!!!
Me: (Pissed off cos I don't take disrespect calmly). Fine, genius, answer, go!
Him: (LONGER WAIT THAN LAST TIME!!!!)....is it not 10?
Me: I swear, I'm gonna kill you one of these days.
Him: *chuckle*
Me: No...seriously....
TOOK 20-30 MINUTES FOR HIM TO SAY 50!!!!!!
And even then, I swear he didn't understand why. Serious, he was a special breed, had a manager that was a super tard and when I worked here, the spirit of that manager possessed this idiot, the CIO and his little right hand bitch zzzzzzzzzzzzzzzzz.
If there was ever a time I was willing to catch a case at work, it was there.
Bonus: Serious, it got to the point I had to come in and tell this idiot that he can only ask me questions today if he calls me by my name...and my name has changed today...and no, you can't ask me for it cos you need my name to ask me questions.....FUCK OFF kkthxbai.5 -
Recap: https://www.devrant.io/rants/878300
I was out Thursday at the Hospital. I'm what the doctors would call "Ill as fuck"
So, Friday I’m back in the office to the usual: "How was that appointment?"
I know people mean well when they ask this. So, I do the polite thing and tell them it went as well as it could.
Realistically it does't matter how well it went... They haven't cured Crohn's because I showed up to the appointment. They know I'm fucked already.
But, push it down, add it to the future aneurism.
I had to go through the usual resignation meetings with managers:
"We"re fucked now you're going"
"yep"
"we need to get a handle on how fucked"
"already done that for you, here"s a trello board, very fucked."
"we need to put a plan together to drop all the junior devs in the shit with the work you’ve been doing"
"You need about 4 devs, please refer to the previous trello board for your plan"
Meanwhile, me and Morpheus are in constant communication because all of this is like a Shakespearean comedy.
So, I overhear a conversation between a Junior Dev and the Solution Architect.
[SA] took over the project because he knows better than two tried and tested senior devs -_- (fuckwit).
JD: "It took me one and a half days to build it out"
SA: "Yeah, it must have taken me twice as long... It must be a problem with the project, you should just be able to check it out and run it."
JD: "I know, it has to be wrong"
All of this is about Morpheus' work of art, of an Ionic 3 hybrid app.
I fumed quietly at my desk because I've been ordered by the Stazi to be hands off.
Since Morpheus and me were pulled from the project [JD] and [JD2] were dropped into it to get it over the line.
It"s unfortunate and I was clear and honest with my advice to them: I personally would not take over the project because I"d be way out of my depth... Oh, and the App works, so uh, there's no work to do.
They have been constantly at our desks. Asking fuckdiculous questions about how to perform basic tasks. So they can get Morpheus" frigging masterpiece to the user.
It"s like watching that touch up of jesus that got borked by an amateur. Shit I have google, it's like watching this happen: http://ti.me/NnNSAb
[JD] came to me Friday evening.
"I can’t get this to build to iOS or install on [Test Analyst]'s phone."
Me: "No worries brother, where are you stuck right now?"
[JD] describes the first steps with clear indication he hasn't googled his problem.
Life lesson: http://lmgtfy.com/?q=lmgtfy
Que an hour of me showing [JD] how to build an Ion3 project for iOS. Fuck it, your man's in a bind and he"s asked politely for help. I can show him quicker than he can read 3 sets of docos.
I took him through 'ionic cordova build ios', the archive and release processes in XCode 9, then the apk bundling process for droid. Finally we have an MAM so the upload process for that too.
All the while cleaning up his AppIDs, Profiles, deployment attempts.
Damn they were a mess.
I did this with a smile on my face, not because I could say "I told you so"... But. because when any developer asks you how to do something. If you know how to do it, you should always be happy to learn them some new tricks!
Dude's alright, he's been dropped in the shit. Now I know how badly so I'll help him learn things that are useful to his role, but aren't project specific.
As a plausi-senior dev (I'll tell you about that later); it's my job to make sure my team have what they need to go home smiling!
I’m not a hateful fucker, the guy asked me an honest question so I am happy to give him the honest answer.
I took him through it a few times and explained a few best practices. Most were how to do his AppID and ProvProfile set up. Good lad, took it all on board.
However! In his frustration, he pointed the finger at Morpheus' "David" (ref: Michelangelo).
He miraculously morphed into a shiny colourful parrot and fed me SA's line:
"you should just be able to build from a clean clone"
My response was calm and clear:
"You can, it took me 20 minutes on Thursday evening. I was bored and curios, so I wanted to validate Morpheus' work. Here it is on my iOS device and my Android device. It would have taken me 5 if my laptop wasn’t so horrifically out of date."
I validated Morpheus' work so I have evidence, I trust that brilliant bastard.
I just need to be able to prove it's good.
[JD] took this on board.
Maybe listening to two tried and trusted senior devs is better than listening to a headstrong Solution Architect.
When JD left for the weekend I was working a late one (https://www.devrant.io/rants/874765).
His sign off was beautiful.
"I think I can happily admit defeat on this one, it can wait until Monday."
To which I replied: "no worries brother, if you need a hand give me a shout."
Rule 1: Don't be a cunt.
Rule 2: If someone needs help and you can give it: Give it!
Rule 3: Don't interrupt James' cigarette time.
Rule 4: goto Rule 3.rant day 3 jct resigns crohns resignation solution architect wk71 invisible illness fuckwit illness junior developer4 -
So you think it's bad when your friends, family, strangers and others ask you to fix their phone or computer is bad when they hear you're a programmer, IT or good with computers?
You think it's bad when they ask you whether you're hacking when they see code or terminal on your screen?
You think it's bad when they ask you to fix a cracked phone screen because you work with computers?
Well, think again because today my teammate was asked to fix a vending machine by X from another department because, according to X the vending was not accepting X's other dollar bill. The first dollar bill was accepted so why wouldn't it accept the 2nd one? Because the 🤬 dollar bill is crumpled. That's it.
What wows me is what made X think this is an IT issue.
According to X.... "because it has power, lights and touch screen so IT can fix it That's what you guys do, right? You can fix anything".
Me: wait!?, what?, uhhh..., are you serious? Wtf? Why? Grrrr4 -
Ok so a very quick background: I didn't get a job until I needed one after my phone broke and I didn't have the money to buy another one. (I'm a student still for those who don't know lol.)
>> Phone randomly breaks.
>> Don't have the money for a new one
>> Searches for low skill jobs (ie cashier) that would work with me in terms of how many hours I work and whenever those hours are.
>> Apply to like 15 (not even exaggerating either lol) jobs
>> Wait for responses
>> One day goes by. Nothing
>> Two days go by. Nothing
>> Three days go by. Nothing
>> Fourth day rolls around and I get a call about one. I answer, tell him I'm available starting that Monday.
>> (Keep in mind I'm on an old temporary phone)
>> Next day I buy a new phone (didn't have to pay anything up front aside from the taxes on it, as it's on a payment plan)
>> Reset old phone after usage
>> Monday rolls around and I drive to the location of the job, and walk in the door asking for x.
>> "I'm sorry sir, who? We don't have anyone here by that name."
>> I panic and hop in my car, and try to find the address of the store I applied to. I find out it's different than where I went.
>> Start driving there and call that phone number. I ask to speak to x.
>> "I'm sorry sir, there's nobody here by that name."
>> Call literally every other location in the city and ask for x, but nothing.
>> Since I'm already on the way, I drive to the location of the store I had applied to. Whenever I get there, the manager spends half an hour on the phone trying to figure out where I belong. Nothing.
>> By this point, it's well over an hour past whenever I was supposed to show up, so I gave up because I figured they probably wouldn't have hired me anyways.
>> I get home determined af to figure out who the hell called me.
>> I remembered that Verizon has call logs you can look at online.
>> I go back through it and find the number. Google it.
Here's where the story gets a lil funny now.
>> Number shows up for a store that I applied to who's name sounds a LOT like the first store.
>> Called them and explained what happened, and told them I'd be there asap if they still wanted me.
>> That was like 6 months ago and I'm still here lol8 -
This fucking idiot at work needs to use the pre release version of the iOS app for a training programme, and I swear I have tried my best to best to help him get the app on his phone.
I use Fabric and I chose because of how easy it is to install on a persons phone, but this is the situation so far. Also he lives a couple cities away so I can't do it myself.
I had to waste time waiting for him to call me, beforehand I sent the email, maybe 5 minutes before his call and told him that he needs to find the email, he says oh okay alright well I'll contact you if I have any problems.
I waited a day and sent a follow-up email on what the subject, from email, and even what the email looks like with screenshots.
No response for 3 weeks, and I bring it up in a meeting that I need to help him again.
So it's a literal fucking repeat of the first step, wait for his call, this time close to the end of my work day and he's 30 minutes late for his own fucking schedule, I thought whatever so I say the exact same thing BUT expecting him to get it out of the way while I'm on the phone...
Waited two days and sent him an email today and since I forgot to mention it, I've told him that this is to REGISTER to get the app. Guess what his reply was.
Sorry I can't get it on my phone!
He can't get what a fucking email to open on his phone and follow instructions a small bipedal animal could figure out?
It's literally follow the fucking icon moving they have gifs showing exactly what to click...
So tomorrow I have to somehow not blow up and get this app on his phone, honestly I understand some people can have issues with technical things but I got a guy at work that has trouble with his computer all the time to follow my same instructions without me needing to say more than I'll send an email all you need to do is follow the instructions, he actually enjoyed going through it.
...I swear this guy is just not even bothering, and I made sure I sent it to the right email, also second call he told me he found the email..4 -
Before starting a job at company CUNT, we had an interview at which I told them I do not want to work on legacy monolithic codebases. We had a nice agreement and they offered me to work as a back-end with one of their projects. I was super excited to start. CUNT was very culty, always talks about how carrying for employees they are and always keep promises on their end of the table.
A week has passed, the codebase is superb legacy shit hole, no fucking standards, monolithic as fuck (BE and FE projects live in one project folder with tons of depreciated tools - there are no docs for them. That’s how old they are). They even have secret folder in their project with YOU GUESSED IT - secret keys.
Told CTO today, that I want to switch projects, because this was not the thing I signed up for and remember THEY ALWAYS CARE ABOUT THEIR EMPLOYEES AND PROMISES MADE. He basically told me, that project owners (other company) will not understand this culturally and I can either wait it out and possibly get my hands on a better project or fuck off right now.
Also, I was told, that my judgment was garbage worth and I should work longer with project “shit hole” to fully understand it.
Such a fucking salesman.
Anyways, I told that this situation is not culturally appropriate for me either as they gave me a sort of promise and I wont leave the company as I just switched jobs and cannot afford to do that again. I’ll hopefully get another position in another project soon.
WTF IS WORNG WITH PEOPLE8 -
I’ve started the process of setting up the new network at work. We got a 1Gbit fibre connection.
Plan was simple, move all cables from old switch to new switch. I wish it was that easy.
The imbecile of an IT Guy at work has setup everything so complex and unnecessary stupid that I’m baffled.
We got 5 older MacPros, all running MacOS Server, but they only have one service running on them.
Then we got 2x xserve raid where there’s mounted some external NAS enclosures and another mac. Both xserve raid has to be running and connected to the main macpro who’s combining all this to a few different volumes.
Everything got a static public IP (we got a /24 block), even the workstations. Only thing that doesn’t get one ip pr machine is the guest network.
The firewall is basically set to have all ports open, allowing for easy sniffing of what services we’re running.
The “dmz” is just a /29 of our ip range, no firewall rules so the servers in the dmz can access everything in our network.
Back to the xserve, it’s accessible from the outside so employees can work from home, even though no one does it. I asked our IT guy why he hadn’t setup a VPN, his explanation was first that he didn’t manage to set it up, then he said vpn is something hackers use to hide who they are.
I’m baffled by this imbecile of an IT guy, one problem is he only works there 25% of the time because of some health issues. So when one of the NAS enclosures didn’t mount after a power outage, he wasn’t at work, and took the whole day to reply to my messages about logins to the xserve.
I can’t wait till I get my order from fs.com with new patching equipment and tonnes of cables, and once I can merge all storage devices into one large SAN. It’ll be such a good work experience.
7 -
I'm a DevOps engineer. It's my job to understand why this type of shit is broken, and when I finally figure it out, I get so mad at bullish players like AWS.
It's simple. Install Python3 from apt.
`apt-get update && apt-get install -y python3-dev`
I've done this thousands of times, and it just works.
Docker? Yup.
AWS AMI? Yup.
Automation? Nope.
WTF? Let's waste 2.5 hours and figure out why this morning.
In docker: `apt-cache policy python3-dev` shows us:
python3-dev:
http://archive.ubuntu.com/ubuntu focal/main amd64 Packages
But in AWS instance, we see we're reading from "http://us-east-1.ec2.archive.ubuntu.com/... focal/main" instead!
Ah, but why does it fail? AWS is just using a mirror, right? Not quite.
When the automation script is running, it's beating AWS to the apt mirror update! My instance, running on AWS is trying to access the same archive.ubuntu.com that the Docker container tried to use. "python3-dev" was not a candidate for installation! WTF Amazon? Shouldn't that just work, even if I'm not using your mirror?
So I try again, and again, and again. It works, on average, 1 out of every 5 times. I'm assuming this means we're seeing some strange shit configuration between EC2 racks where some are configured to redirect archive.ubuntu.com to the ec2 mirror, and others are configured to block. I haven't dug this far into the issue yet, because by the time I can SSH into the machine after automation, the apt list has already received it's blessed update from EC2.
Now I have to build a graceful delay into my automation while I wait for AWS to mangle, I mean "fix up" my apt sources list to their whim.
After completely blowing my allotted time on this task, I just shipped a "sleep" statement in my code. I feel so dirty. I'm going to go brew some more coffee to be okay with my life. Then figure out a proper wait statement.7 -
How can business majors be so gullible?! Who the fuck poisoned their minds with the app hype ?!!
Seriously my tears are 90% from laughter and 10% shame for humanity.
Friend: "Dude I'd like to consult with you the idea of an app...etc"
Me: "Sounds nice, got a business plan?"
Friend: "Yes, but well...you see... development has already started"
Me: "oh cool, how's that going?"
Friend: "well I already made an upfront payment of 2K dollars"
Me: "sounds kind of excessive for the amount of work...wait did you said upfront payment?"
Friend: "yeah, we calculated 30k total"
😐
Me:"umm...that software must be...special...? Can I see it?"
Friend: "that's the thing, they haven't delivered"
Me: " did they give you mockups? A development plan? Demo? Anything?"
Friend: "umm no"
Me: "a god damn receipt?"
Friend shows me a piece of paper with the name of the guy and 2K written on it.
Friend: "he says he's been busy, I wanted your advice"
I blame Eduardo Saverin's fate and my friend's on college's failure to teach "real world assholes 101"
7 -
Navy story time again. Lots of blabbering, you have been warned.
I haven't written for some time, due to paperwork bullshit that can be easily automated by even the most shitty database... no, scratch that, the simplest Excel spreadsheet with basic formulae. But I digress.
On my quest to justify myself being unproductive, I'll share with you a small story I omitted from this post:
https://devrant.com/rants/2099473/...
The lunacy of the man involved, while certainly entertaining after a few years (and nautical miles) away, is certainly disturbing and most certainly true. (Late disclaimer: ALL my rants are not made-up. This is shit that truly happened before my very eyes, and while I was sober.)
After I set up some cute little stuff to try and get the CO interested, in order to give me permission (and a cut from the budget) to proceed in restructuring and upgrading the ship's net, I tried a more direct approach: connecting and setting up his work laptop with the ship's GPS, radar and AIS receptor via ethernet, and installing an ECS system so that he could monitor the ship's position, movement and targets from his office (the fat fuck couldn't be bothered to go up one deck). A day later he called me to his office.
Expecting some kind of... praise? Permission? Complaints on the font style? whatever, I entered. Oh, how I wish I had not.
I was barraged for TWO FUCKING HOURS by the CO, complaining that I was taking care of the net and PCs and neglecting the Navigation department (I was not, automation is my friend combating moronic paperwork). I would have thought it as just another failed attempt, but after TWO MINUTES from the end of the barrage:
CO:... so, my personal laptop is kind of slow, you think you can do anything about it?
ME: ....................
I.
SHIT.
YOU.
NOT.
What was rushing through my mind was somewhere between bipolar and multiple personality disorder, with the third option of Alzheimer's disease. I half-expected some Candid Camera crew to pop out, but no.
CO: So? Can you speed up my laptop?
ME: ............................... I don't know, sir, I have paperwork to take care of.
CO: That can wait, surely you can do something about it, you know computers.
ME: [really long pause, blood pressure rising] I'll look into it in a moment, sir.
And I never did. I told of the incident to the ship's doctor, and he expressed great worry over this, but in the end, nothing was done.
My sympathies to everyone who has to interact with non-technicians of the homo sapiens species (ironically, homo sapiens means "wise man" in latin... the irony).3 -
[long]
When searching for internship via school I found this small startup with this cute project of building a teaching tool for programming. There were back then 2 programmers: the founder and the co-founder.
Then like 1 week before the internship started, the co-founder had a burnout and had to get off the project, while the company was so low on budget the founder, aka my new b0ss, had to work separate jobs to keep the company alive. (quite metal tbh)
It's funny because I'm a junior developer, 100%. I've been coding as a hobby for around 8 years now but I've never worked in a big company before. (No exception to this workplace either)
First project I get: rewrite the compiler. The Python compiler.
"But wait, why not just embed a real compiler from the first case?"
-nanananana it's never simple, as you probably know from your own projects.
The new compiler, as compared to existing embedded compiler solutions out there, needed these prime features:
- Walk through the code (debugger style), but programmatically.
- Show custom exceptions (ex: "A colon is needed at the end of an if-statement" instead of "Syntax error line 3")
- Have a "Did-you-mean this variable?" error for usage of unassigned variables.
- Be able to be embedded in Unity's WebGL build target
All for the use case of being a friendly compiler.
The last dash in the list is actually the biggest bottleneck which excluded all existing open-source projects (i could find). Compliant with WebAssembly I can't use threads among other things, IL2CPP has lots of restrictions, Unity has some as well...
Oh and it should of course be built using test-driven development.
"Good luck!" - said the founder, first day of work as she then traveled to USA for **3 weeks**, leaving me solo with the to-be-made codebase and humongous list of requirements.
---
I just finished the 6th week of internship, boss has been at "HQ" for 3 weeks now, and I just hit the biggest milestone yet for this project.
Yes I've been succeeding! This project has gone so well, and I'm surprising myself how much code I've been pumping out during these weeks.
I'm up now at almost 40'000 lines of source and 30'000 lines of code. ‼
( Biggest project I've ever worked on previously was at 8'000 lines of code )
The milestone (that I finished today) was for loops! As been trying to showcase in the GIF.
---
It's such a giant project and I can honestly say I've done some good work here. Self-five. Over-performing is a thing.
The things that makes me shiver though is that most that use this application will never know the intricates of it's insides, and the brain work put into it.
The project is probably over-engineered. A lot. Having a home-made compiler gives us a lot of flexibility for our product as we're trying to make more of a "pedagogic IDE". But no matter that I reinvented the wheel for the 105Gth time, it's still the most fun I've had with a project to date.
---
Also btw if anyone wants to see source code, please give me good reasons as I'm actively trying to convince my boss to make the compiler open-source.
Cheers!
4
