Delphi: VCL is dead, long live FireMonkey

An inflammatory title, perhaps, but this is how I’m reading the situation. I’ve also been writing and rewriting this post all weekend, so you’re seeing the polished toned-down version.

First some background.

1. A couple of weeks ago, Embarcadero released RAD Studio XE2. Personally speaking, I consider this to be the most important release of the Delphi ecosystem since Delphi 2 or even Delphi 1. Two reasons for this: 64-bit support, long promised and even longer forthcoming; and FireMonkey. Of the two, FireMonkey was the most interesting: a cross-platform run-time that targets Windows and OS X, together with compiler support for both. (In my view the iOS support is just there for a tick in some marketer’s list: see Tim Anderson’s excellent post about how to actually set this up and a discussion about the issues.) I wrote a post describing DevExpress’ support for XE2, just before its release.

2. On Friday, I and any number of other people saw this tweet from Danny Thorpe. Yes, that Danny Thorpe. He obviously has some contacts still.

3. And then yesterday, Sunday, Tony de la Lama, Senior VP of R&D at Embarcadero, makes his very first blog post in two-plus years of working for Embarcadero, ignores this news (unless you ponder that it was his first post and he published it on a weekend), and promulgates a rosy view of R&D growing by leaps and bounds through offshoring (IDE development in Spain, much of the rest in “European development centers”). In fact, through the grapevine we understand that the team in St Petersburg – the team that produced FireMonkey – is being grown rapidly too.

4. Last week, you may have also heard that Microsoft had this conference called BUILD (or “//build/”) where they talked a lot about Windows 8, Metro apps, WinRT, ARM slates/tablets, and all kinds of other goodness. Yes, “old-style” Windows apps will still work on Windows 8, but the fancy touch-enabled Metro stuff uses a brand new run-time (the afore-mentioned WinRT) that is not Win32. This has been developed specifically for touch-capable devices like slates and tablets that typically would use ARM chips. Windows 8 is probably due (a reasonably good consensus guess) Q4 2012, a year away, although you can now download a Developer Preview right now.

Now let’s bring it all together.

1. From de la Lama’s post we see that part of the goal is mobile devices, iOS and Android being specifically mentioned. A definite win for FireMonkey there, although there’s a lot still to do (compiler and debugger support being two big issues).

2. ARM devices that are targeted by Windows 8 and WinRT will not run Win32 code (PCs will, as mentioned above). To create Metro apps with Delphi will require a new compiler and run-time support. VCL is built upon Win32, and assumptions about that run-time is deep within the code. Another win for FireMonkey; VCL is painted into a corner.

3. Like it or not, VCL development is being ratcheted down. This is obvious from the layoff and offshoring news, but it was also mentioned to us in the XE2 World Tour presentation our team attended in Moscow. The best demos on the World Tour were by far the cross-platform FireMonkey demos. Embarcadero want to concentrate on cross-platform app development and the only way to do that is by using FireMonkey with the appropriate compiler support. It’s a major differentiator for them.

So, in my opinion, all this says that FireMonkey is going to be the technology Embarcadero are going to concentrate on going forward for RAD Studio. I think we’ll be hearing a lot more about FireMonkey in the months ahead and that a new RAD Studio roadmap will be forthcoming integrating support for other devices, especially on the mobile front. They also have a great deal of work to do in creating FireMonkey controls and components. We also conclude from the information we gleaned from the World Tour that the VCL will be maintained in its current form (bug fixes and the like), but no major new functionality will be introduced for it.

We at DevExpress are already talking about what this all means for us. As I said before, our plans are laid for v2011 vol.2 and we can’t change direction too drastically from them at this late stage (code-freeze is perhaps some 6-8 weeks away), but for 2012? We’ll certainly be discussing in depth our RAD Studio support at our annual Summit late November, early December.

One thing Delphi developers struggle coming to terms with is native fat client Windows desktop applications not being main game anymore. While still part of the puzzle, unless you also do web, phone & tablet apps you are out of the game in a lot instances. Delphi's focus on these newer platforms is a great thing for it's long term future.

19 September, 2011

Martin Pelletier

We don't see much about FireMonkey, only small pictures of forms. I want to see how an full UI looks like before deciding. Have to download Rad Studio for that I guess.

19 September, 2011

Robbert Speet

I've been to the WorldTour in the Netherlands last friday 16th sep) and I have to say that it looks most impressive all togehter.

While there are a couple of loose ends in this release, it seems that Embarcadero has put together a really strong cross platform base.

It would be nice if DevExpress decides to do their vcl components for FireMonkey and while your working on that . . . maybe you can have a look at doing Persistent Objects as well :-o

20 September, 2011

David Rosen

Firemonkey is great, but as for now it does cannot be used in the real world commercial applications?

One of the questions I asked when attending a Delphi XE2 introduction was: Can the firemonkey grid be exported to Excel? Can the grid be printed?

I got a big NO for an answer and those were only offhand examples of what we really need in our commercial application. We, as real application developer, may need tablets and smartphones applications only as an extension of our real application. As long as we do not have in firemonkey the full power and richness as represented in DevExpress controls, we will wait. And since we need to make a choice, Firemonkey or VCL and cannot have them both in one project, we choose VCL and can look at firemonkey as a nice feature but no more than that.

Once Devexpress decides to extend firemonkey controls to its VCL standard, it will be a different ball game.

David

20 September, 2011

LUBERT Kevin

Unless they want nearly everyone working with computers staying with Windows 7 (ala XP during the Vista era), MS will find a way to let the admins disable Metro.

I tried the developer preview on my laptop and without a touch screen, I'd rather have a start menu.

I can't imagine a company mass installing Windows 8 with Metro in its current state (or design) on desktop computers.

And no, accounting people won't work with tablets or smartphones before a while.

Win32 is not dead, for the working man and woman.

20 September, 2011

Michael Thuma

Sorry, wondering? Mr. Julian you the 'wise owl' should see it more relaxed.

(*

Like it or not, VCL development is being ratcheted down.

*)

It is maybe sent to maintenance to Europe. VCL is to coarse-grained for today's fine tuning on the GUI and other hand, a restructuring would very likely break lots of existing code. Design patterns are now older > 15 years and in the .net ans Java world used heavily + generics. From this perspective something new is required. Especially if Delphi will become capable at the syntax level too, if it is not already. VCL is not bad but it is as it is.

A move to Spain is nothing bad, because the unemployment rate is about 40% when it comes to young people although many talented with diplomas.

Now you can take the opportunity to implement a reporting solution:).

