Apple’s test of a new iOS subscription payment system is a huge step back

Apple is testing out a new subscription payment system for iOS devices that would let developers automatically charge a higher subscription-renewal price rather than ask for explicit acceptance, so long as the user is notified ahead of the renewal price increase and given the chance to cancel their subscription.

While this is a fairly common practice with subscription services, this isn't the way this is supposed to work on iOS. From Apple's developer documentation:

When you increase the price of a subscription, Apple informs affected subscribers via email and push notification and asks them to agree to the new price. On iOS 13.4 and iPadOS 13.4 and later, affected subscribers are also notified through a price consent sheet that automatically displays in your app… If they don’t agree, their subscription expires at the end of their current billing cycle.

The new payment system was first flagged by developer Max Seelemann on Twitter and later confirmed by TechCrunch.

See more

The issue appears to be limited to the Disney+ app for now and only seems to affect a limited number of users as part of a pilot test of a new iOS payment system.

Apple told TechRadar that the company is “piloting a new commerce feature we plan to launch very soon. The pilot includes developers across various app categories, organization sizes, and regions to help test an upcoming enhancement that we believe will be great for both developers and users, and we’ll have more details to share in the coming weeks.”

It's not clear whether this system, if implemented, would be open to all developers on the iOS platform, or whether only a selection of developers would be granted the ability to auto-charge for a price increase.


Analysis: while it could be worse, this is still a terrible idea

One of the worst things about subscription-based models is that they require a lot of management and juggling on the part of the user. Who among us hasn't completely forgotten that some subscription charge was due on a certain date and only realized it once we suddenly had a lot less money in the bank than we thought we had?

This is especially problematic when you're dealing with an annual subscription, which is a large chunk of money and is much more likely to be forgotten by the user (making it more unlikely that it will be cancelled ahead of the renewal charge). Subscription services are a very appealing model for businesses for that reason, and a major headache for users.

Apple's current system is about as good as you can expect, all things considered. It can't save you from forgetting about a looming renewal and over-drafting your bank account as a result, but at least it requires you to explicitly accept a higher price after an 'introductory' rate expires and automatically cancels the subscription if you don't do anything. 

We would much rather see Apple stick with that system than let a company automatically bill users a higher rate if they don't take action on it. On the plus side, it appears that the renewal-price increase notification is very obvious and there is at least a link for users to review the subscription and cancel it if they so choose.  

There's no getting around the fact, though, that this could open the door for ne'er-do-well developers to take advantage of users by starting off at a very low price and then jacking it up considerably for the renewal. While most users would immediately move to cancel if they saw that kind of scammy behavior, even with the new notification system, there's going to be some small subset of users who misread, misunderstand, or just miss the notification and find themselves getting hit with a higher-than-expected charge out of the blue.

Given that potential nightmare scenario, it's likely that only certain large developers would be allowed to automatically charge you an increased price in this way, which raises a different problem. This would give bigger players in the industry special treatment that puts smaller, legitimate developers at a disadvantage, with no obvious benefit to the user.

Given Apple's generally good track record on user protections, this feels like a big step back and is disappointing to see. If the big fish in the App Store pond do get special privileges, we should stop pretending that Apple's platform is as fair as the company claims it is. 

Since this appears to be a small pilot test, we hope Apple comes to see how valuable its current subscription payment model is for its users and doesn't break what is already working well. 

TechRadar – All the latest technology news

Read More

Microsoft wants to make a potentially huge change to JavaScript

Microsoft has backed a proposal to bring optional and erasable type syntax to JavaScript in an effort to make its TypeScript language both faster and easier to use.

In a new blog post, the software giant provided further insight on the proposal and what it aims to do. Essentially, the proposal is calling for type annotations to be added to JavaScript code that can be checked by external type checkers and treated as comments by a JavaScript engine at runtime.

A set of syntax for types that engines would ignore but TypeScript, Flow and other tools could use would also need to be created as part of the proposal.

If the proposal is approved, developers would be able to run programs in TypeScript, Flow and other static typing supersets of JavaScript without the need for transpilation according to InfoWorld.

Type syntax in JavaScript

The new Stage 0 proposal was written and put forth by Gil Tayar, Microsoft's Daniel Rosenwasser, Igalia's Romulo Cintra and Bloomberg's Rob Palmer and is available to read in its entirety on GitHub.

The reason behind the proposal is that over the past decade, static type checking has proven to be fairly successful. In addition to Microsoft's TypeScript, Google created its Closure Compiler while Facebook built Flow to provide syntax for declaring and using types in JavaScript.

At the same time, 69 percent of respondents in the 2021 State of JavaScript survey said that they use TypeScript to compile JavaScript and static typing was voted as the number one feature missing from the programming language.

It's worth noting that Microsoft isn't calling for TypeScript's type checking to be added to every browser and JavaScript runtime. Instead, the company has proposed a JavaScript syntax compatible with TypeScript that could be used by any type checker while being ignored by JavaScript engines.

Via InfoWorld

TechRadar – All the latest technology news

Read More