HNHacker News
TopNewBestAskShowJobs

ThrustVectoring

9,569 karma · joined April 3, 2014

submissionscomments
ThrustVectoring··on The Time Tax
The computerization of bureaucracy is probably another big part - since the people processing paperwork have more productive ways to manage the information and processes they require, they can mandate more of it without falling over and requiring clerks that they cannot afford to hire.
ThrustVectoring··on If Richard Feynman applied for a job at Microsoft (2002)
If you hit the Pepsi button and get Pepsi, you know it's random, so the random button has to be Coke (and Coke gives Pepsi). So picking the Pepsi button first still works in two tries - you either get a Coke all the time, get it randomly on the first try, or figure out which button gets you Coke.
ThrustVectoring··on Even if you’re paying, you’re still the product
"Commoditize your complement" means that cheap-to-provide yet valuable services will be offered for free, simply because it drives down the total cost of buying from their main profit center. Regardless of how valuable Amazon's open-source AWS-related tooling is to developers, it's still not in Amazon's interests to charge for the software.
ThrustVectoring··on Amazon.com's Conditions of Use – Disputes now resolved by the courts
As far as I can tell, the actual point of arbitration is more to dodge the extensive discovery and subpoena powers of actual courts. If you're suing Amazon in small claims court, if you can convince the judge that Jeff Bezos' testimony meets the legal bar, you can compel him to testify in court. Or you can compel Amazon to turn over broad swathes of potentially damaging information. You can even force third parties to come in and testify, if it should be relevant.

In arbitration, you do not have a judge, so there isn't subpoena power, and discovery is extremely curtailed.

ThrustVectoring··on Study finds 83% of software developers feel burnout
It's not at all unique, it's a mix of "efficiency wages" and tournament-based compensation.

Efficiency wages just means that the pay is set higher than what it'd take to clear the market. It means that people who'd otherwise have even better career prospects become programmers instead, people who would otherwise quit to work in a different field or for a competitor don't, and that employees generally see jobs at the current compensation level as something relatively scarce and hard to acquire in unemployment. Employers pay these efficiency wages because getting more out of their programmers is worth the extra expense, but on the flip side it means that they're more able to ask for overtime and otherwise apply stressors to employees.

Lots of places have efficiency wages, and they all tend to be stressful AIUI. Oil workers are notorious for this - massive salaries for dirty, dangerous, and difficult work shifts.

Tournament theory is more about how difficult it is to measure programmer productivity. So, don't even bother; instead get a sense of which programmers are doing better than the others, and make a significant portion of compensation based off "winning" this vaguely stack-rank shaped "tournament". In theory, if employees are risk-agnostic, this is as economically efficient as measuring their output and paying piece rates, but without the overhead of measuring output. In practice, this is yet more incentive for overtime, hard work, extracurriculars, networking, etc. Basically, instead of paying for the direct output of giving your job your all, they pay the best at doing that the most and let people figure out how that should translate.

The stereotypical jobs for tournament theory compensation are corporate executives and professional athletes - how hard an athlete works in the gym and what statistical performance is worth what are hard questions, but "who's the best 10 players in the NBA" is a lot easier to answer.

Anyhow, that's my understanding of the main factors leading to software developers being so well-compensated in the US and why there are so many unhappy and burnt-out developers. Part of the same complex IMO, it's fundamentally a result of programmer productivity being so important to businesses and yet so hard to measure.

The thing I'm curious most about is how pretty much all the example jobs I gave are skewed male. It's not every male-skewed job that fits the bill, but it's still something. I'm not at all sure what, though.

ThrustVectoring··on Did lead poisoning cause downfall of Roman Empire? The jury is still out
One of the more compelling factors I've heard of for the fall of the Roman Empire is their tax system for agricultural land. Essentially it's a per-acre tax regardless of the productivity and ease of access, with the obvious problem of marginal land getting abandoned because the tax wasn't worth paying.

I read that a lot of the invading tribes were treated as liberators from the Romans for that very reason. Malthus was in full force in the era, so you had edge-of-starvation villages next to productive land that could be cultivated but wasn't due to taxes, and the barbarians rolling in meant you could do that now.

ThrustVectoring··on Dear Google: Public domain compositions exist
Google cannot categorically ignore copyright claims without opening themselves up to potential legal liability. If you've made a hundred bogus copyright complaints to Google and they cut off your access, and you send in another complaint, they still have to either A) shove it into a DMCA safe-harbor exception, or B) risk knowingly continuing to violate your copyright. Option B is straight up not happening when the risk is that high, not without expensive lawyers reviewing the situation.

There isn't and will never be a "strikes" system for false copyright claims.

