| |
| ▲ | fragmede 3 days ago | parent | next [-] | | What did you tell him was the monetary value? Let's say there are like 5 holidays per year that result in days where some people have holidays but others do not, so business meetings happen that day that get missed. Let's say you have a 100 million people using this calendar software. Let's say 0.5 percent of those are in the executive class. Furthermore, let's say 10% of them miss a meeting due to this UI issue. That's 50,000 missed meetings. If we handwave that each of those meetings could have resulted in $10 million deals for their company, this UI bug is costing customers half a trillion dollars! So, after estimating the number of ping pong balls that fit on a 747, the thing to do is to go write the regexp and put that on your promo packet. Half a trillion dollars! | | |
| ▲ | bonoboTP 3 days ago | parent | next [-] | | Obviously they meant monetary value for the software company. How much more revenue will they make if they implement it? | |
| ▲ | godelski 3 days ago | parent | prev [-] | | Sorry, let me clarify better (but it leads to similar issues) On my iPhone[0] calendar I imported my Microsoft (work) and Google (personal) calendars, also having the iPhone calendar. If we take last Labor day as an example, if I don't disable the Holiday calendars in Microsoft and Google, I have 3 entries for Labor Day. Holidays sit at the top of the day so if I'm on my phone I basically won't see any other events. If I'm on my macbook and my Calendar is using 60% of my vertical space I see "Labor Day +3 more". Full screen I can see 4 maybe 5 entries.... So I can save a large chunk of real estate by doing a simple fucking 1 line regex. At the same time I can effectively merge the calendars, so I get to see the holidays that are in one but not the others. Effectively, I can ACTUALLY SEE WHAT I HAVE SCHEDULED FOR THE DAY[1] This, of course, also affects other things. Sometimes Google will add an event because I got an email later. Fuck, now I have dupes... Same thing happens with birthdays... Or you can hit that fun bug where you have for some god damn reason duplicate contacts with the same name, phone number, and birthday, you get triplicate calendar entries and merging[2] and results in quadruple entries! I have missed so many fucking things because I didn't see it on my calendar[3]. And someone has the audacity to ask how much money would be saved? We've spent longer discussing the problem than it would take to fix it! These aren't junior people I'm talking to (who ask dumb things like "but I can't control or merge the other calendars" not recognizing it's a display issue), but like a L6 at Amazon.[4] > So, after estimating the number of ping pong balls that fit on a 747, the thing to do is to go write the regexp and put that on your promo packet.
I swear, the problem is no one realizes the point of leetcode questions was never to get the answers right, but to just have some problem for an interviewee work on and see how they go about solving it. I'd rather an engineer get the wrong answer with a good thought process than get the right answer with shitty code that was obviously memorized. It's much harder to teach people how to think than it is to teach them some specific thing to remember.[0] I've almost immediately regretted this decision... [1] General frustration yelling, not yelling at you [2] No, the "find duplicate contacts" option does not in fact find duplicate contacts (what fucking data are they looking for? Because it sure as hell isn't identical names. Why isn't it even trying to do similar names?!) [3] I've also missed so many fucking things because that little scroll wheel wasn't completely finished with its animation and so saved the wrong day or switched AM to PM. I've missed so many things because I have so little control over notifications and they disappear not if I dismiss them, but if I just unlock my god damn phone. So not just that one liner needs to be done, but it would do a lot and these other one-liners would also greatly help. [4] Dude was complaining about candidates using GPT to do leetcode problems and how he had a hard time figuring out if they were cheating or not. One of my many suggestions was "why not do in person interviews?" which was answered with how expensive plane tickets were (his interviewees were local) and contradicted his prior and later statements about how costly it is to hire/interview someone. I'm sorry, what percentage of 6 engineer's salaries to do 6 interviews for an hour is a single round trip ticket for a domestic flight? Or to have someone... drive in... |
| |
| ▲ | indymike 3 days ago | parent | prev | next [-] | | Hmm. If the annual subscription is $100 then the value of fixing this is $100. If it is free, then, what's the profile worth for a year... there's the value. User retention is a thing. | | |
| ▲ | godelski 3 days ago | parent | next [-] | | I mean these numbers are just made up anyways, so why are engineers concerned with them? The idea of engineers needing to justify monetary value is just... ill conceived. They should be concerned with engineering problems. Let the engineering manager worry about the imaginary money numbers. > User retention is a thing.
Problem is no one needs to care about the product's quality if the product has the market cornered... Even less of a concern if the users don't know how to pick good products from bad products. Tech illiteracy directly leads to Lemon Markets | | |
| ▲ | TeMPOraL 3 days ago | parent | next [-] | | > I mean these numbers are just made up anyways, so why are engineers concerned with them? That's what they're directly or indirectly being graded on. Even if they don't have to show how their work impacted the company's bottom line, their managers or their managers' managers have to, and poop just rolls downhill. > The idea of engineers needing to justify monetary value is just... ill conceived. They should be concerned with engineering problems. Let the engineering manager worry about the imaginary money numbers. If this was only possible in this industry. If you're in a small company, you're wearing multiple hats anyway. If you're in a big corp, well, my wife hates that I see this in everything, but - hidden inflation is a thing. As roles are eliminated (er, "streamlined"), everyone is forced to be responsible for things they're not really supposed to care about (my favorite example is filing expense reports). As you aptly put it upthread: we fucked up... | | |
| ▲ | godelski 3 days ago | parent [-] | | > That's what they're directly or indirectly being graded on.
I think you'd agree that this should have never been the case. Engineering managers or project managers, sure. But engineers? That's just silly.We need firewalls. One group's primary concern needs to be on the product. Another group's primary concern needs to be on keeping the business alive and profitable. Too much of the former and you fail to prioritize the right work. Too much of the latter and you build vaporware. The downsides of biasing in one direction is certainly worse than the other... > my wife hates that I see this in everything, but - hidden inflation is a thing.
Lol, your wife might have a field day with mine...I have a fundamental belief that there's far more complexity than we let on. That as we advance complexity only increases. What was once rounding errors end up becoming major roadblocks. It's the double edged nature of success: the more you improve the harder it is to improve. I truly will never understand how everyone (including niche experts) thinks things are so simple. But my partner is doing her PhD in economics, so she also thinks about opportunity costs quite a lot but I think she (and a lot of her friends) were quite unaware of how a lot of stuff operates in tech[0]. Probably doesn't help that, as you know, I'm not great at brevity :/ [0] My favorite thing to at her department get togethers (alcohol is always involved) is to introduce them to open source software. Quite a number of them find it difficult to understand how much of the world is based on this type of work and how little money it makes. Not to mention the motivations behind it. The xz hack led to some interesting discussions... | | |
| ▲ | elcritch 3 days ago | parent [-] | | Perhaps it's because I've been in tech for so long, but I can't comprehend PhD candidates not knowing about open source software. | | |
| ▲ | godelski 3 days ago | parent [-] | | PhD Economists, not PhD Computer Scientists. Don't worry, people didn't go completely brain dead lol. And most of the economists know about it but not the scale or how it fits in the larger ecosystem. They really just know it as "there's sometimes tools on GitHub". |
|
|
| |
| ▲ | cindyllm 3 days ago | parent | prev [-] | | [dead] |
| |
| ▲ | reflexco 3 days ago | parent | prev | next [-] | | User retention is not much of a thing anymore thanks to the stickiness afforded by integrated services and network effects. You can't just switch calendar/video streaming when everything else is integrated with it/everyone is exclusively posting on this network. | |
| ▲ | kelnos 2 days ago | parent | prev [-] | | Right, but fixing something is only worth $100 if they actually are losing paid users over that thing. I suspect they aren't losing users over duplicated holidays in the calendar. |
| |
| ▲ | yacthing 3 days ago | parent | prev [-] | | > We're both programmers so we're both know we're talking about a one line regex... As a big tech programmer, it's almost never that simple... Small edges cases not covered by a one line regex can mean big issues at scale, especially when we're talking about removing things from a calendar. | | |
| ▲ | godelski 3 days ago | parent [-] | | > As a big tech programmer, it's almost never that simple...
I'll be fair and agree that I'm being a bit facetious here. But let's also admit that if you are unable to dedupe entries in a calendar with identical names then something is fundamentally broken.I did purposefully limit to holiday calendars as an example because this very narrow scope vastly simplifies the problem, yet is a real world example you yourself can verify. You're right that edge cases can add immense complexities but can you really think of a reason it should be difficult to dedupe an event with identical naming and identical time entries, especially with the strong hint that these are holidays? Let's even just limit ourselves to holidays that exclusively fall over full day periods (such as Labor Day). Do you really think we cannot write a quick solution that will cover these cases? The cases that dominate the problem? A solution whose failure mode results in the existing issue (having dupes)? Am I really missing edge cases which require significantly more complex solutions that would interfere with the handling of these exceptionally common cases? Because honestly, this appears like a standard table union problem. With the current result my choices are having triplicate entries, which has major consequences to usability, or the disabling of several calendars, which fails to generalize the problem and also results in missing some minor holidays. Honestly, the problem is so bad I'd be grateful even if I had to manually approve all such dedupes... If not, I'd really like to hear. Because it really means I've greatly mischaracterized the problem and I should not be using this example. Nor the example of a failure to FIND contacts with identical names, nicknames, phone numbers, birthdays, and differ only on an email address and note entry. Because I have really been under the strong impression that the latter is a simple database query where we should return any entry containing matches (failure mode being presenting the user with too many matches rather than a lack of matches. We can sort by number of duplicate fields and display matches in batches if necessary. A cumbersome solution is better than the current state of things...). I'm serious in my request but if I have made a gross mischaracterization then I think you'd understand how silly this all looks. I really do want to know because this is just baffling to me. If I truly am being an idiot, please, I encourage you to treat me like one. But don't make me take it on your word. | | |
| ▲ | yacthing 3 days ago | parent [-] | | That's a lot of words, but I think it boils down to: you're making an assumption that two calendar events with identical naming and identical time entries will always have a desired behavior of being deduped. - Maybe you want to separately invite people to the same thing and have different descriptions, now you're increasing the number of things to equate. - Maybe a user creates one event that is simply a title and a time, and they then want to create a second one for another purpose. However, it keeps getting deduped and they don't know why. Now you have a user education problem that you have to solve. - Now you might think: well just make it a toggle in the settings! Okay well now you have to add a new setting and that expands the scope of the project. Do you make it opt-in or opt-out? If it's opt-in, what if no one uses it? Do you maintain the feature if there's a migration? If it's opt-out, you still have the above problems. I could go on. And this is mostly an exercise of not underestimating a "simple" change. Calendars (and anything involving time) in particular can get very complicated. | | |
| ▲ | godelski 2 days ago | parent [-] | | > will always have a desired behavior of being deduped.
Okay, let's say people like repetition. Optional flag. Great, solved. > Maybe you want to separately invite people to the same thing
To a... holiday? Sorry, I already cannot invite people to a holiday in my existing calendar. I have no ability to edit the event. This capacity does not exist in my Apple Calendar nor Google Calendar and I'm not going to check that Outlook Calendar because the answer doesn't matter. > Maybe a user creates one event that is simply a title and a time,
Again, no need to auto-dedupe. But having collisions and requiring unique name entries is not that uncommon of a thing. > And this is mostly an exercise of not underestimating a "simple" change
Except to introduce your complexity you also had to increase the scope of the problem. Yeah, I'm all for recognizing complexity but come on man, we're talking about fucking Apple who makes you do it their way, by visiting 12 different menus, or the highway. We're talking about the same company who does not have the capacity to merge two contacts and only has the option "find duplicate contacts" but is unable to find duplicates despite multiple matching fields.So what's your answer? Keep the bullshit and do not provide an option to allow merges or dedupes? Literally all the problems you've brought up can be resolved by prompting the user with a request to merge OR just giving them the ability to do so. You really think triplicate entries is a better result than allowing a user to select three entries, right click, "merge entries"? Come on... | | |
| ▲ | yacthing 2 days ago | parent [-] | | > So what's your answer? My answer is simply: It's not a 5 minute regex change. I'm not even saying it shouldn't be prioritized or isn't worth the effort. Just that you should give the problem a bit more respect. | | |
| ▲ | godelski 2 days ago | parent [-] | | > you should give the problem a bit more respect.
The more generalized problem? Absolutely!The very idealized trivial cases we're discussing and I've stressed we're discussing? I'm unconvinced. |
|
|
|
|
|
|