Live data from Hacker News

Squeeze the hell out of the system you have

blog.danslimmon.com

211–220 of 383 posts

Re: Squeeze the hell out of the system you have

#211

The bit on the database performance issues leads me to my hottest, flamiest take for new projects: - Design your application's hot path to never use joins. Storage is cheap, denormalize everything and update it all in a transaction. It's truly amazing how much faster everything is when you eliminate joins. For your ad-hoc queries you can replicate to another database for analytical purposes. On this note, I have mixe…

Honestly I couldn’t disagree more. I built a startup and paid little attention to perf for years 1-5, and finally in year 6 we started to get bitten by some perf issues in specific tables, and spent a few engineer-months optimizing.

In terms of tech debt it would have been way more expensive to make everything perform well from the start, we would have moved much slower and probably failed during a few crunch points.

Instead we paid probably a few $k/mo more than we really needed to on machines, and in return saved man-months of effort at a time when we couldn’t hire enough engineers and the opportunity cost for feature work was huge. (Keep in mind that making everything perform well would have required us to do 10-20x as much work, because we could not know ahead of time where the hot spots would be. Some were surprising.)

Joins may be evil at scale, but most startups don’t have scale problems, at least not at first.

Denormalizing can be a good optimization but you pay a velocity cost in keeping all the copies in sync across changes. Someone will write the bug that misses a denormalized non-canonical field and serves up stale data to a user. It’s usually cheaper (in total cost, ie CapEx+OpEx) to write the join and optimize later with a read-aside cache or whatever, rather than contorting your schema.

Re: Squeeze the hell out of the system you have

#212

Earlier quoted context omitted.

https://en.m.wikipedia.org/wiki/Helmuth_von_Moltke_the_Elder Moltke's thesis was that military strategy had to be understood as a system of options, since it was possible to plan only the beginning of a military operation. As a result, he considered the main task of military leaders to consist in the extensive preparation of all possible outcomes.[3] His thesis can be summed up by two statements, one famous and one l…

I’m reminded of the Eisenhower line: “plans are worthless, but planning is everything.”

Classic.

Re: Squeeze the hell out of the system you have

#213

Earlier quoted context omitted.

If I remember it correctly (it was a long time ago), he never fully supported the war. It didn't take a genius to notice that the goals set by the presidency were (literally) impossible and not the kind of thing you do achieve a war. But whatever position he had, Iraq turning into a clusterfuck wasn't a sign of bad leadership by his part. It was a sign of bad ethics, but not leadership. His options were all of gettin…

As history, this is completely incorrect, but beyond that, if you don’t believe in the mission of the President in committing an act of war, you have a responsibility to resign, and it can’t be bracketed as “bad ethics”. Anyway, another historical point besides what the other commenters have said is that Rumsfeld believed in “transformation” which meant you could do more with less in modern war. He was totally wrong…

There's a distinction missing here. Rumsfeld's Transformation idea was correct with regard to the invasion, which was one of the most successful invasions in history, period. No one has ever taken over such a large country, so far away, so fast, with so few troops, before or since.

The occupation afterward was where the clusterfuck came in, and (somehow) none of the preparation had been directed toward that.

Re: Squeeze the hell out of the system you have

#214
post #157

Earlier quoted context omitted.

JFYI, the "Unknown Unknowns" quote is from before the invasion (2002-02-12). It was deflection on whether there was evidence of Iraq building WMDs or of cooperating with e.g Al Qaeda. > Q: Could I follow up, Mr. Secretary, on what you just said, please? In regard to Iraq weapons of mass destruction and terrorists, is there any evidence to indicate that Iraq has attempted to or is willing to supply terrorists with wea…

I haven't read the transcript of this conversation in a long time, but thank you for sharing it. The sophistry of his argument is extreme. Yes, of course there are always "unknown unknowns"-- but the statement "there is no evidence that Iraq is supplying WMDs to terrorists" is not a statement made in a vacuum, in which all permutations of known/unknown are equally likely.

