> The biggest technical hurdle is the inability to run external processes on iOS and iPadOS. There’s just no way around it: this is required for modern web development. For example, the TypeScript extension is one of the most popular Nova extensions right now, and it launches and runs the TypeScript compiler. While we could attempt to build the TypeScript compiler into Nova, we can’t possibly anticipate and include every such tool that might be needed by a developer. We’d need to bundle compilers, interpreters, and language servers for just about every programming language in existence, not to mention tools like linters, JavaScript transpilers, and bundlers. The scope would quickly become unmanageable, and we’d always be lagging behind the latest versions of these tools.
To me the logical solution is something like Replit, where your arbitrary programming environment is running off-device. You want to program Go or Python on your iPad? Okay, but the actual code is executing in some cloud machine. Apple should be happy with that, and it'll be a lot easier to maintain all this stuff off-device anyway, than on iPads, where nobody else is maintaining a toolchain.
Of course that doesn't work with a "one-time-purchase" business model....
Yes, they do exist for iOS, they're the existing language servers. iOS is Unix on ARM, it can run most of (all of?) the Node ecosystem (including the existing LSP implementations) just fine. The problem is Apple doesn’t provide the APIs to run them, and bans apps that create their own workarounds to run them (unless they’re in the app bundle, which my understanding is allowed, e.g., that’s how something like play.js works https://playdotjs.com/).
Some apps will run on device and need the full performance e.g. video editing. Other apps will be a thin client.
A counterpoint: how intense would the outcry be if Panic were to make the next versions of Transmit & Coda subscription only (the Mac versions, that is, not their baby iOS counterparts)? I'm probably almost a model Panic customer -- I've paid for every major version of both at release, along with Prompt & Coda for iOS -- but even I'd balk at paying a subscription for a code editor. A paid upgrade every few years? Sure, take my money (see also: Jetbrains). But a monthly subscription for a tool that updates only semi-frequently (e.g. Transmit)?
Yeah, I'm out. Developers (and tech folks in general) are the cheapest, orneriest market. How can I justify to myself a monthly sub to Transmit & Coda when scp & VSCode are free?
JetBrains has all but deprecated this AFAIK. I pay for my JetBrains tools annually and I'm perfectly ok with that. If I ever want to stop paying then I just fall back to the version of software at time of renewal [0]. I'm more than happy with this situation as it lets me get the newest features ASAP while giving JetBrains the "guaranteed" income stream. Major versions every year or so lead to a feast/famine situation for the developer and I'd rather get a feature right away instead of having to wait till they have enough features to justify a paid release.
Can subscriptions allow bad actors to act poorly? Yes, but then I can just cancel my subscription and find someone better. Maybe I'm in the minority but I don't mind subscription-based things if I feel like I'm actually getting value out of them. It lowers the barrier of entry, encourages/incentives continuous improvement, helps developers plan for the future better, and it lays stark the realities of development (if you want ongoing features/fixes you need to pay for them).
[0] https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...
Now if I'm working for someone else, then sure! But, say, an author, who can no longer edit their old works for a republication? Not a chance.
I also think there just are hard limits in what’s a sustainable business. E.g. Small, indie, bespoke notes apps probably can’t support even one person long term regardless if it’s a one time purchase, subscription, paid upgrades, or any other pricing model.
Your app updates go to everyone, even if they've stopped paying their subscription.
So it becomes really tricky to sell a subscription on iOS where, once lapsed, the user can continue to use the latest version available at the end of their subscription.
One way to do this is to have feature unlocks based on a timeline (Working Copy, an iOS git client, does this). Where users continue to receive a subset of features but some new features are locked behind a yearly upgrade payment. This requires littering your codebase with checks that certain features are unlocked based on the user's latest yearly purchase.
I'd love official support for the JetBrains / Sketch subscription model on iOS. As a developer, I would feel bad locking my paying users out of features they paid for just because they stopped subscribing. But I also really can't be bothered spending months developing a robust in-app-purchase feature locking mechanism to work around Apple's limited set of purchase options
Sure, Apple could stop letting users get updates if they stop subscribing but then you have no way to ship ANY updates to that user on an older version. I'm honestly not sure if JetBrains ever ships bug/compatibility fixes for older versions but for apps that are half-free/half-subscription this would be a huge problem. How can I convince people to restart their subscriptions if from their perspective the app has been stagnant since they stopped subscribing? And/or do they even have the option to go to the latest version and just use the free features? Now we are back into the "littering your codebase with checks"-hell that I agree would be terrible to maintain. I'm not giving Apple a pass in the slightest, but I'm having a hard time coming up with what the "gold standard" would be where you could support something like this.
Subscriptions raised that to $240 a year, a 480% increase. Further, since subscriptions were added no features I want have been added. But, I can't just stop and use some version, stop paying and the software stops working.
I see no evidence that Adobe's subscription model has let them invest more effort in making the product great. In fact it's the exact opposite. Before they had to add some features to entice you to pay for the upgrade. now they can just do nothing because you're "renting" the software.
This is the major problem. I do know indies who have used workarounds just so they aren't held hostage. I wouldn't use subscriptions for my own personal creative work. So, yes, the customer base is indeed changing- to those who mainly work for others.
And yet they have ported them not only to iOS but also to M1.
Just because you don't see changes in the UI doesn't mean there hasn't been significant engineering effort spent.
It's hard to define cause and effect, but Adobe's R&D spend is definitely increasing:
https://www.statista.com/statistics/794840/research-developm...
Figma is crushing Adobe. Alternatives like Affinity are eating much of the casual user base.
Again it's impossible to define cause and effect, but OP's claim that they are investing less in product after introducing subscriptions is spurious - R&D has dramatically increased almost exactly in line with revenue.
That remains to be seen, actually. There used to be an "Adobe pipeline" where kids in high school and college would pirate Photoshop, become familiar with it, then be ready to use it when they got a real job. That pipeline shut down when Adobe moved to a subscription model: now all the kids use Figma instead. It'll take a little while to bubble up, but eventually all these design shops are going to find that their new hires know how to use Figma and not Photoshop, and start wondering whether Adobe software is worth the cost on top of retraining.
None of this shows up in quarterly reports but it's a real phenomenon and it will catch up to Adobe sooner or later.
This is only true if in your entire world bubble Photoshop only exists to design mobile UIs. Figma, like Sketch before it, is a simply a part of Photoshop's total market. There's no replacement for Photoshop yet for creative agencies, photographers, and content studios.
That’s almost double what I pay for Jetbrains’ stuff and I figured the forced subscription from Jetbrains was 3x what I had been paying by skipping 1-2 versions between updates.
You’re right about changing the customer base though. All the suckers that can’t figure out prices just when up 3-4x seem to love subscriptions and financially flippant people like that are probably the best customers to have.
And Jetbrains is the only subscription software I’ve used that doesn’t keep adding bloated trash features to justify their subscription.
Funny you bring that up - Jetbrains only switched to its current model after a massive outcry. Their original plan was to completely brick your IDE when your subscription lapsed. That did not go down well[1]. Fortunately, they abandoned the plan within a day
If iOS supported this model I think most devs would be ok with it, pay upfront X amount, and then a slightly smaller amount yearly for continued support/updates/development. I wonder if we'd have more 'pro/dev' iOS apps if the App Store supported models like this?
From a consumer point of view that's understandable: Everyone wants to keep their recurring costs low.
But from a developer point of view, this is an antiquated way of thinking about software. Software that is not actively maintained (which is expensive) eventually stops working. Even more so on platforms like iOS, where you're beholden to the whims of the platform OS. So you need recurring revenue to offset that maintenance cost.
I wish consumers would understand this better.
All the other apps pretty much stopped feature work and are now mostly more broken than they were before switching to the subscription model. There's an occasional update, but it's all pretty much dead.
So out of that deal I (as a user) have gotten pretty much nothing - the developer is constantly taking my money with nothing to offer in return. If I stop paying, they'll take away the app I've paid for.
Compare this to something like VMWare Fusion or Parallels Desktop model - I pay license every year to get support for new OS and new feature. But it's MY choice whether I want to pay and if the updates actually offer me VALUE for the money.
And this keeps us honest - honest money for honest value delivered with incentive for developer to keep maintaining their software and not just sitting on their rent-seeking vendor lockin. It seriously sucks that Apple and Google don't allow for that sales model in their stores - it makes the market worse for all of us.
I haven’t been a user for years; I’m just a perplexed bystander.
Lightroom has some updates but I’ll agree the pace is slower. They are a market leader for certain kinds of commercial photographers that will happily pay a couple hundred a year for a critical business expense. I wish they’d see more competition.
Hoping that Affinity can come up with something. Even if it doesn't sync, I would still get it.
That's a feature, not a flaw.
I get it - developers want to rent-seek and suck on that sweet passive income without actually having to constantly provide any value for users. But from a users perspective, I get nothing, especially when the response from developers is to just stop development.
I'm left with nothing, they're left with nothing. That's fair enough.
A subscription means one has to use the software they paid for. You can't have it sit on a shelf for those once-every-few-months use cases. It means having to manage a million stupid business relationships with vendors that one doesn't want to have to deal with. It means trolling credit card statements after-the-fact to make sure the subscription was actually cancelled when that comes time, and it means dealing with the cancellation process (and whatever dark patterns the vendor throws down) on a fairly regular basis.
The old paid-updates model isn't "antiquated", it's customer-centric. Subscriptions are the opposite: customer-hostile.
The service worker earning minimum wage can't afford a million subscriptions. Your subscription means they are a lost customer, and it means they cannot invest in their future in a way that they can effectively control their costs. It's a great way to get your stuff pirated.
Photoshop is a great deal at a fixed cost of $1000 or whatever it was, because when I needed it it was there for me and I knew it would solve my problem. Photoshop cloud is a fucking rip off, I'm not going to pay their ridiculous monthly fees, nor deal with their onerous subscription terms, for an app I use maybe once every six months.
I don't want to live in a future where I am beholden to a million rent-seeking wantrepreneurs because they forgot how to finance their business the old-fashioned way, or because they are afraid of being "antiquated"
The SAAS mentality really, really, really needs to die.
How is paying $1000 better than paying $32 every six months and getting access for the entire month? $1000 better if you'll use it for 30 months without interruptions but it sounds like that's not your use-case.
I guess the photography plan is competitive, but it's still a subscription. I hate paying monthly fees for anything, especially for something I don't use. Much prefer to pay a higher fixed cost and finance that on my own... and yes I preferred this when I was a poor student; I bought a lot of expensive software back in the day by saving what I could from my $12/hour (in 2004 money) day job.
And believe it or not, being able to open the program and have it simply work, without going through a bunch of login/update/subscription hassle, is really important for creativity. Technical crap regularly derails my creative process when I'm manic with an idea, so the possible premium is worth it.
I get what you're saying, but my point is that $1000 is ludicrously expensive when you only rarely need that software and in this case cheap subscription is a good option. I would not consider $1000 for Photoshop at all, but $32 is something I could pay if there's no free or cheap alternative.
Art is weird. I have a perpetual license for Lightroom. It's great because I can click the LR icon and boom, there it is, ready to download my photos and serve me. I don't have to measure my photography out by it, don't have to consider whether or not my LR subscription is current before I pick up the camera, I don't have to hassle with it when I need something... it's simply there.
Same with music: if an idea pops up in my head, I can click the FL-Studio icon and... there it is! Ready to go. I have a couple of plugins that need to periodically reactivate interactively, and in all honesty they simply don't get used. In the moment even load times matter, I'm not going to sit around and finagle with logins or activations or anything... I'll just move on.
I purchased a data recovery program that used to be called R-Studio a little while ago. It's great software, I used to pirate it back in the day, and its demonstrably better than most of the free data recovery apps out there. I've used it once, but again I am confident that it is there and it will run, and that I can confidently offer a data recovery service/favor to friends or customers without awkwardly futzing about or checking before-hand as to whether the software will work or not.
These are all cases where having software ready-to-go is better, and a subscription just gets in the way. I could even argue that having this stuff on-hand helped me get through some really lean times where even $10/month was a difficult price to pay.
It won't. This is evolution. People are voting with their wallets, and subscription providers are making the money while "pay once and forget" people are going out of business one by one.
Or let me put it another way: Looking at the world, habits of people around you, and the software pricing strategy landscape, which method do you see "surviving"? (not asking which one you want, but rationally, which one has the demonstrated advantage?)
You call it an evolution, I call it a cycle. It's arrogant to think that SAAS' time in the sun will be forever. Remember mainframes? When the pendulum swings back, the power users will be ready for it.
There are already cracks in the foundation. Internet fragmentation, increasingly onerous data regulation, sloppy 5g rollouts, societies with regimes that like to cut net access... hell there are even some new WiFi vulnerabilities that are on HN today. One day some business revolution is going to come along and eat SAAS's lunch... I can't wait to cruise the net on a highway paved with the corpses of dead subscription companies
No. I routinely buy software and lifetime subscriptions in the $10 to $100 range without batting an eye, but if I had to pay $5 a month for every piece of software or service I use, I would spend thousands of dollars every single month and it'd be ridiculous even if I'm lucky enough to be able to afford that.
There's a place for recurring subscriptions and a place for fixed priced software that is supposed to work for eternity, even if without upgrades.
Don't blame the consumer if they don't want to pay $5 a month for a standalone app.
If you switch to a subscription model, your new price better be no more than your expected amortized purchase price. If you use to launch paid major version upgrades every 2 years at $100 a pop, your rental price needs to be less than $50 per year to make up for the lack in functionality. Don't try to be a used car salesman and emphasize the "low monthly payment" when your customers are used to considering the total annual cost.
The answer is not much, that’s the real bottleneck. You can’t expect people to pay for what they can’t use, and we just can’t use all that much software because we don’t have time for it.
The expectation is that if you got a version now and it works fine, then you should be able to keep using it without paying. It's only fair, because after all developer costs here are exactly zero. If later on you see an update with something you like, then you pay again.
That's the model a lot of Windows desktop software is rapidly converging to and it's a good fit for subscriptions, as a convenience option. In comparison, any software that drops completely dead once you stop paying comes across as a rip-off and quite rightfully so.
Developers aren't consumers, they are producers. And producers understand that durability and longevity are more important than enabling the rent-for-life, own nothing, subservient economy.
Part of the problem is that software development is still in its infancy in my understanding. Average software quality and reliability just isn't very high.
I don't think I would agree with that. With software, durability is the default. I can write a program once, and run it on the same hardware until the capacitors fail. It takes active intervention in the form of forced upgrades and planned obsolescence to make software "decay."
For a producer as I'm using that term in my previous comment, software is a tool. If I buy a physical tool, I will pay up front for fine craftsmanship, but from there on that tool belongs to me, and I expect it to last as long as the care I give it allows. I expect to do the same with software. If a software vendor wants more money, they need to provide more value in return.
Note that this does not mean I would never pay for subscription services, but I will not stand for companies trying to blur the line between service and tool.
Fixing flaws is a separate and legitimate concern, but whether feature or security, this is solved by the idea of a warranty where the purchase price includes the product, and some time-limited obligation to ensure that it is fit for purpose. Once that's up, it's up to the developer to determine whether it's worth their while continuing to support it - but at least the end user can run it on the platform they originally purchased it on. Theoretically.
Then comes the hiding-in-plain-sight pernicious moneymaker mentioned: platform planned obsolescence. It comes in many forms, forced upgrades as mentioned, but also things like "turn on auto-updates because that's just what you do these days", "oh this is a 32-bit app so you can't run it anymore - pester the developer". Then there's all the developer-side stuff like "32-bit apps don't work anymore, update", "Oh neither does the older SDK, update that too", "Oh didn't we mention there's this new screen shape and you have to add support for that too", and "oh if you don't do all this stuff your app will disappear from the store in X days". What about the less obvious stuff like "this new SDK/toolkit/platform library is the way to build new apps! There's not really a clear upgrade path, but it's the one true way. Until the next one."
It's next to impossible for developers to solve this problem because it is an externality imposed on them by platform vendors. It is the main reason why software, in the short term, needs to be maintained. Of course, long term you expect that big developments and innovations would result in some level of obsolescence, but the devices and software industries have an incredibly fast rate of churn even for the pace of innovation. It's very interesting using systems from 5, 10, 20 years ago just to see how far we've come (or in many cases, how far we haven't).
Apple in particular has driven this by consistently eschewing backwards compatibility, constantly churning their SDKs, and continuously breaking older platforms. It's no surprise, they have two strong financial incentives to do so: if new software requires new Apple hardware, that's new revenue for them, providing they can convince us to buy it. If new hardware requires new software, that's new revenue for them thanks to their app stores. If they can get developers to move to subscription models well, that increases the recurring revenue via IAPs. Force them to use your payment and accounting services too, clipping the ticket along the way? More revenue!
We're the suckers though - we've been conditioned so hard to expect their stuff to be somewhat fragile, expensive to repair, and severely limited in lifespan that we almost like it. You dropped your phone? Oh the glass on the back has all broken. That's integral to the chassis, so it's a really expensive repair - over half the cost of a new one. Might as well treat yourself. No don't listen to that Rossmann guy, he's obviously <unsafe/counterfeit/untrustworthy>, eyes over here buddy, look at my pretty blue shirt. Oh hey, if you go to him Face ID won't work, because a nation-state actor might have installed an intercept on his dodgy counterfeit screen. You want to keep secure right? Anyway what were we saying again? Oh yeah, the new one. Oh you also ran out of storage? It's only been 5 years, the base model still has the same amount, so why don't you pay a bit more and get the upgrade. After all it only makes sense that you'd accumulate stuff over time right? What did you say, SD card? RAM stick? nVME SSD? No no no, they're way too slow/insecure/low-tech/dangerous to work with iPhone/Mac. No no your friend who put one in his computer has a PC - these are Macs, entirely different type of thing. Of course software needs to be maintained, of course it does. How could it possibly work on your new machines, how on earth! I digress...
It's always going to be that way, and that's okay. It's still the right move for professional iOS tools to move to a subscription model. Some fraction of your user base will complain and refuse to subscribe. But if you actually make a good tool, you will fairly quickly see an increase in revenue, which lets you invest more in making a good product. A bunch of people will periodically complain on HN that they don't like subscriptions and it's not too hard to just ignore that and move on.
Don't look at 10 people complaining on HN and conclude "this must not be the best business model".
https://variety.com/2019/gaming/features/android-ios-apple-g...
The 'Pay Once' model used for quality self contained games that you see on windows or consoles are unsustainable for constantly incompatible os updates.
There are some exceptions. For example Intellij Idea should support new Java versions which might require significant development. But those are exceptions (for example I hate almost all new Intellij Idea features, thankfully most of them could be disabled).
That's only true in the context of the environment the software is in. The environment is very hostile to supporting old versions of software. We keep pushing out operating system updates and updates on linked libraries and so on, mostly in the name of security and feature creep.. and software that worked perfectly fine at one point are gradually murdered. It's kind of a tragedy.
I'm convinced a major reason Adobe made the switch to a cloud subscription was because they recognized their products were maturing and the window was closing on locking in recurring revenue before the licensed product was so mature there would be little incentive for users to subscribe.
Increasing the size of the user base becomes a priority over refining service for existing users, and that often means developing features that existing users don’t need or changing the UI in ways that make things easier for new users but worse for power users.
Funny because I know many many many business that run entirely on old unmaintained code, code that can not be maintained because upgrading it will break things, will make things stop working.
I don't understand this mentality. I can run an 8 year old version of nginx just fine. Why would it stop working?
I used Coda pretty much since its launch and paid for upgrades to Coda 2 and Nova. I've built my career around these editors, so it's kind of scandalous how little I've paid Panic in proportion to how much money I've made using them. I would be fine with them having more frequent paid upgrades. But the day they try to rope me into a forced subscription model is the day I start looking at alternatives (which is too bad, because the last time I looked at the market when Coda 2 was getting a bit too long in the tooth and it was looking like Nova was never going to actually be released, it was clear that there are no serious alternatives for Mac-native code editors out there except for maybe the crusty old BBEdit, which I do not have fond memories of).
Please stop calling this as modern model. This is modern daylight theft
Exactly. I don’t understand why anyone would buy their apps. For the money you’ll get an app riddled with bugs, zero useful updates that actually fix those bugs, and near zero support from panic. It happens over and over and over again.
I guess I thought the saying started with “fool me thrice” because it took that long for me to figure it out. :/
The likes of Microsoft and Adobe, whose strategy isn't to sell products as much as it is to establish and maintain market control, are not good comparisons.
Their failure to support the system file sharing / iCloud for so long was a killer for me. They were simply technically wrong about how to do it.
There are many other ways in which they simply failed to adapt as the model changed, which I find perplexing.
In my view, the biggest hurdle does not seem to have been technical, but ideological/business. These old school Mac developers like Panic and Omni have had a very difficult time adapting to (or failing to) the iOS/mobile era. I know we all hate subscriptions, but continued app development and management requires continued labor so subscriptions seem like the only business option that makes any sense to me. Panic and Omni want paid upgrades but Apple has never, ever even hinted at providing that as an option. The option is subscriptions. Even on desktop Sketch, Adobe, and Microsoft are going with subscriptions. (We’ll see how Affinity does. They charge a lot more for their apps and seem to be in a growth phase so I imagine their sales at the moment are fast enough to make up for the fact that each sale is only a one time source of revenue).
Honestly, Panic and Omni and other old school Mac developers really, really need to adapt to the modern era. They’ve had years and it feels like the runway is about to end (see Omni’s recent layoffs.) Wishing for paid upgrades and writing “only AppKit apps are real Mac apps” blog posts isn’t going to change anything.