20 September, 2011

David Intersimone 1

VCL is alive and well. We just shipped 64-bit support, support for Styles, and also for LiveBindings. I was the presenter in Moscow for the launch session along with Vsevolod Leonov our Russia & CIS Developer Evangelist.

While we did show a lot of new FireMonkey capabilities, we also showed how to use the new features for VCL in XE2. When asked about the future of VCL in the Q&A, I said there will be VCL as long as there is Windows - and that looks to be a long time.

So VCL is not dead. VCL development is moving from Scotts Valley - that is true = but it is not stopped. If there are capabilities in the VCL that developers need (including DevExpress) then you can always put entries in Quality Central and send me an email - davidi@embarcadero.com and I will happily pass them along to Product Management.

At the same time - everywhere we have travelled (over 70 cities so far by the evangelism team) - we have been asked if DevExpress will support FireMonkey. I've told DevExpress customers to let Julian and the great DevExpress team know what you want/need.

Danny's tweet does not tell the complete story about our future. Tony de la Lama's blog post does set the story straight about our increased investments in RAD Studio (Delphi, C++, PHP and Prism) to meet the needs of developers and next generation compilers/platforms.

20 September, 2011

Julian Bucknall (DevExpress)

Michael: Maybe. But FireMonkey reporting would be way behind FireMonkey controls. And that's a multi-year project already.

David: Glad to hear it. BTW, when's the next NDA partner meeting in Scotts Valley? Speaking as the Delphi evangelist for your major partner, I'm feeling out of the loop with what you're planning for the future. Peeking behind kimonos and all that.

