Comment by jdlshore
5 days ago
You must not work on these sorts of systems. It can easily take more than 24 hours. In case you’re genuinely interested in learning more, here’s how it works.
There are good reasons for it working this way, BTW. The needs of a company with hundreds or thousands of people are different than the needs of hobbyists and early-stage startups.
1. A user experience designer analyzes the user flow and decides where to put the cancellation button. They make decision about style, layout, and wording. This isn’t a ton of work, but something so critical to the company’s business and retention numbers will probably involve a lot of review, discussion, and bike shedding. This could easily take 24 people-hours of work on its own.
2. Somebody programs the front-end change. They probably have to put it behind a feature flag so it’s not visible until the back end is ready.
3. Somebody programs the back-end. They think about security, authentication, authorization, CSRF. That’s probably handled, but again, this is a critical feature and deserves extra care.
4. Somebody programs the interface to the company’s internal systems. They’re usually kind of a pain to work with. Billing, marketing, support, customer success. Something probably sends an email to the user. Maybe there’s a follow up flow to try to get them back with a special offer a month later. Etc.
5. The change is tested. Preferably with automated tests, but a feature like this has tendrils into systems throughout the company, and a lot of moving parts, so manual testing is also important. If it goes wrong, it’s a big deal, involving the potential for chargebacks and lawsuits, both of which are expensive at scale.
Throughout all this, you’re dealing with legacy code, because billing is one of the oldest systems the company has, and the one with the most risk of change, so the code is nasty and doesn’t follow current conventions. Every change is painful and tedious.
It’s alien to you that this could take more than 24 hours? At any company of size, I have trouble imagining it taking less.
Of course now that the FTC rule is well known, anyone designing a new system would require click-to-cancel. The new burden is low, but at the time the big companies probably spent millions to fix it.
A more extreme example would be the US Clean Air Act and how the EPA extended the rules to regulate carbon dioxide emissions. Obviously going to cost a lot of money, but a necessary change to dodge climate disaster. That rule had to wait for Congress to pass the Inflation Reduction Act to become legal. Hopefully this minor consumer protection rule will be supported by Congress as well.
We are assuming the calculation for the number of companies affected is correct. If they are using a provider like Shopify or a WordPress plugin, the cost will only be to upgrade the plugin.
I don't know that the backend is necessarily needed. If the button only opened a support ticket/sent an email then the rest can be done by the employees who already processed cancellations on the phone. They just don't need to be on the phone with the customer to do it.
Exactly, currently at some point on page 10 of click-throughs, is the "real" cancel button, and essentially you just need to make that the "first" cancel button and link straight to it.
How many companies of "size" you know of? Because that process looks HORRIBLY inefficient and only primed to extract as much money of the consumer. You just need to put it in the account screen. A big red button. Your _workflow_ is there to make excuses. If the move was the other way, you would gladly pay the cost, but because it actually hurts your "business model" then it is suddenly a problem. No buddy, I call BS on all that, and call BS on the law itself.
So, you're holding a strong opinion about something that you're completed uneducated about and have no experience with?
ANY software change in a non-hobby business goes through a change process.
One as significant as an entirely new account cancelation flow requires extensive planning, design and testing.
What if you have equipment like a set top box? What if a shipping label needs to be mailed out? What if there are state-by-state regulations that must be complied with? What if you have to issue prorated returns of prepaid subscription fees? What if different accounts have different cancelation terms because of bulk pricing? And a million other things that you have to think about, design for and test.
Of course you can solve all this. But it's certainly not "BS" that it'll take more than 24 hours.
The FTC knew this. They cheated their process to ram through a rule. But you like the rule they tried to cheat to implement, so it's ok then, I guess.
For the types of issues we’re discussing here, we’re talking about companies making more than $50mm yearly, which is about 75-100 employees. So successful small businesses and larger. I don’t have exact numbers, but this size business is very common. Most professional programmers will have seen the issues I’m talking about.
Even a company of 100 people should have a change process. I work in infra mostly and to even shut down a VM that has already been decommissioned I have to go through a change process. You can't have a dozen IT/dev cowboys just doing things they think are fine on a whim because you have to take into account what all the other teams in the company are doing. We've got 30 people in our IT dept and change processes are absolutely crucial to not fucking things up on a regular basis.