Details
-
Aboutprofessional nerd
-
Skillsobjective-c, swift, ios, xcode, node.js, Angular, bluemix
Joined devRant on 9/19/2016
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
-
Me: *opens existing shared telegram channel*
Me: Hello developers of SDK xxx, we have another issue. We've gotten 2 reports from users of problem X occurring while using the SDK to contact your servers. It happens here, then this happens, using version Y. Code is the same open source app + library as before if you need to check it, same 2 files as before. Here are some screen shots of the error in the app too, just in case
*3 days later*
Dev: yes this does indeed seem to be a problem. Can you provide us more info to debug this effectively?
Me: ..... I sure can ..... if you let me know what it is you need ..... because you currently have access to absolutely everything already .... and i've been waiting 3 days, some specifics of what you need would be great!!!2 -
~2 years ago:
Me: Managed to figure out how to port that library. Just need designs and then we can build feature X. I've tested it in ugly developer-y screens. It works fully
Boss: Thats awesome, saw the video, looks great. This is a really important feature, thanks for looking into this
~1.5 years ago:
Me: Ok i've started working on the designs, just FYI we don't have designs for feature X
Boss: Ok, must have slipped, noted
~1 year ago:
Me: I've seen more posts about users wanting apps with features X in it. Still don't have designs, we working on that?
Boss: I'll check with design
~3 Months ago:
Boss: Ok were going to have to get serious about pulling features out and reducing MVP so we can get this out there. I think feature A, D, Y and X have to be dropped for v1. Theres too much left to do on them
Me: sure
~1 week ago:
Boss: We need to start getting ready for xxxxx. Can you do me a favour and start writing up some developer docs etc, kind of like this one we did for this other project
This morning opening my emails from last night:
Boss: I've reviewed the doc, looks good, only minor things need tweaking. Let me ask you something though, you said feature X was pulled out and its "pending design work". Its not only pending design work is it? Is it that far along?
==========
What I actually replied:
Yes ... i've sent you videos of it functional in the past, and discussed this ... more than once. Just design ... and some testing of the new designs obviously
==========
What that meant:
Yes. May god have mercy on your soul if you reply anything even remotely close to "oh I had no idea, lets revisit adding this to v1". I will not be held accountable for my actions1 -
Designer reporting a UI/Design related bug:
I noticed the wrong colour is being used on screen X. It should be xxxxx. Its imperative that we fix this, as it destroys the entire design motif. Our colour scheme draws influence from the ancient Mayans. They were relentless in their pursuit of excellence, whether it be their temples, their sophisticated writing system, their complex calendars, or their advanced mathematics.They sought immortality through their work, as do we with ours. Users will become lost in our onboarding unless we harmonise the flow, the slightest deviation could be catastrophic. Please fix this as priority 1, to avoid running the balance of the app
Designer reporting a technical bug:
Oh yeah, app crashed last week. Not sure what I was doing, maybe look into that7 -
Designer: Need to file a bug, I'm not getting an option to login with FaceID
Me: Oh weird bug. Is it setup on the phone you are testing with?
Designer: yes, use it in all other apps
Me: Did you get an error during onboarding on the FaceID screen?
Designer: nope no error
Me: ..... hhhmm, can you show me your settings?
Me: ... eh, says you have FaceID disabled for this app ... did you click "No" to FaceID during onboarding?
Designer: Yes, to test edge cases
Me: ................ ok ........ if you setup the app and told it to not allow FaceID to login ......... you won't get the ability to use FaceID to login .......... like .... by design .... on purpose ...... cause .... you told it to do that
Designer: No no, it needs to have a setting on the login screen to allow me to turn that back on incase I forget my passcode
Me: the fuck it does. Yeah we can't have anything on the login page that says, without authorization, change my settings
*Deep breath*
Me: Remember we had this conversation previously, where you didn't want the user to create a passcode during onboarding as it was too much friction, and wanted to do FaceID only. With your backup plan being to allow the user to create a NEW passcode on the login screen if FaceID failed .... remember that discussion we had about security? ... and how its important? ... and that we like having any? Ok so its the same reason as that, just with a different setting this time
Designer: ... hhmm i'm not sure I like this
Me: ... tough luck then, not happening
Me: oh and btw, remember we had that other talk about reproduction steps for bugs? Like when the app crashed and you told me it was because its in light mode, and nothing else at all? So disabling FaceID, is very relevant info to the problem of "I can't login with FaceID", please tell me these things first11 -
6 months ago:
Boss: We have this idea to improve our onboarding to avoid drop off in the new app. See this section here? Were going to take that out of the onboarding and just let them pass straight through to the app. Then when they get into the app, there will be a banner telling them they should go to settings and set this up. That way they can ignore it for a while and get into the app sooner
Me: Get into the app sooner to do what?
Boss: Explore it
Me: Explore an empty app with no content, as they are a brand new user with nothing setup? While theres a big banner on the screen saying "You have insecure settings" ... basically forcing them to do it straight away anyway?
Boss: Yeah, we can give them some recommendations or something while they click around. It will be good. This is months away anyway, we'll talk again
Yesterday:
Boss: So this weird unexpected thing happened. We showed some beta users our plans to remove this section from onboarding and they felt weird about it. They said they didn't like the idea of the banner telling them they haven't set it up correctly
Me: Thats not weird, I said the same thing 6 months ago
Boss: ......... oh, really?
Me: Yep. Its not an improvement to get them through onboarding quicker, just to tell them they have to now go do it somewhere else
Boss: ... right. Ok maybe we'll build it anyway and see how they feel with it in there hands?
Me: nope
Boss: ... what do you mean?
Me: We are behind, you've asked me 3 times in the last week if we are going to be able to get everything in on time ... and now you want me to build something that everyone, apart from you, says they don't like. So realistically, i'm going to build it, and then remove it next week ... and we'll have a discussion about what has to be dropped because of this
Boss: ........ right .... ok .... hhhmmm
Me: *sits with resting bitch face*
Boss: ... maybe we can hide the banner until later. Not show it to them until they've done something in the app?
Me: ... maybe we can not do any of this?
Boss: right but then the onboarding will ...
Me: *talks louder* ... yes will be the way our users want it to be
Boss: ... hhmm i'm not sure
Me: Ok heres what we'll do, so long as it doesn't delay me getting the designs I need, feel free to have the designer mock up what it would look like using that figma on device preview thing. If users say they like it, i'll build it
Boss: ... right but it won't be real on device app so ...
Me: Its that or we cut feature X
Boss: ... well we need that
Me: ok glad we agree, let me know what feedback the designer gets
Boss: ... ok10 -
It has been a rough day dealing with third party vendors, who only have a few IQ points to share among the company. Nothing better to cheer me up than listening to my favourite Christmas song2
-
PSA:
Next time you plan on changing all your model names from "xxxxx" to "xxxxxModel", under a minor version bump so that everyones CI breaks, in order to deliver no benefit whatsoever ..... don't8 -
Some 'wk306' highlights from different people:
Walk around the office in his underwear, because he forgot he left his trousers in the bathroom
Run a red light outside the office due to not wearing his required glasses. When questioned by co-workers, replied "I don't follow those facist rules"
Asking if we work less will we get paid more, because the project will take longer to do (while in a startup with no funding trying to secure some)
Tell a senior dev to stop testing in his spare time, as we won't be able to release on time if he keeps finding critical security bugs
Telling me "your timezone is not my concern", when asking for help with new tooling so we don't have to be online at the same time
Blaming my team for requesting too much help, leading to his team missing deadlines, in a meeting with very senior managers. When the reason we were requesting help was the handover doc we were given was filled with lies about features being finished and "ready to ship" and lacking any unit tests
Being accused of bullying and harassment to the CEO, because someone asked "did you follow up with X about the partnership they emailed us about". The person who was responsible, forgot 4 times, and saw it as an "attack" to mention it in team meetings
Telling an entire office/building mid November they've secured funding for at least the next year, then announcing in January after the Christmas break that its cheaper to move to India, so they are closing the office in 30 days2 -
Ok story of my most most recent job search (not sure devRant could handle the load if I was to go through them all)
First a little backstory on why I needed to search for a new job:
Joined a small startup in the blockchain space. They were funded through grants from a non-profit setup by the folks who invented the blockchain and raised funds (they gave those funds out to companies willing to build the various pieces of the network and tools).
We were one of a handful of companies working on the early stages of the network. We built numerous "first"s on the network and spent the majority of our time finding bugs and issues and asking others to fix them so it would become possible, for us to do what we signed up for. We ended up having to build multiple server side applications as middleware to plug massive gaps. All going great, had a lot of success, were told face to face by the foundation not to worry about securing more funds at least for the near term as we were "critical to the success of the network".
1 month later a bug was discovered in our major product, was nasty and we had to take it offline. Nobody lost any funds.
1-2 months later again, the inventor of the blockchain (His majesty, Lord dickhead of cuntinstein) decided to join the foundation as he wasn't happy with the orgs progress and where the network now stood. Immediately says "see that small startup over there ... yeah I hate them. Blackball them from getting anymore money. Use them as an example to others that we are not afraid to cut funds if you fuck up"
Our CEO was informed. He asked for meetings with numerous people, including His royal highness, lord cockbag of never-wrong. The others told our CEO that they didn't agree with the decision, but their hands were tied and they were deeply sorry. Our CEO's pleas with The ghost of Christmas cuntyness, just fell on deaf ears.
CEO broke the news to us, he had 3 weeks of funds left to pay salaries. He'd pay us to keep things going and do whatever we could to reduce server costs, so we could leave everything up long enough for our users to migrate elsewhere. We reduced costs a lot by turning off non essential features, he gave us our last pay check and some great referrals. That was that and we very emotionally closed up shop.
When news got out, we then had to defend ourselves publicly, because the loch ness moron, decided to twist things in his favour. So yeah, AMAZING experience!
So an unemployed and broken man, I did the unthinkable ... I set my linkedin to "open to work". Fuck me every moronic recruiter in a 10,000 mile radius came after me. Didn't matter if I was qualified, didn't matter if I had no experience in that language or type of system, didn't matter if my bio explicitly said "I don't work with X, Y or Z" ... that only made them want me more.
I think I got somewhere around 20 - 30 messages per week, 1 - 2 being actually relevant to what I do. Applied to dozens of jobs myself, only contacted back by 1, who badly fucked up the job description and I wasn't a fit at all.
Got an email from company ABC, who worked on the same blockchain we got kicked off of. They were looking for people with my skills and the skills of one other dev in the preious company. They heard what happened and our CEO gave us a glowing recommendation. They largely offered us the job, but both of us said that we weren't interested in working anywhere near, that kick needing prick, again. We wanted to go elsewhere.
Went back to searching, finding nothing. The other dev got a contract job elsewhere. The guy from ABC message me again to say look, we understand your issues, you got fucked around. We can do out best to promise you'll never have to speak to, the abominable jizz stain, again. We'll also offer you a much bigger role, and a decent salary bump on top of that.
Told them i'd think about it. We ended up having a few more calls where they showed me designs of all the things they wanted to do, and plans on how they would raise money if the same thing was to ever happen to them. Eventually I gave in and signed up.
So far it was absolutely the right call. Haven't had to speak to the scrotum at all. The company is run entirely by engineers. Theres no 14 meetings per week to discuss "where we are" which just involves reading our planning tool tickets, out loud. I'm currently being left alone 99% of the week to get work done. and i'm largely in-charge of everything mobile. It was a fucking hellhole of a trip, but I came out the other side better off
I'm sure there is a thought provoking, meaningful quote I could be writing now about how "things always work out" or that crap. But remembering it all just leaves me with the desire to find him and shove a cactus where the sun don't shine
.... happy job hunting everyone!10 -
Request from a senior backend dev in a previous company:
Talking to the team thats responsible for the auth API's is such a pain. For this new API can we just not add any auth to it? Its only going to return details about who the email address belongs too. Like name, address, date of birth, car registration etc. No one will care about that, and it will be easier for mobile to integrate right?11 -
*Achievement unlocked*
The award of:
Asking “Can you please fucking enable some way for me to mock the networking requests?” A record number of times to unique third party libraries in a week
Awarded to:
practiseSafeHex7 -
"years of experience" basically means nothing, both for people and organisations. You can work with someone who has 30 years experience who knows nothing, and someone with 1-2 years who's practically an expert.
Joined a large multi-national fresh out of college, that had been around for +90 years. I expected them to know software development inside and out. Didn't expect to see so many failed projects for stupid reasons, so many over sights, so many .... morons, to be honest.
Worked for a startup company where most only had 1 or 2 years more experience than me and learned so much.
Worked for a small company where everyone had 1.5 - 2 times my experience, where I learned the meaning of "bewilderment".
Never feel small, or less valuable because of a number. Theres a good chance you are working with jackasses - practiseSafeHex7 -
Random dev online: Any chance you could help me figure out how to use something the company you worked for wrote? I need to do XYZ
Me: I didn't write it but sure. Theres a doc here about the full process of doing XYZ <link>
Random dev 5 seconds later: But how do I actually do it? The link doesn't show how to do it via code.
Me: You'll find if you actually read it, that it does. Because I checked. Good day2 -
Recruiter: hi, I have an iOS Developer role. Would you be interested?
Me: sure, send me on the spec.
Recruiter: ok great so for this Full stack app developer role we are looking for someone with:
- 5+ years embedded C/C++ experience
- 5+ years of working with Windows and Linux
- Native Android development
- As well as Native iOS experience
Interested?
Me: ......... ok buddy, you and me are going to have a little chat about what “iOS Developer” means17 -
Ah, new feature submission to app store day.
- Tests passing = check!
- App built = check!
- App manually tested = check!
- App store content = check!
- Boilerplate answers to the same 6 questions from PM, every time we go through this = check!
Ready to go baby!! -
It fucking staggers me how many backend/devops-y people don't understand what a client side "request timeout" is, versus a server side one.
What does it mean:
The client was fed up with the servers bullshit, and decided to piss off and not wait around for the server to take forever to respond, because life's too short.
How not to solve/debug this issue:
- "I've checked the API request in tool xyz, and it works fine for me"
Congratulations, you've figured out how to call an API once, in isolation to the rest of the application, and without any excessive load. And using a different client to me, with a different configuration. Lets get back to actually looking at the issue shall we?
- "I only see HTTP 200's in the logs"
Yep, you probably will in most circumstances, because its the client complaining about it taking too long, not the server. If the server was telepathetic and knew what the client was thinking/doing at all times, we wouldn't have half of the errors we do.
- "Ah ok, I understand ... so how do I solve this?"
Your asking me? I don't fucking know, I didn't build the server! Put better logging in place and figure out why sometimes it takes forever.
Jesus fucking christ14 -
QA: When I open the app I get this strange error message that includes "No data connection could be established" near the start of it.
Me: I'll clean up how thats displayed, but the error means your phone doesn't have internet connection.
QA: No that can't be it, I do.
Me: You screenshot shows no WiFi or 3g / 4g symbols.
QA: No those are never there, please investigate.
Me: I have investigated and found that every other one of your screenshots had a WiFi or a 3g symbol. Example: <link>. Please check your connection and try again, i'll clean up the error display.
PM: Oh i've had an issue something like this before. We really need to show users an error screen. We can't just leave them on this screen with no error message at all.
Me: ... we have an error, thats what QA is complaining about, its not loading the text and displaying the error object.
Anyone else want to not pay attention and complain about something else that doesn't make sense? ... no? ... ok good, back to work then7 -
QA: When I start the onboarding process, kill the app and reopen it, I return to where I left off with no way to go back to the previous screen.
Me: Please click the back button in the top left corner5 -
Project manager, who i've complained in the past is neglecting critical things that he doesn't want to do, decided today to cancel our weekly planning meeting, to have the below conversation with me 1:1. Its very long, but anyone who has the will to get through it ... please tell me it's not just me. I'm so bewildered and angry.
Side note: His solution to the planning meeting not taking place ... to just not have one and asked everyone to figure it out themselves offline, with no guidance on priorities.
Conversation:
PM: I need to talk to you about some of phrasing you use during collaboration. It's coming across slightly offensive, or angry or something like that.
Me: ok, can you give me an example?
PM: The ticket I opened yesterday, where you closed it with a comment something along the lines of "as discussed several times before, this is an issue with library X, can't be fixed until Y ...".
"As discussed several times" comes across aggressive.
Me: Ok, fair enough, I get quite frustrated when we are under a crunch, working long hours, and I have to keep debugging or responding to the same tickets over and over. I mean, like we do need to solve this problem, I don't think its fair that we just keep ignoring this.
PM: See this is the problem, you never told me.
Me: ... told you what?
PM: That this is a known issue and not to test it.
Me: ..... i'm sorry ..... I did, that was the comment, this is the 4th ticket i've closed about it.
PM: Right but when you sent me this app, you never said "don't test this".
Me: But I told you that, the last 3 times that it won't be in until feature X, which you know is next month.
PM: No, you need to tell me on each internal release what not to test.
Me: But we release multiple times per week internally. Do you really need me to write a big list of "still broken, still broken, still broken, still broken"?
PM: Yes, how else will I know?
Me: This is documented, the last QA contractor we had work for us, wrote a lot of this down. Its in other tickets that are still open, or notes on test cases etc. You were tagged in all of these too. Can you not read those? and not test them unless I say I've fixed them?
PM: No, i'm only filling for QA until we hire a full time. Thats QA's job to read those and maintain those documents.
Me: So you want me to document for you every single release, whats already documented in a different place?
PM: ok we'll come back to this. Speaking of hiring QA. You left a comment on the excel spreadsheet questioning my decision, publicly, thats not ok.
Me: When I asked why my top pick was rejected?
PM: Yes. Its great that you are involved in this, but I have to work closely with this person and I said no, is that not enough?
Me: Well you asked me to participate, reviewing resumes's and interviewing people. And I also have to work extremely close with this person.
PM: Are you doubting my ability to interview or filter people?
Me: ..... well a little bit yeah. You asked me to interview your top pick after you interviewed her and thought she was great. She was very under qualified. And the second resume you picked was missing 50% of the requirements we asked for ... given those two didn't go well, I do think its fair to ask why my top pick was rejected? ... even just to know the reason?
PM: Could you not have asked publicly? face to face?
Me: you tagged me on a google sheet, asking me to review a resume, and rather than tag you back on 2 rows below ... you want me to wait 4 days to ask you at our next face to face? (which you just cancelled for this meeting)
PM: That would have been more appropriate
Me: ..... i'm sorry, i don't want to be rude but thats ridiculous and very nit pick-y. You asked my opinion on one row, I asked yours on another. To say theres anything wrong with that is ridiculous
PM: Well we are going to call another team meeting and discuss all this face to face then, because this isn't working. We need to jump to this other call now, lets leave it here.5 -
PM: Ok Android, i've reviewed the latest build, you are good to release. Waiting on iOS's build to test.
Me: ... are we not holding all builds until we hear back from backend about that bug?, as we likely have to change something on our side?
PM: Which bug?
Me: ... the only one we discussed yesterday in the team meeting.
PM: How many customers is it affecting?
Me: that we know of, one ... the CEO of our company
PM: oh that one, yeah were not doing that anymore.
Me: WHAT? i've been waiting all day / night to hear back. Why are we not doing this?
PM: ¯\_(ツ)_/¯ ... Everything is too messy at the minute anyway, the release plan is changing every day. Need to keep it back in line.
Me: ... the plan has changed exactly once. We had a plan at the start of last week for the last release, we changed it YESTERDAY to include 2 critical bug fixes. The only issue with the plan changing is nobody telling us these aren't bugs anymore
PM: We can discuss tomorrow in the team meeting.
CEO: oh hey guys, yeah we pulled that bug fix. Its not really a bug, more like a missing feature. No way it will get done before xmas. Going to live with the way it works for now and fix it properly next year.
Me: Ok, fair enough, but we really need to be told these decisions.
CEO: sure, sorry, didn't think anyone was blocked by this. What was the blocker?
Me: ..... you asked me yesterday to get this bug fix in the build ... you asked for the final build to be made today so we can go through the app store review. As we all discussed yesterday, today is kind of the last day we can really do this.
CEO: ok, its late, we can discuss this tomorrow in the team meeting.
Me: ..... ..... ..... ..... sure7 -
It's getting close to that time of year when we are all encouraged to think of others and spread joy around the world. I've decided to go against my usual snarky/anti-social nature, and do something to help others this year.
I'm announcing the practiseSafeHex charitable fund, to give back and help others.
This fund will invest in cutting edge medical research to detect the genetic abnormality in humans that results in project managers not being able to comprehend the simplest of concepts.
Together we can find the reason why the concept "more meetings = less work" is uncomprehendible.
Together we can discover why we can't use an automated bot to generate reports, instead of spending hours in excel spreadsheets.
And together we will find a reason why the answer to the question "can we please just try it?" is always "No".
We do this not for ourselves for short term gains, we do this for the greater good. Together we can find the cause and build a test to filter these people out. So that never again will stressed out developers have to deal with these petty ridiculous issues.
Together, we will solve this!
Thanks,
practiseSafeHex, CEO and managing director of the practiseSafeHex charitable fund for the betterment of developer sanity10 -
practiseSafeHex:
software engineer, iOS developer, mobile developer, professional "here is the answer I gave you the last time you asked me the same question" responderrant wasn't busy anyway ... not stop asking me the same f**king thing apparently nothing better to do bad day3 -
IBM job requirements:
- 12+ years kubernetes experience
- kubernetes is 6 years old
IBM, never change cheered me up today
https://theregister.com/2020/07/...4 -
Product manager: ah ok I understand. So is the plan still to do xyz?
Me: .... STILL?? ... when was that ever the plan? .... ok when you said “I understand” what did you mean?3 -
The bloke that I share my office with is asleep on the job. Ffs, can I get any support around here?
This working remotely from home thing, just isn’t panning out13 -
I’ve been told my rants are being missed, since I left my hellhole of a job. So here’s a filler until something major goes wrong.
Right so here’s what my life is like at the minute. I’m working remotely from home. So this morning, instead of spending 2 hours in traffic, I got up at a reasonable hour and brought the dog for a walk. I don’t know who these people think they are, fucking up my routine like this. The audacity of them thinking it’s no big deal really pisses me off.
I’m the only iOS developer in the company. Normally I get bombarded with “why not use react-native” or “RxSwift is the future” and other shitty tools. Last week I said “i’d like to do X this way”. Do you know what those absolute bastards said to me? You ready? Hope you are sitting down ... they said ... “ok, sounds good” .... the fucking c***s.
Oh oh and the big one, wait for this now. Fridays are demo days, last Friday I showed what I was working on. Afterwards the CEO comes along, stares me in the eyes and without a care in the world what his comments might do to my self-esteem the fucker says “wow great job”. He fucking makes me SICK!!!
Feels good to get all that off my chest. I’ve missed venting. At this rate, I’ll be back very soon!8 -
Californian PM: Hi team, can I get confirmation from you if your team will be picking up this ticket xyz, currently assigned to California team, in Q4 please. Thanks
Local Manager: Why would we pick it up if its assigned to the California team?
... tomorrow is my last day here ... i'm not unhappy about this9 -
Dev lead on another team: Ok we can build that API for the mobile apps, we'll generate everything, generate printable images for the labels, persist it all and do all the relevant lookups and checks. Do you need an SLA?
Director: Yes, 9ms
*silence*
Lead: Sorry .... 9ms?
Director: yeah, its a must have
Lead: ... the speed of light wouldn't even let us transmit it that fast18