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 - "hey guys what's up"
-
Right, I've been here before.
Our app requires an internet connection, and one of our clients wants to roll it out on a strictly managed network.
We told them which addresses our app communicates with and their network team opened them up for traffic. Should work, right?
Nope, doesn't work.
So I request them to use Fiddler to do some debugging of the network traffic, and lo and behold, it does work when Fiddler is active.
One important detail is that Fiddler uses it's own SSL certificate to debug HTTPS communications. I've had moments where expired certificates were the cause of things not working and running Fiddler "fixes" this because of their own certificate.
So I point this out in numerous mails to their network team, every time I get a response saying "nah, that can't be it".
I keep insisting "I have had this before, please check if any installed Root CA Certificates is expired"
At this point I'm certain they have updates turned off on these machines, and their certificates must not have been updated for a long time.
At one point they come back to me. "Hey, when Fiddler is off, WireShark shows the app communicating with ICMP calls, but when it's on it shows HTTP calls instead".
...YOU'RE THE SUPPOSED NETWORK EXPERTS?! You think data can be send via ICMP? Do you even know what ICMP is? Of course you'll see ICMP calls when the network is rejecting the packages instead of HTTP calls when everything's fine.
(ICMP is used to communicate errors)
I'm trying to keep my patience with these guys until they find exactly what's wrong because even I am somewhat grasping at straws right now. But things like this makes me doubt their expertise...6 -
"Hey what's up YouTube..."
"How's it going my name is..."
"What going on guys..."
"I'm sorry I haven't posted a video in a while..."
OR
* 1-minute animation intro*8 -
"Hey guys, what's up?" 😡😡😡
Why do so many people on YouTube begin their fucking videos with a pointless question noone is able to answer and which no one would acknowledge even if they did somehow manage to answer? What's up is an automatic thumbs down and fuck you.5 -
Below is a transcript from work Slack today. Only the names and some code are changed. It ended up causing a bit of drama. DevRanters, what do you take from this?
---
Delivery Lead:
Hey Gang. What's the blocker for FEATURE-123?
Dev1:
FEATURE-122 crashed on iOS app when viewing Feature Introduction page.
Teach Lead:
I've talked about this with Dev1 on a side channel.
And diagnosed the stack trace.
It looks like there is/was some bad handling of a List in the Feature Introduction view logic.
But this is confined to changes that Dev2 is still working on.
(It's not present in master)
Dev2, what's your current position on this?
Dev2:
I have tested at my end with Dev1 but it seems to be working fine
Tech Lead:
There is a race condition related to the use of someList.first()
My guess is that theres a Flow of those lists defined, with an initial value of emptyList
And that on your machine, that Flow is updating with a new value quickly enough that it doesn't matter.
But on Dev1's, for whatever reason, it doesn't get there in time, hits the empty list and falls over.
The logic that's performing the first() needs to gracefully handle empty lists as well.
Dev2:
Where is that logic called?
Tech Lead:
Here's the stack trace Dev1 provided in our conversation earlier:
Caused by: kotlin.NoSuchElementException: List is empty.
...
at 3 iosApp 0x00000000 kfun:kotlin.NoSuchElementException#<init>(kotlin.String?){} + 00
at 4 iosApp 0x0000000 kfun:kotlin.collections#first@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0 + 000
...
at 9 iosApp 0x0000000 kfun:kotlin.coroutines.native.internal.BaseContinuationImpl#resumeWith(kotlin.Result<kotlin.Any?>){} + 0000
This line:
kfun:kotlin.collections#first@kotlin.collections.List<0:0>()
...says that it's first() being called on an empty list.
Dev1:
FYI: Dev3/Dev4/myself are seeing the same issue with the same stack-trace above.
Tech Lead:
So Dev2, have you introduced such a call?
Because I checked master branch and there isn't one, in that version of the file.
Ok, I'll check your working branch Dev2
...
Yes you have here:
var processed1 = someList.first()
var processed2 = someList.first()
...
Lines 123, 124.
Solution looks really straightforward guys.
Dev2:
Okay, I will fix that and push the change
Tech Lead:
Check if someList is empty and allow for generating / handling null processedValues in the view.
Now; I'm going to be straight with you here.
This issue has been discussed over several hours today.
I expect that either one of you could have gone through the process I did in the last 10 minutes above, and resolved it in the same way :point_up:
Dev2:
I went on a break and it's not reproducible on my machine
Tech Lead:
I didn't reproduce it on mine either.
Dev1:
Dev2 and myself are now on sharing screen to sort this issue out. Hope to update back later.
Tech Lead:
<Screen shot of diff with changed code>
:point_up: That change should do it.
Dev2:
Already have pushed the change.
Tech Lead:
...just seen it, is good - same approach :ok_hand:
Dev1 please let us know when tested on your machine.
Dev1:
That does it. It fixes the issues. Thank you, Dev2. I will pick it off from here.
Tech Lead:
Glad to hear it guys.
Dev1:
I have to say this that it is not because we are not working on the issue - Dev2 and myself (together with Dev3/Dev4) have been on this issue all this morning. It just difficult to connect the dot when it wasn't reproducable on Dev2's machine. I brought the issue up because I wanted to switch to working on other tickets while waiting for this to resolve. Still thank you largely for Dev2's work and your keen eyes that spot and resolve the issue quickly.
Tech Lead:
Noted Dev1.
I think the take-away has to be to read the stack-trace carefully... don't worry - we've all been guilty of not reading the error in full, at some point.
The stack trace said that the 'first' element is being referenced from an empty list - that's just logically impossible, right?
Looking for that call to first, we saw it wasn't in the code before, and is after (two of them, in fact).
So then we ask ourselves, how can we deal with an empty list - and then solution almost presents itself.
It didn't really take reproduction of the error to resolve.
Maybe working with a new tech stack creates an anxiety that every issue faced will have a complex solution related to that stack; but I think you'll agree, this particular issue really just required a deep breath and your trusty 'debugging skills 101'... don't lose them! :smiling_face:4 -
"Hey guys we originally set the demo date to August 5th and thus far I have not seen any previews before that, what's going on here?"
Ok see, that is the kind of thing that I would take to me own lil broken heart IF:
1 It was coming from a product manager at where I work
2 He would never get any sort of updates or would just plain not know about us
3 He would be I dunno....fucking paying us?
This is the thing, a friend offered the chance to help him build a product for a business man somewhere down in the land of tacos. Being in a "fuck it" mood and not wanting to say no since it sounded interesting enough I said yes. The "owner" said that he would not be able to pay since he already had hired a team of developers before that did not deliver and as such he was instead offering a part of the company.....sounds familiar?
Not wanting to let my friend down, I told the owner that I would help just as long I get complete CTO power over the product and not crying about the stack being used or ME NOT GIVING THE PRODUCT MY FULL ATTENTION BECAUSE HE WAS NOT FUCKING PAYING.
He said ok.
Of course he did not like it, but he said ok.
He has been asking for the code, the platform, demos and a bunch of other shit which I continue to refuse since he has not offered me or my boy a copy of the legal documents that we require.
Him: "You will get them soon enough, I still need to see the product just to make sure everything is ok"
Me: "You wouldn't even know where to begin looking unless you have a third party that could verify the code, last time I checked I was to be the only one good for this"
Him: "Yeah and you and <friend> are, but I just need to see the product"
Me: "I send you videos and demos, sorry dude, but no binding document == no code. I know you think I am young, give me some fucking credit because this is not my first rodeo"
Him: "I am not trying to play you or anything, you can trust me"
Me: "No, not really. Talk to me about this when you get the documents"
Him: "Well its cuz this is taking too long...."
Me: "Tssss I know!!! It sucks right? Want a good product, built with all the bells and whistles and YOU DON'T WANT TO PAY? guess what dude, I do have a full time job, your product gets my minimal attention, right there at the bottom next to taking a shit, meaning that I will give your product the same time and attention as I would going to the throne. Aye don't feel that bad, I normally take about 1 hour on the shitter, you get that for fucking free."
To be fair ladies and gents I normally don't just explode on people like this. But I just can't fathom not paying someone for a rather large software product, with only a promise that "it will sell" and then telling them to hurry up.
Far as I am concerned this product will flop, but he seems to think it is the next big thing(of course).
He can go choke on some chode.
Fucking prick.1 -
Back here after a long time. Hey guys what's up?
-----------------------
So I was recently pushing some code into github, and i realized that i had over 500 repos, 400 of them being forks. I guess my 3yrs before self had thought that he will be the only saviour of all the android libs in the world.
So i am thinking of re organising my complete github ; like nuking the forks, combining my multiple mini project repos to 1 and keeping the repos to at most 10-12.
Is that a good idea? I mean companies usualy judge by github profiles, and after reorganising, most of my commit history would be lost.
<You know , tech world is weird. in real life, people are judged by their homes, so they keep their home tidy. but here, people are judged by their github profiles, so they keep their github profiles messy>6 -
Me and a couple of friends have this group on WhatsApp where we can share stuff that we do and maybe come up with new stuff to work on as well.
For giggles (honestly irritating to me) I'm gonna summarize some conversations on the group.
26/11
Me: Finally completed my first FPGA program, these devices are amazjng!
NO REPLY
28/11
Me: gonna make the Jacobs ladder thing today! Hope I don't get zapped
Anyone interested ?
NO REPLY
29/11
Me: hey here's a nice electronic circuit, try to analyze how this circuit oscillates (we're all ec 'engineers' well... soon at least)
NO REPLY
2/12
Friend: Guys creed 2 was amazing I don't mind watching it twice
F2 : Really? Why don't we go soon?
F3 : I'm in!!! What's the plan
F4 : how about tomorrow ?
....
3/12
F1 : Guys anyone have notes for X exam
F2 : here. {Link}
F3 : here. {Link}
F4 : how many of you are done ?
F5 : what are the important questions
(just a stupid aptitude test)
{Me} changes group title from X to Notes group
Let's give this another shot
6/12
Me: There's a conference on X technology by Y industry leader ..
Should we check it out ?
There's even a workshop on X
NO REPLY
Alright time to acknowledge my stupidity and my lack of brains for even belonging to this kind of social circle/COUNTRY
7/12
ME: New fortnite season is out
F1: woah it's crazy let's play
F2: already on it, client is updating
F3: are you shitting me? gonna get BROS laptop (i'm going to suck my brothers cock and take his computer)
F4: Hang on bro wait for me also call me on discord.
I hope you guys could stick through that. Well there's no crazy moral to this but if you're one of these guys just appreciate your friend for his efforts once in a while even at the cost of acknowledging your stupidity.
Also, words like BRO are instant triggers and I'll make sure I find you can kill you if you use it more than once every couple of sentences ( I have relatively high tolerance )1 -
Mark: hey guys I wanted to connect with you all (on FB) and have a quick chat before the meeting.
Cook, Pichai, Bezos: ok, mhhm... what's up?
Mark: yes so I think we gonna be in for a grilling so want make sure we minimize the damage.
All: uhhm....
Mark: I'm suggesting we agree on the order which we join the webex so we don't look bad..
Pichai, Cook: I don't get it...
Bezos: ... oh I think I get it.... you mean appearing as FAAG?
Cook: hmm..
Pichai: what's that?
Mark: not important but anyway... The solution is simple.
Bezos: yes Sundar just login first and I guess can send us all push notifications to our phones.
Pichai: hm... Ok... Wouldn't this get us in trouble though.... This sounds like collusion...
Mark: ok guys... Uh let's just end it here then... This chat Never happened...