To be fair, it almost is. Both units are used to talk about times of about the same size. Using both in the same sentence is like mixing meters and feet. It's much clearer to say e.g. 1500us vs 3us; or 1.5ms vs 0.003ms.
Don't mix units when making a comparison.
Edit: aww, ninja edit takes away all the fun :/
You know I have a degree in theoretical physics so I really should get this stuff right, but before I've had my morning coffee all bets are off :P
I'm not mixing units.
Milliseconds and microseconds are both measured in units of seconds.
The milli- and micro- prefixes are orders of magnitude. They're scales, not units.
When a scientist starts talking about measurements accurate to attoseconds, I sit up and take notice.
The number in front doesn't make a difference. It's the "atto" that raises my eyebrows.
Back to computing:
I had a debate here with someone who claimed that 128-bit floats are required for some chip layout codes. I questioned that, because a 32-bit number can subdivide the side-length of a chip down to sub-atomic resolution, and a 64-bit float can model the wiggles of the hadrons making up the atomic nuclei!
To some people, 128-bit sounds "twice as good as 64-bit".
To experts, it's... umm... a sign you've made a mistake.
When you are an expert, nearly by definition the average person you're talking to is less well read on the subject than you, the expert. Because of this, it's extremely important to be able to communicate with clarity and patience.
Your expertise doesn't matter if you can't make yourself understood, and it's not reasonable to expect people around you to share your expertise, so you need to adapt the message.
Communication in general is easier the fewer concepts you invoke. In almost all situations it's better to be mostly correct and well understood than to be perfectly correct and not understood at all.
Even if you can expect most people to have an understanding of SI units, far fewer will have an intuition for them (because they aren't working with them daily). Everyone has a basic intuition for big numbers though, so if you want to say "this is bad", show them a big number; the bigger the better.
It can still be correct and make a well founded argument, but presentation matters a lot more than you'd think for convincing someone. In increasing order of likelihood it will convince anyone:
The new solution adds a 15ms latency, whereas our usual requests have a 2us latency.
The new solution adds a 15ms latency, whereas our usual requests have 0.002ms latency.
The new solution is a factor 7.5e3 slower than the existing solution, which has a 2 microsecond latency.
The new solution is 7,500 times slower than the existing solution, which has a 2 microsecond latency.
The new solution is 75,000% slower than the existing solution, which has a 2 microsecond latency.
What is said is basically identical in each version, but the presentation puts an increasing emphasis on just how big a difference this is by literally showing a big number.
That CTO is just doesn't sound qualified for the job.
Context matters, not everywhere 5ms more makes difference.
I get where you are coming from, but the amount of work you can do in 5ms is mindblowing.
If that's the case it's not surprising it didn't sink in. You're just giving him another problem.
> I've spent my career performance tuning, but then how do I explain this to people who think a 60-second timeout is a performance problem best solved by buying another million dollars worth of kit?
I'm surprised you've spent your career doing this and you still haven't figured out how to get people to listen to you.
Making your work legible to others feels as important as the work itself.
> I'm surprised you've spent your career doing this and you still haven't figured out how to get people to listen to you.
This is the point of the article, which you appear to have missed.
There's a point where it becomes essentially impossible to articulate the differences to the lay person. Or for that matter, someone actually quite skilled, but not a "master".
It's not a lack of skill on the part of the expert, it's the lack of skill on the part of everybody else.
Everything you've just said is gibberish to a master.
It's like making a straight-faced argument that setting the speed limit to 1 mph on a motorway might make perfect sense, and the traffic engineer is actually at fault for not making it clear that this is nonsense.
I get that you don't see the ridiculousness of 50 microseconds vs 5 milliseconds, but that's the point.
You don't see it, and you start making random arguments untethered from reality.
The fact that you are blind to it, unlike being blind to 1 mph vs 65 mph is the entire point.
You may have driven thousands of hours. You have don't have thousands of hours of network performance tuning expertise.
Both of us wouldn't be able to even begin to understand the complaints Ayrton Senna might make about how the steering is too "crunchy" at the extremes or that the brake strength imbalance is shifting the car about.
There's levels of expertise, and if two people are too far apart, meaningful communication between them becomes impossible.
Ok? But you are required to motivate a decision that is based on terms, conditions, probabilities, consequences that can only be encoded at knowledge-level A. When projected down to knowledge-level C, it sounds like "otherwise bad things might happen".
The jargon is not what matters. The logic of the decision is not meaningful or believable without knowledge of the "physics of the system" at level A.
Most people understand nuclear bombs in layman terms, and they understand them intuitively from watching videos and pictures. Without videos and pictures, no one would care.
Law firms are run by lawyers. The chief of surgery is a surgeon. Architecture firms are run by architects at the top.
Why is it that in IT it is expected that all management of IT is “non technical” to the point of not understanding what they’re hearing from direct reports!?
Would it be normal in your mind for a chemical plant foreman in charge of the process to not know what atoms are!?
Have you ever spent any significant time in an environment where most people are not (children of) college graduates? Because this is absurd. The average person who has just finished a year of high school physics probably can’t tell you those.
Do they work for a high frequency trading firm? Do they make a CRUD app which has few users and (as much as I hate that) "they can wait even 5 seconds".
If the person does not give context then they dont explain well..
On a side note: for me the problem seems to be not the speed, but the choke point - just 2 servers (with no redudancy?). What one or both go down?
You've disproved this yourself earlier in this comment. You made an analogy to explain a concept to a non-expert.
It is entirely on you to make yourself understood to non-experts. It is both possible and extremely important.
That is rather a condescending take: calling yourself a master and calling their words gibberish is hardly thoughtful dialogue. Other parts of your comment are equally bad “ untethered from reality” should not be written. Someone is trying to engage with you and you are dismissing them by using very charged words. Even worse you are demonstrating poor communications skills - that point being questioned elsewhere in the thread. I hope you can learn to listen to others politely even when you disagree, and please try to follow https://news.ycombinator.com/newsguidelines.html :
Be kind. Don't be snarky. Converse curiously; don't cross-examine. Edit out swipes. Comments should get more thoughtful and substantive, not less, as a topic gets more divisive. When disagreeing, please reply to the argument instead of calling names. "That is idiotic; 1 + 1 is 2, not 3" can be shortened to "1 + 1 is 2, not 3." Please don't fulminate. Please don't sneer.> It's not a lack of skill on the part of the expert, it's the lack of skill on the part of everybody else
This is a very poor frame of reference. It's not other people's fault they cannot understand the value you provide, it's your fault.
The thing that tends to bother engineers is that articulating your value (I.e. sales and marketing) is generally orthogonal to your key competencies.
I can, and have, explained 'deeply technical things' in 'business terms'. And people understood. Then made a bad/poor/wrong choice anyway, because... "well... all those things you're saying might happen, they might not. Or... it may not happen for months or years, and we already committed to date X for project Y".
I can tell people the cost of punting on 'deeply technical thing' will be enormous, like... "this will require doubling the dept headcount and stopping all new progress for 6-12 months". Then offer alternatives. Then get summarily ignored, and watch things crash months later, and the dept is then stuck for months scrambling to understand all the problems they could have avoided. The decision maker who decided for extremely short term gain? They're gone (sometimes of their own choosing, sometimes not).
The "risks" can seem wildly out of touch with reality, but many times if you're making poor choices you do hit the "worst case scenario" wall. Colleague has been contracting inside a shop on and off for a few years. He indicated "if we don't do X, we will not be able to do any new feature development for at least 18 months". And... closing in on 4 years later, they've not shipped any substantial new features (some bug fixes, but that's about it).
I've seen this happen once up close, and have seen inside other companies and got the war stories from others.
Does this happen every single time? Of course not. But even if you can confidently and correctly and pleasingly describe deep tech things to business folks in their own language, showing the pros/cons/costs/risks... that doesn't mean they will take your side. Saving face, hitting deadlines at all costs, and other factors weight on decisions, and you can't control that. You can control where and how you work though.
Both the storage vendor tech and I vehemently argued for solving this immediately but were told to “do it later”.
I pointed out that “later” would be when it is full and has 10K production users using it 24/7. Hence any reformatting would be a six-month project requiring additional kit for the scratch space needed.
I was wrong. It took 12 months.
The position is that intentionally being a bad communicator guarantees poor results most of the time.
Same way that not driving drunk does not guarantee you won’t get in a wreck.
Yes, maybe I desperately need to frobulize the macrowublitz to avoid pracknation, but I’ll wait for someone who can explain why it’s a high priority to achieve my goals.
Cedric explicitly directs people to another article which discusses how this idea relates to money: "Bellotti’s observations are worth reading in their entirety, especially if you’re interested in the actionable implications of the idea. But I’d like to take this property of expertise in another direction. Now that we know that expertise is more legible to experts, could we perhaps invert this observation and turn it into a goal by itself? Could you turn this into something that helps you acquire expertise?".
I would expect both of them to sell out. The people looking for a higher quality product will immediately go for the more expensive product, and the remaining wallets would sell to people who just need a wallet.
It is more complicated than that. There is no guarantee that the more expensive wallet is also the higher-quality product. The people looking for a higher-quality product can be classified into those who can measure the quality well (perhaps by observing those minor differences), and those who have to use less effective proxies of quality (like price).
Funny, my game of choice is StarCraft 2 and when I watched AlphaStar beat StarCraft 2 pros I was significantly less impressed than when I watched AlphaGo beat Lee Sedol at Go.
If you remove those limits, it would absolutely wipe the floor with the twitching corpse of any human player.
I saw it play Warcraft 2 without the limiters, and it was just ridiculous. It would dance the units around and keep using them with 1 hp left for many minutes and then heal them back up juuuuust enough to take exactly one hit from an enemy.
Almost everyone in the community seemed to agree AlphaStar was very unfair. Things like a 3 way surround and performing blink micro on individual Stalkers on opposite sides of the screen are completely inhuman.
This is also what made the Dota 2 bots feel somewhat disappointing. Of course perfect mechanical skill beats humans. Watching the SF mid 1v1 matches illustrated this very clearly to me. The AI chipped the player down with perfect AAs, then finished them off with perfect distance razes.
The bots weren't 100% mechanical skill, but it was a large enough proportion that it was uninteresting.
This is so true.
It's also very difficult to stop as the consultancy gets the project and the client doesn't get to interview the people who actually turn up.
I've encountered this, and what works is re-framing it in terms they'll understand. Things that are universally understood are: time, money, and competition.
In this case, the "micro" and "milli" pitch is technical minutiae and is not what I'm referring to when I say "time". These are more effective frames:
>If we do this, it will save/cost us months/years/dollars...
>If we do this, the performance hit will knock out our competitive advantage, which we'll have to make up for it with something else, which will cost time/money...
>This thing is insufficient for our customer's needs, which will cause our customers to seek out competitors, which will cause us to lose money...
>This thing is too complex and will require additional training and is error-prone, which will cost us time and money...
In addition to those, for every decision you refute, recommend a superior alternative, and again, frame it in terms of time and money.
Now, this won't be a one-sided thing, you'll likely get into a conversation, and a lot of "why's" will try to extract that technical minutiae answer from you, which you might want to mention at some point in the exchange, but don't give it up easily, and do not emphasize it. Make sure you continue to emphasize the more convincing frames: time and money.
Based on my experiences, I'm throughly convinced that most of the time the consultants will tell management what they want to hear. If management doesn't like the answer then they go to someone else. How likely it is that they will accept an unwanted opinion from a consultant is solely based on prestige.
Read all the horror stories of shitty software or ERP implementations. Often it is the consultant's fault - since they are technically weak.
It’s a staggeringly bad product and it blew my mind now it was impossible to convince anyone of this.
We used pictures, for crying out loud. We did all the things everyone here has been helpfully suggesting. Talking about business consequences (dire), costs (enormous), risks (massive), etc…
The response was: “the sales guy from the vendor assured me it’s all fine. This is just your opinion.”
The causal chain of a->b->c was just not sinking in.
The CTO he could not judge anyone’s expertise not just mine — he also couldn’t judge the lack of expertise by the vendor and their sales team.
So he chose based on who has the nicer suit, the shiniest smile, etc…
Does this company do something where this latency would be noticeable? Can you give an example of business impact that would result from it?
If you can, why don't you? If you can't, then sounds like it doesn't matter.
The CTO didn't get to be the CTO by optimizing the irrelevant.
Fascinating. I’ve never professionally worked in what it sounds like you do, so I was moderately agreeing with you until this.
I’ve played Dota likely as long as you in addition to playing at a semi pro level (placing well in a couple official pro qualifying tournaments as well as playing pubs with the players the AI played against) and I couldn’t disagree more.
It was impressive, but it’s main advantage came from its inhuman reaction times. They added some buffer but still didn’t account for 5 players working in perfect unison. That kind of coordination is an enormous advantage in a game like Dota. I left roughly feeling like I do now about AI - very impressive, but way over hyped and only sold to people that don’t truly get Dota.
(I'm not a pro or anything, just high rank, but to use myself as an example) I try to make an effort to use the correct words when explaining things to friends. But even I find myself saying things like 'just look at the [lane] creeps' to explain what I want my laning partner to do and then I realise how unhelpful it is. Because when they see the creeps they don't understand what I see.
Years ago I was active in Tae Kwon Do and achieved black-belt status. One time, during a sparing match with my teacher, I was astounded to be able to spot a hole in his defense. In fact, I was so distracted by my perception that I completely froze and he scored a point. I like to think that my seeing that hole gave me a glimpse into what it might be like to be good at TDK. I still think about that experience to this day.
It's an issue that I struggle with nearly daily. I can't convince customers to pay me what I'm worth, because they can't judge my true value. Meanwhile, they'll happily pay Deloitte or Accenture 3x as much as what I charge, and then take the misguided ramblings of a junior-sold-as-senior at face value, not knowing the difference.
> I’ve noticed that in nearly every skill tree I’ve climbed, there comes a point where you begin to notice certain nuances of skill that novices not only don’t notice, but that you cannot articulate using the commonly accepted vocabulary of the skill.
This happened to me just over the last month or so. I was trying to explain to a CTO how horrifically wrong it is to plumb their entire cloud network through just a pair of virtual machines for "security". I just could not make him understand that 5 milliseconds of additional latency in the era where microseconds are an eternity is a disaster for a veritable smorgasbord of upcoming projects. It just. Would. Not. Sink. In.
To some people, "micro" and "milli" sound the same. Latency just doesn't compute as a thing to be concerned about.
I've spent my career performance tuning, but then how do I explain this to people who think a 60-second timeout is a performance problem best solved by buying another million dollars worth of kit?
The article jumps between martial arts and the world of finance, so I'll jump to another example: AI playing games.
When I watched AlphaZero play chess, I was just a tiny bit impressed. I watched it beat the Go grandmaster and I was not very impressed. Then I watched it play Dota 2 -- in which I've sunk several thousand hours -- and holy crap. Wow! It was suddenly terrifying how good it was, because I could judge the nuance of what it was doing.