Approximately 2 years ago I was present at a Delphi launch event here in Auckland.  At that time the hot news was the release of Delphi 2007.  But more significant than that (great) release was the recent publication after much SOX hoo-ing and haa-ing of a Delphi RoadMap.

On that Roadmap it was indicated that following the introduction of Unicode, 64-bit was the next major development lined up for the Delphi community.  Even at that time, 64-bit was of greater importance and urgency for the Delphi community with which I was most closely connected, but at least it was coming (and at that time we still maintained hope that Unicode might be done right.  Oh well).

But 2 years to wait for 64-bit…?

Well, that might give us time to get our code into shape, make it thru the Unicode transition that it seemed would now be forced upon us.

Unicode of course happened, but then something changed.

When Delphi 2010 started to be talked about it was no longer “Commodore” but some thing called “Weaver”, and some thing else called “Project X” seemed to be more prominent.  Cross platform.

“Don’t worry” we were told – “this is all happening in parallel.  There is no prioritisation of one over the other.  We know that both are important.”

Yet this morning at this year’s Delphi Launch Event it was confirmed….

It’s Just A Jump to the Left…

…a 2 year wait for 64-bit.

No, not the same 2 years we were waiting for before.  These are 2 wholly new and completely unspoiled years that we now have to wait.

Let’s do the time warp again…

But in the meantime we will be getting a cross-platform release.

yay

What Are They Thinking…?

I have to hope that Embarcadero are thinking.  But I cannot for the life of me figure out how or what.

Who are these droves of people itching to develop desktop applications for Mac OS and Linux?

I ask specifically about desktop applications because Mac OS isn’t (to my knowledge) particularly dominant in the server space, and neither is 32-bit Linux.

Malcolm Groves gave a figure of 10:1… that is for every person asking for 64-bit he has 10 asking for cross platform.

Who are these people and where are they hiding, because I cannot think of a single one!?

I think Malcolm himself put his finger on it without realising.  He said that people asking for 64-bit need it.  64-bit solves a specific technical problem (availability of memory) that cannot be solved any other way.  Cross platform on the other hand he suggested was a desirable capability, not an essential one.  It’s the weight of numbers expressing that desire, vs the minority expressing a need, that has swayed things it seems.

So here’s what I think has happened…

I believe Embarcadero have made a fundamental mistake in listening to what their users say they want rather than thinking about what they really need.

Because of course lots of people want “cool stuff”.

Ask them:  Would you like some cool stuff?  And they will reply: Yes please!

The crunch comes when they are asked to pay for it.  I have a horrible feeling that a Win/Mac/Linux Delphi 2011 will be a complete flop.  All those people that so wanted that “cool” capability will have to find a market to justify spending the money on tooling up for it.

AND they will have to find a market to justify migrating their applications from VCL to VCLX, assuming that their application fits in a one-size-fits-all framework that will no doubt produce applications that are easily recognisable as VCLX applications, rather than apps honed and finely crafted to fully exploit the platforms they are running on.

And Then A Step To The Right…

Sorry… did I not yet mention…. yes, there will be a separate cross-platform VCL (called VCLX at this stage it seems).

VCL applications will remain Windows only.  That’s all your existing applications of course.

VCLX applications will be able to be targetted at Win/Mac/Linux from a single source.

Is any of this starting to sound familiar?  VCLX …  VCLX  … CLX

Yes folks, I think we’ve been here before.

Let’s do the time warp again…

