ctroein89's comments

ctroein89 | 5 years ago | on: Apple Disabling 'Sign in with Apple' for Epic Games on September 11

> Microsoft and Playstation also allow for cross-platform play

Sony explicitly didn't allow for cross-play until 2 years ago [https://kotaku.com/sony-is-finally-allowing-cross-play-on-th...], even though it was technically possible before then [https://www.engadget.com/2017-06-24-rocket-league-cross-netw...]. In fact, the only reason Sony opened up to cross-play is due to pressure to stay competitive with rival platform Xbox. This was a take-it-or-leave it situation, but Sony was too big to leave. Nothing changed until Sony caved to social pressure.

If the argument is that Apple is a unique kind of device that Apple has a monopoly over, it would hard to argue that Sony and Microsoft don't enjoy the same monopoly powers. On the other hand, if argument is that it's easy enough to switch from Playstation to Xbox, then how is that different from buying a new phone?

In fact, I would bet that Epic sued Apple not because it's more monopolistic, but because they want to set a legal precedent that they can then apply to Playstation, Xbox and Switch, without threatening Epic's core business on consoles.

ctroein89 | 5 years ago | on: Why are there 5280 feet in a mile? (2009)

For carpentry, 12-inches-to-a-foot isn't actually that useful, since wood is never the nominal size. For lumber, nominal sizes are measured assuming that sawing and planing remove no wood, but sawing and planing will remove about 1/4 to 1/2 an inch in each direction. That means that you can't stack two 2x4 to get an exact 4x4, and you can't use dimensional lumber to fill a nominal 1 foot gap without cutting.

Carpentry, both the house-building and furniture making kinds, have adapted by emphasizing tricks to measure lumber without rulers. That means starting with more wood than needed, and cutting down to make pieces fit.

ctroein89 | 6 years ago | on: When will Google shut down Stadia?

> Has anyone actually done that, or are you speculating?

There are videos on YouTube of people using Xbox game streaming, but it requires setting up a VPN at home which presumably few people do.

Edit: with the Stadia launch, I'm currently working on setting up a Raspberry PI as a VPN server to try this myself.

ctroein89 | 6 years ago | on: When will Google shut down Stadia?

Remember, for years, Xbox One has allowed for local streaming from Xbox One consoles to Windows 10 PCs via the Xbox app over LAN, which gives Microsoft's Project xCloud the benefits of: * significant experience with the fundamental technology, * no new special hardware required (they can tweak existing Xbox One hardware), * a much larger library of games currently available for download (for consumers who want to switch to a local console), and * an existing Netflix-of-games program via Game Pass (for consumers interested in pure subscriptions)

As-is, Google just happens to be first-to-market in the current generation of on-demand game streaming options. But we've seen this technology before, and I could get the same results with a high quality VPN set-up to connect to a Xbox at home.

ctroein89 | 6 years ago | on: Obscure Model Puts a Price on Good Health and Drives Down Drug Costs

> It's not the patent system that's causing this, it's a very complex network of regulatory and institutional capture including Medicare, PBMs, insurance companies, insurance regulation, and drug regulation. All other western countries also have patents but don't have the same drug price problems. These problems are showing up even in generic drugs now.

I think this comment comes off as misleading, so I'm going to fill in with knowledge gained from a past career. The regulatory environment didn't create this set-up, and it's not really institutional capture. We've gotten here through the market finding it's own Nash equilibrium.

For the most part, American drug coverage is driven by traditional American employer-based insurance or by insurers who make the majority of their money via employer-based insurance. Medicare provides general drug coverage via Medicare Part D, but Part D is optional for patients, and administered via traditional insurers. For some specialty drugs, Medicare provides drug coverage via medical coverage, but those prices are specifically set based on the average prices paid by commercial insurance. I can't recall how specifically Medicaid handles drug coverage, but it's not a large enough segment of the population to distort the market by itself. Therefore, consider the playbook for a drug manufacturer looking to maximize profits:

The playbook for a drug manufacturer looking to maximize profits in Europe looks like this: * In northern Europe, price your drug based on some value per QALYs as outlined in national regulations * Most of the rest of Europe, assemble a team analyze the bidding and tendering rules and devise a pricing structure around those rules