ThrustVectoring··on Why do recipe writers lie about how long it takes to caramelize onions? (2012)
"Desirable result" isn't particularly well-defined due to the variability of personal taste. Like, one useful skill for a home cook is to read a recipe and think something along the lines of "I think I'd like that more if it had more garlic".
ThrustVectoring··on Dear Google: Public domain compositions exist
Google does not have that kind of superior legal negotiating position. Copyright owners use ContentID and revenue sharing in lieu of suing Google for knowingly participating in copyright infringement. If Google locks out a copyright owner from their alternative to legal disputes, the next step is the copyright owner sending large quantities of mail to Google's legal department to get handled manually. Complete non-starter, Google needs to have a highly automated system with copyright owner participation, and as I understand it copyright owners are forced to opt-in if it is provided.
ThrustVectoring··on Why do recipe writers lie about how long it takes to caramelize onions? (2012)
I meant "creative" way less pretentiously than you read it - perhaps more accurate is more like "personalization". People like different things in different amounts, so recipes paint a broad target and let home cooks hit whatever particular point in it that they want.

Like, making a peanut butter sandwich has this factor - different people like different breads and peanut butters in different amounts, so it's up to you to pick something and make it a food. The underspecified quantities and characteristics in a hypothetical peanut butter sandwich "recipe" are just a hint that you have wide latitude to make choices.

ThrustVectoring··on Why do recipe writers lie about how long it takes to caramelize onions? (2012)
The answer is that a recipe is a seed idea for a creative process, not a fixed set of steps that you have to follow exactly or ruin the magic.

> What's "high heat" exactly?

A suggestion that you want caramelization and/or browning

> What is a "pinch" of salt, and how does it differ from a "dash" of it?

Doesn't matter, you should salt to taste anyhow, this is merely a reminder to do so

> When it says "sprinkle some X" how much should you sprinkle?

Smell it or taste a little and guess

> How much oil is in a "drizzle"?

Enough to tell that it's there, not enough to soak it through

> How many grams is a "medium potato"? Or an onion?

Doesn't matter, you'll wind up with a range of vegetable quantities and they all roughly work, just end up in slightly different places.