Cheers, Julian

20 September, 2011

David Intersimone 1

Julian - good point about time for another partner discussion - especially now that RAD Studio XE2 is shipping.

At Delphi Live in San Jose last week Michael Swindell, Embarcadero SVP of Products and Marketing talked about some of our future directions (see John Thomas' short roadmap blog post at blogs.embarcadero.com/.../may-the-roadmap-rise-with-you). Michael also told the audience that we would be working on monthly updates to FireMonkey.

I remember our get together in the Spring of 2010 in Scotts Valley and also the multiple online briefings early this year. So, you're right - it is time for a partner update and also for us to update the public roadmap on EDN for all of the developers interested in the next generation compilers, continued work on FireMonkey and VCL and additional platform support.

20 September, 2011

Julian Bucknall (DevExpress)

All: Tim Anderson brings up another good point here (http://dxpr.es/nvNzfS). By being cross-platform, FireMonkey doesn't have the look-n-feel of native controls, whereas VCL is optimized for native Win32/64. Will this make a difference? My first impressions are that FM will get better (as Anderson points out, it's a little rough yet), but in thinking about it some more I'm unsure whether the underlying principles are going to translate to other devices and OSes.

I really do recommend that if you are writing Windows apps, stick to VCL. (Essentially the same thing I'm saying about writing .NET apps for Windows 7: they'll still run on Windows 8.) DevExpress has by far the most complete, mature, and in-depth set of controls for writing LOB apps with VCL and we're updating them all the time. FireMonkey is going to take some tenderizing first...

Cheers, Julian

20 September, 2011

Michael Thuma

Mr. Julian - Ok, a many years project will not make sense. I hope the ':)' indicated to see the statement relaxed. It is challenging enough to continue with both streams.

!@ devexpress:

I want to take the opportunity to point out one thing here. I don't know if devexpress agreed on providing a 'quantum grid' or not. Usually things work the way - people take a technology and beyond that a demand grows maybe. On one hand we have a statement in a video that EMB is focusing on providing a shaped solution out of the box via the Firemonkey, but on the other hand after a discussion in another thread here on this forum ... devexpress will ('have to') provide. There is no reason to provide communication aiming at 'To calm the angry crowds'. I do excuse if devexpress agreed first. Changes nothing on the last point.

From this perspective May the road(map) rise with you is a good first step into the right direction.

21 September, 2011

Romeo Popescu_1

I agree with David Rosen. I am building rich desktop clients with a lot of functionality in them, that work against SQL data and can't wait to add a tablet gizmo to allow a my customers some browsing capability. I do not see the tablets as a main way to operate on data, just useful for a quick review or adding a small note on the go. In my opinion the two worlds will have to co-exist, and it's up to us to build the right interfaces for each.

21 September, 2011

Joao Borges

I attended Delphi XE2 tour yesterday and became very well impressed with all improvements, 64-bit, live-bindings and specially Firemonkey. FM is really really great! ... but, for us, without DevEx components it is useless.

Anyway I am very happy with Delphi evolution!

22 September, 2011

Remmie Ran

Seems as Delphi is making a huge comeback :). as for FMX it is useless unless for us unless we will have Devex components support.

14 November, 2011

Stijn Verrept

Any news about this and livebindings? I hope within the next weeks (RAD Studio support annual summit) we will get an answer to these questions:

- will DevEx support FireMonkey

- will DevEx support Livebindings

- will this be included in the subscription of will it be a separate product?

- when will it be released and at what cost

20 November, 2011

Julian Bucknall (DevExpress)

Stijn: in answer to your questions:

- Eventually, but there's no way we can develop for it in its current state: it's a moving platform (monthly updates, breaking changes, etc).

- Eventually, I suppose.

- Unknown at this point, but since it would involve a total rewrite of what we have, I would hazard a guess it'll be a separate product.

- Totally unknown at this point. No guesses either.

Cheers, Julian

20 November, 2011

CARLOS TRE

Julian,

Five and a half years later is there already a definition about LiveBindings support?