It really is jarring that this is about the actual justification for a war, and his response basically boils down to "well we don't know they haven't done it or if they might in the future".

Re: Squeeze the hell out of the system you have

#215
post #90
post #89

Earlier quoted context omitted.

But for the saves the structure is visible?

You can update underlying data via a materialized view.

Heck, at least with SQL Server 2017, I've been able to write updates to a thin view, and so long as the columns referenced were not ambiguous, the database would handle the underlying tables and locks required.

Re: Squeeze the hell out of the system you have

#217
post #78
post #72

Earlier quoted context omitted.

Rumsfeld's got some great quotes, most of which were delivered in the context of explaining how the Iraq war turned into such a clusterfuck, and boy could that whole situation have used the kind of leadership Donald Rumsfeld's quotes would lead you to believe the man could've provided.

> could've If someone is 83.7% likely to provide good leadership, how would you evaluate the choice to hire that person as a leader in the hindsight that the person failed to provide good leadership -- was it a bad choice, or was it a good choice that was unlucky? (Likelihood was selected arbitrarily.)

Is that number (publicly) known when you hire the person?

If yes, you just evaluate the choice based on that probability (and other things you knew at the time), not on the actual outcome.

Prediction markets are one way to make these kinds numbers known.

Re: Squeeze the hell out of the system you have

#218
post #130

Earlier quoted context omitted.

Mike Tyson said it more simply: "Everybody has a plan until you get hit in the face."

Nope. Let's juxtapose them and see: Von Moltke: "No battle plan survives contact with the enemy." Tyson: "Everybody has a plan until you get hit in the face." Pretty much the same meaning, and Von Moltke's quote is three words shorter, so no, Tyson's quote is not simpler. Also, Tyson was ungrammatical, IMO: "Everybody" vs. "you" in the same sentence, referring to the same entity. Grammar experts, correct me if I am w…

Simplicity isn't a function of number of words alone.

> Also, Tyson was ungrammatical, IMO:

> "Everybody" vs. "you" in the same sentence, referring to the same entity.

Seems perfectly understandable to English speakers. (And that's pretty close to how English grammar is defined by descriptive linguists.)

Have a look at http://fine.me.uk/Emonds/ for an exploration of these kinds of concepts.

Re: Squeeze the hell out of the system you have

#219

Earlier quoted context omitted.

Nope. Let's juxtapose them and see: Von Moltke: "No battle plan survives contact with the enemy." Tyson: "Everybody has a plan until you get hit in the face." Pretty much the same meaning, and Von Moltke's quote is three words shorter, so no, Tyson's quote is not simpler. Also, Tyson was ungrammatical, IMO: "Everybody" vs. "you" in the same sentence, referring to the same entity. Grammar experts, correct me if I am w…

[flagged]

If you want to express your disagreement with what fuzztester said, please say so.

There's no need to attempt a mental diagnosis of people over the Internet. (Nor is there any need to equate thing you don't like with certain mental disorders. No need to be rude to autistic people like that.)

Re: Squeeze the hell out of the system you have

#220
post #59

I’m reminded of one of my favorite sayings: You go to war with the army you have, not the army you might want or wish to have at a later time. You may want to ignore that this this comes from Donald Rumsfeld (he has some great ones though: “unknown unknowns …”, etc.) I think about this a lot when working on teams. Everyone is not perfectly agreeable or has the same understanding or collective goals. Some may be subop…

Great point about working on teams. For the vast majority of tasks, people are only marginally better or worse than each other. A few people with decent communication will outpace a "star" any day of the week. I try to remind myself of this fact when I'm frustrated with other people. A bit of humility and gratitude go a long way.

> Great point about working on teams. For the vast majority of tasks, people are only marginally better or worse than each other. A few people with decent communication will outpace a "star" any day of the week.

Depends on what you are working on. Btw, good communication can also make someone a 'star' and elevate the whole team.

> I try to remind myself of this fact when I'm frustrated with other people. A bit of humility and gratitude go a long way.

That's good advice for most situations.

Post reply on HN