The New Release Pattern

Are you on Update Subscription for RAD Studio?

You are?  Great.  Wise move.

You aren’t?  Why not?

We are very interested in you being on Update Subscription — so much so that you pretty much have to be when you upgrade.  We do this because Update Subscription is really great for you, and not bad for us, either.

It is great for you because you pay less over time.  It is great for you because you always have access to the latest and greatest versions and features.   It is great for you because you can budget annually for your software development tools.

And it is great for you because it incents us to release software when it is ready, and no sooner.  Because we no longer have to wait a whole year or more to release new features (as we did previously without Update Subscription), we can more gradually release features when they are ready.  We don’t have to push a feature to make a date because we know that there’s another date not too far off where we can ship that feature. We don’t have to pile a bunch of features into a single release to make it sound “big”.

For instance, C++ for Linux is proving to be a bit more challenging that we thought.  We originally planned to release C++ for Linux with the 10.2 (Godzilla) release.  But we don’t have to, and so we aren’t.  Instead, we are going to get Delphi for Linux in your hands as soon as possible, and then get C++ for Linux in your hands a bit later, when it is ready.  You get quality software sooner, and later.  We ship Delphi for Linux now, and then in a few short months, we ship C++ for Linux in the 10.2.1 release.

Okay, a little terminology.  Because of the fact that we can — and will — ship new features in all of our releases, we are going to stop  using the word “Update” and start using “Release” for all of our, well, releases.  Why?  One reason is because we find that many customers think of an Update as bug fixes only.  That isn’t true, and we don’t want to give that message by using the word that has meant that in the past.  Another reason is that “Release” connotes newness, and that’s the message we want to send.  So from now on, it’s Releases, not updates.  Everything we ship will be a release.

We can do this because you all are on Update Subscription.  Why is that?  Suffice it to say that it has to do with arcane accounting rules.  I know — that sounds lame, but it’s true.  Trust me, you don’t want to know the details.

Because of Update Subscription, we can now do two or three (or more if we want) releases a year.  We can deliver a constant stream of new features and quality fixes.  We are committed to making that upgrade path as smooth as possible.  We want you to be happy with this steady stream of goodness because we want you to renew your subscription when the time comes.  From now on, we make our money by continuously delighting you, and thus we are highly incented to do that.  That means quality and valuable new features on a steady and continuing basis.  It means we can ship no code before its time.

We have lots in the pipeline to keep you delighted.  We can ship these new features when they are ready.  That’s big win for everyone.

  • Stef

    Hi, I have been on SA since XE4 and can’t agree with you more. In the previous years we had a survey on the features that we wanted to be implemented in future releases. I don’t remember when exactly we had the last one. Since most of the features that I can remember (from the surveys) are almost completed, I think it is time for a new one. Web development for example could be the next milestone for Rad Studio. Imagine a truly universal development tool producing native code for all platforms, plus web apps just by changing the Target Platform in the IDE !!!!, and If am not mistaken Raudus Project is going open source. Combine all that with RadServer and Linux support ….

    Keep up the good work,

    Stef

    • Chris

      +1000
      But to get “just by changing the Target Platform in the IDE” they have to understand we don’t want to manually send JSON requests and response to web Frameworks like other languages do, but instead continue to use the VCL and code with events inside components (Exemple: with Stringrid.cells[] := data; and the component computes himself row deltas and generates+handles Json communication) … and this means dropping the mantra “VCL is a windows API wrapper” and change it to “VCL is an abstraction layer”.

  • Markus

    Is your blog included in blogs.embarcadero.com? if not it should be. Can this be done?

    • Yes, it is hooked up — this post is there now.