ThrustVectoring··on Why do recipe writers lie about how long it takes to caramelize onions? (2012)
Bread sure, bust out the scales, but most recipes don't actually need anything more than a vague outline of what you're trying to do. Tolerances on soup, for example, are extremely wide, and any measurement is picking an arbitrary point in flavor space and declaring it "correct" when much of anything will do. And the idea of a "correct" way to do it encourages home cooks to treat the process like a black box where any misstep will ruin things, rather than having levers to adjust things to taste.
ThrustVectoring··on Supreme Court sides with high school cheerleader who cursed online
Students don't (and shouldn't) have the right to disrupt the classroom with their speech. Like, you can't just go and yell expletives in a Wendy's and expect to not get kicked out, and IMO the same should apply to classrooms (even though it's the government that is enforcing these rules here, rather than private property owners).
ThrustVectoring··on Ask HN: I was hit with a patent troll lawsuit, how do I deal with it?
> the NPE has zero assets to attach so you always bear the legal cost.

I've vaguely heard of this so it might not be directly relevant, but I've heard of "performance bonds" or the like being mandated for litigants. Basically the idea is that the litigant has to put up a sum of money to continue the lawsuit so that they don't get the free optionality of collect-if-win / have-no-assets-if-lose scenario.

ThrustVectoring··on WD to Settle SMR HDD False Advertising Class Action Lawsuit at $160 per Drive
Class-action lawsuits are designed to protect companies from dealing with class members individually deciding to sue them. So the method for getting a full refund is to be one of the few people who opt out of a settlement and decide to threaten to sue in small claims. It's cheaper to just give you the $160 you're demanding rather than send an employee to court to defend it, even if the company wins.
ThrustVectoring··on Zero-downtime schema migrations in Postgres using views
The SQL in question which was problematic for me (tables renamed):

SELECT posts.*, MAX(COALESCE(comments.created_at, posts.created_at)) AS latest_timestamp FROM posts LEFT OUTER JOINS comments ON posts.id = comments.post_id GROUP BY posts.id ORDER BY latest_timestamp desc

In short, this is sorting posts by the most recent comment, with a fallback to the post date if the post has no comments on it. Hard to get rid of the grouping here and get the same data back.

ThrustVectoring··on Zero-downtime schema migrations in Postgres using views
I looked into this recently, and views cover like 98% of the functionality that the client app needs from Postgres. One issue I ran into was that Postgres forgets that the primary key is a primary key when pulling from a view, which breaks some queries that rely on grouping by the primary key.

https://dba.stackexchange.com/questions/195104/postgres-grou... has some more info on this

ThrustVectoring··on Why bugs might feel “impossible”
Had a fun one relatively recently that was a mix of "hard to reproduce" and "hard to get internal state information". Flaky test in a rails app that would fail one in every ten to hundred runs of the full test suite with "this random number is too big to be a primary key" kind of message. Root cause was an edge case passing through multiple swiss-cheese holes in various assumptions:

1. ActiveRecord makes an assumption that primary keys are integers, and does its own check whether or not they are big enough to be persisted (rather than catching a database error). 2. Furthermore, it does this by coercing the key to an integer if it isn't already one. This is done with to_i, which for a string takes any leading 0-9 characters and discards the rest. 3. We had a table with a string primary key (UUID of some sort) 4. One of our test factories was generating a hexadecimal string for that primary key 5. And the test factory was not deterministic and did not respect the --seed flag in the test suite.

So the end result was a very innocuous-looking line of code occasionally generating a hexadecimal string with enough leading numeric digits to be larger than ActiveRecord thinks you can stuff into a table, causing an extremely cryptic error message. It does not reproduce with the same test seed. And the stack trace was about three frames and discarded all the context - all I could see was that ActiveRecord was throwing a fit over somehow mysteriously receiving a large number somehow.

Figuring that out was honestly like, 80% pure luck. Chased down a hunch that it was test object generation somehow and did that in the REPL, then narrowed it down via looking through child object generation until the haystack was small enough that I couldn't not find the needle.

ThrustVectoring··on ProPublica's tax story
If you die with $100m of stock and $10m in loans, you pay estate taxes on $90m of net assets and $0 of capital gains (your heirs get a step-up in basis on death). If you die with $90m of stock because you sold $10m of it for consumption, you pay the same estate taxes and additional capital gains on the sale.

In short, the estate pays off the loans by selling stock immediately after death.

ThrustVectoring··on Is Euler’s Identity Beautiful? and If So, How?
The concept you are looking for here is algebraic closure. If you want "ax^2 + bx + c" to have numeric roots and be factorable for all coefficients, you have to expand your definition of number from real to complex.

Probably the most blatant physical example of this is modeling mass-spring-damper systems. The differential equations will map the physical coefficients to such a polynomial, and the roots of that polynomial determine the system's behavior. Without complex numbers, you wind up only being able to describe real exponential responses and don't have the vocabulary to describe the underdamped (and oscillating) system responses with complex exponentials in the results.

ThrustVectoring··on Charlie Bit My Finger video to be taken off YouTube after selling for £500k
It's still limited edition in that there's only one first minting of an NFT, and with the blockchain you can tell whose is which.
ThrustVectoring··on One man’s fight for the right to repair broken MacBooks
"ghost shift" production with the trademarks is counterfeit, but isn't without the trademarks. Regardless of marking it's still likely unauthorized use of intellectual property.
ThrustVectoring··on Sixth grader expelled after Zoom provided possibly inaccurate IP address
It's pretty cheap to send letters to news sites legal departments after a victory in court over the district, demanding an amendment to the story or removal of the child's name. Most sane newspapers would not risk a defamation suit over it.
ThrustVectoring··on Treasury Calls for Crypto Transfers over $10k to Be Reported to IRS
Foreign exchange trading is usually on the futures market, and the futures contracts are an extremely standard financial asset. I believe the tax differences alluded to are of the form "If you buy a currency and then later exchange it for goods and services, you have to pay capital gains taxes if it was Bitcoin and you don't if it was Euros"
ThrustVectoring··on The End of Retirement (2014)
If they invested the money in a 401k instead, the social security taxes would still go to current retirees by bidding up inflated asset prices. Building more cars in 1990 does not cause there to be more total nursing care in 2020, all your proposal does is change how retiree income is distributed.
ThrustVectoring··on The End of Retirement (2014)
Pay as you go vs fully funded makes little difference - consumption goods such as nursing care cannot be carried over from one period to another. Unless France is going to use the depleted pension fund as an excuse to cut benefits, being underfunded only makes a difference in terms of whether the next generation of workers transfers goods to retirees in the form of taxes or pension fund contributions.
ThrustVectoring··on Marriott Files Lawsuit Against Unknown Robocalls Perpetrators
It's a pure PR stunt unless they have a concrete plan for what they're subpoenaing the telecom companies for.
ThrustVectoring··on Marriott Files Lawsuit Against Unknown Robocalls Perpetrators
or someone whose story is "idk someone on craigslist paid me $300 to set up a business phone account". They'd want these anyways to ensure that they retain access in case of the network actually shutting them out.
ThrustVectoring··on Marriott Files Lawsuit Against Unknown Robocalls Perpetrators
Sure, but that doesn't necessarily do all that much to stem the tide. The spam callers care a hell of a lot more about maintaining access and call volume than the telcos care about ensuring spammers stay off the system; if they don't have multiple redundant systems run by facially independent cut-outs, they're organizationally incompetent.

Like, employing someone to hire people off craigslist to help "set up their new business" by opening an outbound phone account under the craigslister's name is cheap compared to the gains from running the spam network.

ThrustVectoring··on Marriott Files Lawsuit Against Unknown Robocalls Perpetrators
It's less technology and more operations research. Dumping large volumes of unwanted calls into the US market can be monetized and scaled, and the response from US industry/regulators/law-enforcement is anemic enough that being fraudulent and illegal doesn't put a damper on things.
← PreviousPage 8 of 34Next →