The relationship between different tendering systems might be complex, because some countries may require that they get the lowest price offered to any of their neighbors, while others are willing to grant complete exclusivity in a class in exchange for more favorable pricing (ie, beating out similar but different competitor drugs). You're going to need a team of specialists to navigate the terrain, but fundamentally the principles are simple.

By comparison, the playbook for a drug manufacturer in the US looks like this: * Raise list prices noticeably * Negotiate with insurers for formulary access in exchange for rebates * Offer co-pay assistance programs for patients * Next year, repeat

List prices are essentially just the starting positions in the US, and are essentially made-up. Insurers will negotiate for rebates, in exchange for not requiring prior authorizations or setting high co-pays or coinsurance. Prior authorizations are generally effective at dissuading doctors from prescribing a certain drug (because it's more paperwork), but the efficacy of prior authorizations goes down as competitor drugs also require prior authorizations (or if there are no competitor drugs). From the manufacturer side, the only way to circumvent prior authorizations would be have pharma reps help fill out that paperwork, but that's illegal for multiple reasons (as I understand it, this one of the crimes that brought down Insys Therapeutics).

Co-pays are generally less effective in dissuading prescribing by doctors. That's because co-pay assistance programs let drug manufacturers cover the patient copays, a) makes the drug manufacturer look good in front of the end consumer, and b) let's the drug manufacturer price discriminate based on patient income after-the-fact. An insurer could choose the nuclear option and ban any drug that has co-pay assistance, but that's a heavy-handed method not popular with patients or employers (especially if the manufacturer structures the co-pay assistance as a separate charity).

Insurers will respond by banding together behind PBMs. The PBM will get a cut of the rebates that they negotiate, so higher prices will make it easier to negotiate with them. Medicare drug coverage is split between being run by traditional health insurers via Medicare Part D (most conventional medications), or having prices set as fixed discount on average prices via Medicare Parts A, B and C (most specialty drugs). Medicaid will be the same way, with a steeper required discount. The drug manufacturer can think about Medicare and Medicaid after thoughts.

Additionally, the drug manufacturer knows that costs will ultimately be passed to employers. While insurers and PBMs need to negotiate for those rebates, they don't need to negotiate that hard since the cost will ultimately be passed onto insurers. As long as the PBMs are negotiating a better deal for insurers than what insurers would have gotten on their own, everyone in the negotiations will be happy with the rebates.

Fundamentally, rising prices are a result of the system being stuck in a Nash equilibrium that's extremely favorable to drug manufacturers that understand the game, which means raising prices.

As a side note, we're starting to get integrated health systems (where the insurer and hospital network are the same company) a side effect of hospital systems consolidating, that can buck this trend. In general, the average working American sticks with the same employer-provided insurance for less than 2 years, since they'll either switch jobs or their employer will shop around for cheaper insurance. Because they tend to dominate specific locales, the integrated health systems tend to stick with patients longer, and therefore have much stronger incentives to find cost effective care for their patients than traditional insurers.

ctroein89 | 6 years ago | on: Benefits of a Monorepo

I've learnt that for "What you release together, you should version-control together", the phrase "released together" needs to be defined as "what gets globally updated at once". If you provide anything for customers to implement, you cannot update those globally at once (because you need the customer to update), and should think about using a multi-repo set-up.

My experience is that testing the interactions of historic versions of different components in a mono-repo against each other is difficult. With a multi-repo set-up, one can checkout to whatever historic version one needs to test. That makes it trivially easy to set-up testing that allows one to test historic versions of components against each.

ctroein89 | 7 years ago | on: Why Semantic Versioning Isn't (2015)

> Another thought about semver: a bugfix requires only a minor version bump, but IMHO this could also be breaking if people were relying on the buggy behavior. I see the value of semver, but I guess it will always be a too-neat abstraction over something that is inherently too complex to communicate in a simple version string.

I find this approach to versioning and bugs problematic, because public APIs are about the contract with the user. It's hard to work with contracts with undocumented portions. If my API says that the behavior is supposed to be one thing, and in certain cases its different, my obligation is to bring the behavior to be consistent with what my API documentation says it's supposed to do. I feel like any other position would be a slippery slope into arguing that any change in behavior needs to be considered a breaking change, and therefore there's no such thing as a patch version change.

page 2