32 thoughts on “Let’s do the Time Warp again…

  1. I really hope they don’t base this new VCLX on the old (Visual-)CLX. And if they do we might be in trouble because the old CLX had more bugs than working code.

  2. Great post.

    When I heard about Project X, I immediately got reminded of both Delphi 8 (.NET) AND Kylix. Twice now, they have let their attention wander and twice now it has taken years to recover.

    And of course, there is no such thing as “no prioritisation” – if Project X is using resources that could go to Delphi, then it is being prioritised. If they have a team large enough to write a new component library on the new project, how big a contribution could that team make to Delphi?

  3. All your statements are fully right. A shame. Wrong direction again! Come on guys. I am not going to wait another 2 years. That 2010 product was my last buy then. Sorry but I need a productive developer environment.

  4. Most people asking for cross-platform in the forums seem toe have no cross-platform development experience. Most seem to think they can compile the same application for Windows, Mac, Linux etc. at the press of a button.

    They are in for a disappointment. I predict great wailing and gnashing of teeth when the XPlatform Delphi comes out.

    I am not surprised there has to be a separate VCL per platform. There are not that many ways of doing cross-platform. I do assume however that this is a case of “throw-the-first-one-away”, so I expect these VCLs to incorporate lessons learned from Kylix.

    Altho’ the people asking for 64-bit generally do need it now, it does seem the number is fairly small.

    I believe 64-bit Delphi is part of a complete re-write which is in Barry Kelley’s capable hands. A brave move, but I can well believe the code base for Delphi is a bit of a mess now, judging by how much heavyweight runtime stuff gets installed, so I welcome the rewrite.

    But it’s small comfort to those having to answer to customers or superiors why they need to wait yet again for 64-bit. Many will probably not wait. We shall lose them.

  5. Two more years before we get 64-bit? Ouch! That may force us to implement workarounds, using multiple processes. And once we have that code base, we might not have to buy the 64-bit upgrade anymore, at least not the first release.
    So I agree, not delivering 64-bit in time for the customers that really need it will cost them money.

  6. Totally agree with you. Currently, 100% of the Delphi developpers target Windows. Why choosing to develop something “cool” for a minority of developpers who can afford to rewrite their app from scratch; instead of releasing something usefull for 100% of the user base ?

  7. I know perfect reason why they do it.
    Lets make small pause here…
    They are simply IDIOTS!
    Not young and unexpirienced IDIOTS, but the worst kind – technical geeks.
    They do it because it is COOL. I want to repeat it – COOL.
    They don’t know who to do it right, they don’t know anyone who really need it, but it is COOL.
    If we jump back in time we can find two perfect matches – NET stuff and CLX stuff. Both were COOL things.
    Last ten years Delphi behave like three leg rabbit under some heavy drugs. He jumps on random direction and always lands on his head.
    And problem of this rabbit is his head – leading management stuff of Delphi group, they are the same. Of course, they told us some fairy tales that Borland prevented them to be good. In fact, Borland implemented one important thing – it behave like bear under even harder drugs, so no one looked on the rabbit.
    And now rebbit is not his own and it looks that he managed to get new dose.

  8. A mac version of Delphi:

    Business users won’t buy it because Macs are simply not used in corporate environments.

    Hobbyists are not going to buy it because they don’t want to spend money if there are free (or illegal) alternatives.

    Mac users don’t buy it if it smells like Windows and if it’s not presented by a dude wearing a black turtleneck sweater and glasses.

    A Linux version of Delphi:
    Well, we’ve seen it and unfortunately it failed. Unless Delphi becomes an open source project, it’s just not going to be accepted by the Linux crowd.

  9. Jolyon,

    Can’t disagree with a word. We’ve been over all the arguements time and again. If Embarcadero haven’t yet understood the difference between desire and need, there is little to be done but shrug your shoulders and let them head for the rocks, again.

    As a company, we will keep our frustrations tucked away and deal with this in a professional manner. That will mean migrating to another tool at least for our server processes and inevitably for our client applications also.

    The handling of the roadmap is quite shocking. The complete lack of clarity regarding time lines, and continual re-prioritization of projects (I’m being kind) shows a very cavalier attitude to their customers.

    Thank you for acting as Embarcaderos customer relations on this one. The fact that information has to seep out through back channles is of course symptomatic of the problem.

    Not doubt in the coming days and weeks some form of official clarification (or denial!) will come, but it will not doubt be covered in caveats and vagueness.

  10. Hi Joylon,
    I have to agree with you that 64bit is needed now, not 2 years from now. For me, the main point is not break the memory barrier, but use 64bit libraries, for instance, 64bit Oracle or MQ Series client libraries. My customers are not using THESE libraries in the 64bit version nowadays, but I’m afraid that they won’t wait 2 years to start using it…

    Best regards

  11. @Francis R – No. Project X is Cross Platform… “X”-Platform… Project “X”. See what they did there?

    64-bit support is Project “Commodore” (although in this case I am assured that there is no intended reference to THE Commodore 64)

    There is no mistake or misunderstanding on my part. Malcolm Groves was quite clear. Delphi 2011 – 1 year from now… cross-platform. Delphi 2012 – 2 years from now… 64-bit.

    He was quite, quite unequivacol.

  12. Hey, if Apple got sued by The Beatles, is Embi running the risk of getting sued by Lionel Richie?

    …Ah, well. Just thought some humour might cheer us up a bit.

  13. Mac is 64 bit! I don’t think they will only produce 32 bit executables for mac. So we all get what we want 😉
    Btw I vote for mac support and I’m fully aware that I cannot recompile my app and be fine. But I get about one question per day if I could offer a mac version, so I’m looking forward to get at least the possibility.

  14. I would like to see a logical, clear & concise reasoning from Malcolm Groves, & Nick Hodges (Malcolm/Nick, are you listening?), as to why cross platform is more important than 64 bit support.

    Which groups of users are you targetting? Why? What is the value proposition for each of those groups? How will you sell such a product to hobbyists? The Linux community? The Mac community?

    Each one has such diverse cultures, expectations and price points that a single product may, by definition, by a poor fit for all of them, even if the VCLX is somehow a great fit for all targets and free from the compromises cross platform ‘widget’ libraries usually suffer from.

    Do this to help the Delphi community understand and appreciate what you are doing. And if you can’t, that’s a message in itself, isn’t it?

    Raymond.

  15. ummm… linux and mac will be more common place then you think… all the new handheld devices are almost all linux based… how do you think these will be programmed? opening the market to more platforms means more support financially… also, it would probably take longer for a total rewrite for 64 bit, then to add cross platform support… seeing as you’re all programmers this shouldn’t be too hard to figure out… now go back to your failing operating system upgrade that is vista sp3 in disguise…

  16. Hi ,
    i’am thinking , 64bit win or mac or linux or anything else ..sounds like an X-platform ..maybe they building the base for something big and when that will be ready they will build on that ( 64bit , iphone , mobile , embeded e.t.c )

    My 2 cent
    Sebastian.

  17. @maybe – handheld devices running Linux won’t be able to run DELPHI produced Linux applications unless they are Intel x86 Linux handheld devices any more than Windows CE devices can run current Windows apps.

    @stebi – yes, Mac is 64-bit, but the VCL isn’t and there isn’t currently planned to be a Win64 compiler in Project-X.

    So if you want Win64 Project-X does *not* give you what you want.

    This is think is the source of some confusion on the part of Embarcadero. I think some people may have assumed that Mac/Linux support must have meant 64-bit support implicitly because it only makes sense for it to do so, and so have not been particularly vocal in expressing concern at the direction.

    The lack of (or reduced) wailing and gnashing and teeth perhaps led Embarcadero to think that there wasn’t as much demand for Win64 as there is for Mac/Linux, and hence the mis-step they have taken.

  18. @sebastian – yes it is “something big”. The compiler has been re-architected (I think this is the “re-write” that someone else mentioned).

    The re-architected compiler allows Embarcadero to product cross-platform and Win64 compilers more easily. With the new compiler arthictecture in place, the question then is which is more important for delivery first – cross-platform or 64-bit.

    To say that each is progressing in parallel and are both being delivered as quickly as each is possible is specious nonesense.

    It is of course about prioritisation and allocation of resources.

    Embarcadero are choosing to put more effort into a cross-platform release than Win64, so we get Project X before Commodore.

    Yes we eventually get both, the problem is that by the time we get what we want… well, the chances are that a lot of people won’t be prepared to wait around that long.

    Especially since Embarcadero are proving very unreliable when it comes to roadmaps. Remember that as of 2 years ago this most recent release of Delphi (2010) was originally intended to be 64-bit. Now we are told it’s *another* two years away.

    Who’s to say what other pretty lights and cool distractions will divert Embarcadero’s efforts in that time?

    It’s more than technical, it’s a question of trust and patience and Embarcadero are playing fast and loose with the trust and patience of the Delphi community.

  19. @Joylon , Do you know any “real” cross platform development IDE / Language out in the market ( native ?) , ( by “real” i mean “quality” and “real life” product like RAD STUDIO , MS Visual Studio ) ??

    If this is done the right way by Emb , i think RAD Studio will be the first.

    And i also have the feeling that they will not delay 64Bit. And yes , they must give to “customers” what they need AND what they like/want.

    About priorities , can’t say youre wrong , maybe there is “paralel” development and they deliver all the “developments” in one shot , who knows ?? ( for sure nobody outside emb !!!).

    Have a nice day.
    Sebastian.

  20. @Sebastian: I know of lots of attempts… Java is the most obvious, Qt is another. Someone already posted links to yet other attempts that relate more closely to Delphi.

    And of course there was CLX and Kylix. (cough).

    All of these suffer the same problem imho – they are great at producing cross platform applications that fit a “lowest common denominator” approach to UI design.

    UI design in recent years has increasingly moved away from boiler-plate consistency however, toward far richer and more rewarding user experience, leveraging platform specific technologies to deliver that experience.

    Closer shell integration and more sophisticated graphical effects that rely on platform specific technologies such as DirectX etc to achieve acceptable performance.

    All that aside, of those existing technologies Qt is perhaps the most successful in terms of one that bears close comparison to a Delphi approach (native code), and here’s the thing….

    Do we think that Embarcadero can successfully compete with Qt? Owned by a little outfit called “Nokia”.

    Because it seems to me that that is where they are heading.

  21. Do not agree.

    What’s the point in 64 bit now? Isn’t majority of Delphi appications desktop ones? How many server-side Delphi applications do you create or use? Is there a need for 64 bit desktop? Lack of 8GB RAM?

    For cross-paltform, especially Linux it could save much money if you replace all your corporate workstations with Linux ones. Often you need to buy hundreds of XP licenses just to run your Delphi application and an Office suit.

  22. @Maxim: I can speak directly of experience with one 64-bit application where memory absolutely IS an issue.

    2 GB is not actually all that much, and in practice you won’t get to use all of that anyway in an application as heap fragmentation and other things reduce the usable amount of memory quite significantly.

    As for corporates saving money by replacing Windows desktop’s with Linux ones…. you forgot to mention having to replace all of the applications that the business already uses… Windows applications, many of which may be bespoke. And the issues of having to deal with the changes in interfaces to external and internal processes.

    The idea is a sound one in theory. The reality in practice is very, very different and will be for many years yet.

    Plus you forgot to account for the fact that Windows in many cases is plug-and-play in a corporate environment to an extent that Linux – whatever flavour you choose – still simply is not, and the costs of supporting the IT (in terms of extended downtime caused by lack of access to and availability of relevant, qualified support) still favour Windows I think.

    Whether we believe that is a good thing or not doesn’t alter the facts.

    Maybe small/medium business might lead the charge to Linux and even Open Source, but Microsoft are not stupid, and small/medium businesses are able to acquire Microsoft software – legitimately – very, VERY cheaply indeed (I think you would be surprised just how cheaply).

    And equally, large businesses get deep, deep discounts too. Certainly the costs are significant, but compared to the hardware costs the software costs are still actually relatively small.

    For good or ill, Microsoft have achieved a critical mass and density on the desktop that is going to be difficult, if not impossible, to break.

  23. @To all ….
    Love to hear more about “twinforms” but Freepascal/Lazarus isn’t at the moment something you can put your “life” on it !!! Don’t know what the future brings to us and to freepascal / Lazarus , maybe some day Freepascal / Lazarus will be the “new” “all in one and one for all” best think out there.

    I have to clarify that I am with Delphi , and if emb wants X before 64 and it can’t be the other way , I am with it !! BUT I want it the WRIGHT way , working /smoking / shocking and all the good “..ing” thinks..

    I have the feeling that most of us are not woried about 64 later than X , but if the X will be “son of Kylix” or “Chanchelor X”. For the good of Emb/Delphi/all of us not the first.

    Have faith dear “brother in arms”, because if the king go down we are going down with him…going eventualy to the “other camp/side”…

    Sebastian.

  24. @Maxim: I also have personal experience with the need for 64 bit support. As Jolyon says, 2GB is not really that much for some applications, such as ours.

    We have spatial DBs with 100s of millions of records. We can use all the memory we can lay our hands on. Approaches such as PAE and AWE are not a good fit in our environment which makes 64 bit support more important.

  25. Jolyon, this is getting tiresome. The comments you are attributing to me are a mixture of some things I did say, and some I can only guess you’ve assumed I meant. There’s a big difference.

    I have no problem being called to explain or justify the things I say, no issue. But I’m getting very tired of defending things I’ve never said.

Comments are closed.