↑ Best viewed this side up ↑
Dmitry Leskov

How I Would Have Price Positioned JetBrains Toolbox

Now that my previous post on the topic has got so much attention from Reddit users, as a software engineer turned marketer I feel obliged to follow up.

I do not know for sure the reasons for JetBrains to introduce subscriptions in the first place, but judging just by the price points, it does not look like an attempt to capture a new market segment to me. It is more likely that they have noticed a slowdown in recurring revenue growth, because of more and more customers taking longer and longer pauses between upgrades. As any vendor of a mature professional software product can attest, such behavior is quite natural when your product already does everything that all but its most advanced users need, and does it well enough. A switchover to a subscription model can definitely stabilize the cash flow in such a case, but a vendor offending its customer base in the process risks stabilizing well below the last few years average…

If my assumption above is correct, here is what I would have done.

Of all JetBrains desktop products, I am somewhat familiar only with IntelliJ IDEA in its Community Edition form, which I use for my Scala exercises. For simplicity, I will therefore only consider the pricing of IntelliJ IDEA Personal Licenses.

As I write this, you can still buy a new perpetual IntelliJ IDEA Personal License license with one year of free upgrades for $199, or upgrade an old one for $99, presumably getting one year of free upgrades as well.

Now, if I was tasked with price positioning the upcoming IntelliJ IDEA Personal Subscription Plan, and if that plan was what we wanted to sell the most to both new and existing customers, here is what my first proposal could have looked like:

  • Perpetual licenses stay in place and come bundled with a year of upgrades, as before, but the price of a new perpetual license bumps up to $299.
  • The upgrade price does not change, i.e. stays at $99.
  • Subscription is priced at $8.90/month, or $89/year for new customers, and $69/year for anyone owning a perpetual license for any version released in pre-subscription times.

What does this accomplish? First, a new perpetual license now looks much less attractive price-wise compared to a subscription not only to those who plan to upgrade regularly, but even to those who plan to upgrade once every two years (prices rounded up for the sake of hiding the insignificant digits from view, time value of money not taken into account):

              Total Costs

Year Back-to-back  Lagged   Subscription
   1     $300       $300         $90
   2     $400       $300        $180
   3     $500       $400        $270
   4     $600       $400        $360
   5     $700       $500        $450
   6     $800       $500        $540
   7     $900       $600        $630
   8   $1,000       $600        $720
   9   $1,100       $700        $810
  10   $1,200       $700        $900

Second, no change whatsoever is enforced on the existing customers — they can keep upgrading their perpetual licenses whenever they want at the same price, or, if they always upgraded without lags and/or plan to do so in the future, switch over and start saving.

Third, as it is actually more important than you might think at first, the price of the (annual) subscription being less than the price of the annual upgrade reinforces the perception of the former as of the cheaper option, the perception originally created by the absence of a one-time upfront payment.

As for timing, I think it would be a good idea to introduce subscriptions when releasing a new major version, but only announce the future price hike for new licenses at that point, giving the existing prospects enough time to make a choice, along with an incentive to actually make that choice and act soon.

Does this plan appeal to you? What option would you choose? Let me know in the comments.

P.S. If you are interested in the topic of software pricing, check out the free e-book Don’t Just Roll The Dice by Neil Davidson.

What Microsoft Got Right That JetBrains Didn’t

Blog postsrants, angry tweets, comment threads hundreds of items long — the user community has unleashed quite some emotion onto JetBrains after the company’s decision to change the pricing model for its desktop products to 100% subscription-based. The news seems to have made the day for Eclipse guys, and at least one other commercial IDE vendor, though.

Read the rest of this entry »

Scala Stream Hygiene III: Scalaz EphemeralStream Fills Quite A Canyon

Scalaz, an open-source pure functional programming library for Scala, provides the EphemeralStream class that does not exhibit the memory leak issues inherent to the standard scala Stream. However, it carries its own set of problems: memory overheads, performance penalties, and application disk footprint increase.

Scala Stream Hygiene II: HotSpot Kicks In

Infinite Scala streams should be marked “not for production use”, even though you can get away with breaking most of the rules listed in Part I.

Scala Stream Hygiene I: Avoiding Memory Leaks

The standard Scala Stream class is essentially a lazy List with memoization. However, memoization is undesirable when defining infinite data structures. It is possible to avoid memoization of streams by following a set of five rules, described in this first post in a 3-part series.

Updated AddFLACs to Extract Track Metadata From Pathnames

Match your FLAC files pathnames against a regular expression, then refer to capture groups when specifying iTunes field values.

Retrieving a Web Site for Offline View Using Wget

is not so straightforward in today’s age of CDNs, widgets, and font embedded services.

KB2756872 Windows 8 Update Fails to Install? Remove Realtek Audio Drivers

If you have upgraded from Windows 7, you may need to also run delmigprov.exe accompanying the standalone version of that update.

It’s Been a Long Time Since I Had To Patch a Binary Executable…

…let alone the main executable of a popular open source development tool.

Outlook Macro to Nicely Format Skype Chat Excerpts

Skype IM Pretty Printer is a VBA Macro for Microsoft Outlook that helps you format Skype chat excerpts for readability before you email them to someone or store for archival purposes.

« Older Entries |