My Favorite Quote from the XE5 Tour

I am just finishing up my last few stops on the RAD Studio XE5 tour. I’ve met lots of great developers, both existing Delphi developers, and many developers new to Delphi and Embarcadero’s tools. Everyone I talked to was excited about what they saw and the opportunities they knew XE5 would mean for them.

There was one guy in Vancouver who probably had the best comment. He was sitting the front row and as the presentation was going on I could see him getting kind of skeptical as he set there with his arms folded. The demos were flying left and right and everything was going great, so I wasn’t sure what he was skeptical about. Finally he raised his hand to ask a question.

“I’ve been using Google’s tool for Android development for a some time now, and I’m sitting here watching you make these demos, but I don’t see you writing much code. Are you hiding something from us or is it really this easy?”

I was a little surprised by his question. I showed him I wasn’t hiding anything and then explained that FireMonkey includes a lot of components that simplify common tasks. You still write code, but a lot of the busy work is taken care of for you. He responded that it was pretty incredible. The long time Delphi developers in the room who all smiled an nodded their head knowingly.

Sometimes, for those of us who have been using Delphi for years, we start taking some of the productivity benefits for granted, but for a lot of developers XE5 is introducing them to a whole new world of getting things done. This is a great time to upgrade to XE5 if you are new to Delphi, or have just been a away for a while . . .

  • Upgrade to XE5 from any earlier version (Upgrade price from any previous version)
  • Bonus pack with up to $1,150 in free software
  • Step Up to Ultimate Edition Free from Enterprise
  • Get a free C++Builder iOS upgrade when you buy qualifying C++Builder XE5 or RAD Studio XE5 tools

These deals expire the end of this month, December 31st. So treat yourself to a Christmas present and fill your new year with high productivity and true native apps on Windows, OS X, iOS and Android.

This entry was posted in Android, iOS. Bookmark the permalink.

15 Responses to My Favorite Quote from the XE5 Tour

  1. This reason, leave alone any other, is the Delphi advantage.

    Despite the fact have sense to learn Android and iOS backgrounds, you can produce working app with XE5 knowing nothing about iOS or Android. Try to do the same with any other tool.

    Second. Visual Design. Work on visual design with delphi si a pleasure, and let you test UI in literally minutes. again, try to do the same with ANY other tool.

    Third. The same app can run, effortless on Win32, Win64, Mac, iOS and Android. That mean if you are designing a database app, not using specific hardware in depth, your app will work out of the box on that environments.

  2. Joseph says:

    >Sometimes, for those of us who have been using Delphi for years, we start
    >taking some of the productivity benefits for granted, but for a lot of developers
    >XE5 is introducing them to a whole new world of getting things done.

    In 1998 this was true, but in 2013 you have .NET, Qt, Gtk, WxWidgets, and lots of other frameworks. They’re not a new concept or a secret part of the development world limited to Delphi. On top of that, we have higher-level languages than Delphi now (Ruby, Python, etc.) that were actually designed as RAD languages, which Pascal was not. Even statically-typed, compiled languages today like Go and D are offering automatic memory management, named parameters, generators, type inference, design-by-contract, array slicing, operator overloading, built-in support for parallel programming, etc. These features also convey quite a productivity benefit that we lack. Several languages today also incorporate full-featured, modern “batteries included” standard libraries. We just got a (poorly designed) REST library in 2013 and we still don’t have high-level tools to deal with HTML. As someone who just spent a lot of time working with time and dates, you can’t look at the DateUtils unit – which is so old it ISN’T EVEN OBJECT-ORIENTED – and talk seriously about the productivity benefits of Delphi.

    I know it’s your job to say these things, but it’s hard to take the claim seriously. As someone who used Delphi since 1995 and Borland Pascal before that, I’d love to have a chat with you about what specific features Delphi offers today provide productivity boosts over what specific competitors, both languages and frameworks (.NET offers LINQ, Qt overs a buit-in, ORM, FM offers neither). I’m implementing a major new personal project with an angel investor that could become a new business if it works in something other than Delphi specifically because Delphi’s productivity appears so poor today compared to other languages. I’ve been unable to find a single soul on Embarcadero’s forum who would even try to “sell me” on sticking with Delphi for my projects. Even EMBT’s own website offers no comparisons to other products, something I only found with Microsoft (which their monopoly status somewhat excuses). All this leads me to think I’m not missing anything when I compared languages and frameworks, but I’ve still got a small window of opportunity to be convinced otherwise if you’d like to point out something I’ve missed either here or by e-mail to delphi.10.alcalde@spamgourmet.com

  3. @joseph Nobody want to convince anybody of Delphi productivity. The opposite. Detractors like you seems very worried about show the light to delphi users about the piece of sh*t it is. Take it easy bro´. Delphi users know exactly how god it is, do you know?

    I find every day people talking like you, naming a lot of features other languages have. Well, just use other languages. Delphi is delphi, like it or don’t, you miss a lot of things where delphi rocks, and the things you don’t like about delphi maybe for others (a big users base) is a strong argument for use delphi.

    I don’t understand why so many people cry about the old styled delphi is, or the lack of one or another feature, or what delphi must be. Is like when you don’t like your girlfriend, why want to change that girl, just go away and both will be happy.

    I start using Delphi before you, and i like the way delphi growth without lost the rad concept behind. Is a impressive language, with lot of features, easy to maintain, easy to develop and release to market and the result is strong app. I have it running 24×7 app, never a stop, never a strange error, or something like that.

    So , to you and the all other peoples complaining all the time about delphi, please let me girlfriend alone and continue using all that impressive languages with all that impressive language. God luck!

  4. Gareth says:

    @germanpabloggentile – “Nobody wants to convince anybody of Delphi productivity.” Yet clearly that is exactly what McKeeth’s blog post is designed to do and this article refers specifically to a guy who hasn’t used Delphi before so your comments about old Delphi users keep using it and the rest can go use something else is the opposite of what McKeeth is trying to promote. Joseph is trying to say that productivity claims about Delphi are no longer as relevant as they were in the early days of Delphi and there are better choices out there for developers looking for new tools for mobile etc.

    I’ve been a Delphi user since V1 and I’ve been using it as my primary development tool right up until the start of this year. I love Delphi but I’ve stuck with Delphi 7 because having tried almost every update since then, especially since XE2, nothing has convinced me it’s any better to spend the extortionate upgrade costs. For me the final straw was using FireMonkey as their primary UI framework for multi-platform. This is unstable and virtually unusable technology and if I have to use that to get to mobile then I’d rather look at something else. Also this “true native” malarky is a complete nonsense and shows how backward-looking Embarcadero are in this day and age where every platform uses it’s own managed code framework and no-one is crying out to move to a “true native” app development tool esp when “true native” means deploying an app which may or may work on all devices esp in the Android space.

    The truth is that Delphi is now irrelevant and I wouldn’t recommend anybody use it for anything other than maintaining legacy VCL Windows apps. With Delphi’s irrelevance comes the increasing irrelevance of Delphi developer’s skills in the market and that is the true tragedy of it’s decline. I spent 10 years in the same camp as germanpabloggentile, fighting off the “Delphi is Dead” brigade but with every release since Delphi 7 offering little in productivity improvements and now with the focus toward the dog that is FireMonkey I have finally to admit that they were right and I was wrong. I now rue the time and effort I’ve put into developing with Delphi and missing the many opportunities I’ve had over the past 10 years to jump ship.

    I’ve now moved to VS and C# and the benefits are massive and a complete breath of fresh air. With RemObjects soon releasing their Hydrogene product to make their technology to get to iOS, Mac OSX and Android for C# developers (I think the cat’s out of the bag enough on that one for me to be able to mention it now 😉 and with C# you can already get to Windows Phone and WinRT (wonder when EMBT will get around to “true native” access for those?)

    I would advise Josepth and germanpabloggentile (and the Google Tools guy at the EMBT roadshow) not to waste any more valuable time, skill, effort and money on this and move on before the world passes you by.

  5. @gareth my friend, you are so wrong…im not fighting with “delphi is dead”, i don’t care if i am the only or last Delphi user on the world while delphi continues helping me having a successful product released using this tool.

    Your last delphi version was 7. Well… thats a joke? How can you talk about something you don’t even use? Seriously, are you kidding me?

    Delphi is irrelevant for who? Again : who cares! While delphi help me to release high quality software.. who cares!

    Just lets go and take the new language/compiler/framework you want. If is ok for you. But people like you seems to car what tool i use for my work and i can’t understand why… Which is the reason behind that insistence on say “delphi iOS dead” or “delphi sucks” or “delphi is old”. I don’t care that you say my friend, i just care if that tool for my needs or don’t and i suggest you do the same. If delphi don’t font your needs you have a lot of offers out there, take one of them, work in a real world project and then tell me what are the real advantages with Delphi.

    I already do: delphi wins for me. Enjoy your fresh air, we live in a free world, and please don’t care about me, don’t give me advise , don’t care about the world let me behind (WTF?)… Im fine, thanks!

  6. Jim McKeeth says:

    The purpose of my blog post is to share a comment by an individual that observed and compared Delphi’s productivity to that of Java for Android.

    And to be honest, there have been a lot of productivity enhancements since Delphi 7. I had a project I had to go back to Delphi 7 to work on, and it was so painful I ended up doing the work in a current version and back porting.

    You are correct that Delphi is no longer the only modern and productive programming language. It was ahead of its time when it was introduced, but it has continued to advance. Today developers have a lot of choices, which is a good thing, but Delphi still has many advantages. In the end the choice is yours.

  7. Gareth says:

    @germanpablogentile – “Your last delphi version was 7. Well… thats a joke? How can you talk about something you don’t even use? Seriously, are you kidding me?” I think you’ll find that a huge amount of Delphi users are still using Delphi 7 or earlier. I’ve spent a great amount of time working on evaluating new versions of Delphi, especially X2 and later as I was very interested on moving my app to Mac. There are some productivity improvements of course but nothing that would give me enough value to cover the $2,000+ upgrade cost. Compared to VS the intellisense and code editor are massively inferior. Trust me if you spent a month working in VS you wouldn’t wanna go back to Delphi.

    As I also said the move to FireMonkey is the thing that has finally killed Delphi for me. If it was a really great technology move in the same way as WPF has been for .NET and C# then great but it isn’t – it’s a dog. If was so good and so stable and reliable after 4 iterations of major releases and a huge number of Delphi developers were using it then why is DevExpress still refusing to consider developing FM versions of their components?

    Delphi still has something to offer but let’s be honest the only reason that most people are clinging onto it is that it offers a slither of hope that they can cling on to their old code and breathe new life into it for another few years. And that’s fine but if you want to be relevant and making money out of your software in 3+ years then I’d start making plans pretty quick to move away. It will be interesting to see what happens with Windows over the next 5 years with MS focusing more on WinRT and Windows mobile – if they deprecate their support for Win32/64 then where will you be with your “true native” code then? Up a certain creek without a manual propellant I suspect.

    Like I say, Delphi was great, I love it, I was highly productive in it and all of my major products are all still Delphi apps (for now), but the curtain is closing and has been for a long time. I see it now, I didn’t for a long time and germanpablogentile still can’t. It could’ve been different but in the chase for quick $ through quick and unstable releases and astonishingly high upgrade prices* they’ve destroyed any chance of it having a mainstream revival. *EMBT still haven’t grasped that most Delphi devs are not in the Enterprise anymore but are small software shops who can’t continually stretch to these prices.

    Jim is a good guy and he clearly knows his stuff but nothing has surprised me more this year than seeing him leave RemObjects for EMBT. RO seem to have the right forward-looking technology approach whereas EMBT’s offering is a shoe-horn to fit old into new. For me, looking in from the outside, Jim jumped on the wrong train.

  8. Joseph says:

    @germanpablogentile
    > Nobody want to convince anybody of Delphi productivity.

    Jim’s the Chief Evangelist, right? That would be his job. I should hope it would be a goal of marketing, too.

    >I find every day people talking like you, naming a lot of features other
    >languages have.

    And you don’t see this as a problem for the future of Delphi why exactly? The solution isn’t to stop people from talking! If Delphi’s becoming or has become uncompetitive, the answer is to see what people are finding in other languages and address those needs.

    >Well, just use other languages.

    1) That’s been happening for many years now, hence the lack of Delphi jobs, low TIOBE index, no commercial Delphi book published in the United States since 2005, Delphi being 39th in new projects started on GitHub in 2013 down from 34th in 2012, etc.

    2) This seems like a “go away and stop bothering us with the facts” comment. The Catholic theologian, Teilhard de Chardin, wrote during a time he was temporarily banned by the Catholic Church from publishing his works, “Only those who truly believe their faith dare to question it”.

    >Delphi is delphi, like it or don’t,

    Delphi is not some sort of unchanging entity, nor is Pascal. In the Delphi world we’ve seen the addition of generics, iteration, Unicode, lambdas, etc.

    >you miss a lot of things where delphi rocks, and the things you don’t like about
    >delphi maybe for others (a big users base) is a strong argument for use delphi.

    The problem I have is that people who talk about the strong argument today *don’t make one*. Notice here you’re not citing one specific fact? You just can’t attract new blood by general claims and no specific examples.

    I joined a start-up and chose Delphi as its development language from 1995 to 2003. Paired with Crystal Reports I called it “my Access Killer”. Compared to options like Visual Basic and C++ with MFC that were available then, it was much superior and I can discuss at length the features that gave it an edge over those products then. In 2004-2005 I was working for a very large company and was unsuccessful in bringing in Delphi – in fact, other than the Director of IT, the other IT employees *didn’t even know what Delphi was*. That’s when the sea change began occurring, at least in America – 2004-2005. I left there and moved into a different position where I wrote code to do my job, but writing code wasn’t my job. In 2012 two startups asked for my assistance helping them choose software stacks including language(s), databases and business intelligence/reporting tools. I began a systematic review of the field. I hadn’t been paying attention to Delphi to the last few years, especially as I was working with Linux now mostly from 2010 and would thus use FreePascal on that platform when necessary. I was hoping Delphi would come out ahead. Unforunately, as I wrote extensively elsewhere, that was not what I found and I’ve been asking people connected with EMBT or TeamB/MVPs since then to help me understand Delphi’s marketing message today. I still can’t find anyone willing to give concrete examples of specific claims to productivity enhancements compared to its competition. Worse and somewhat frighteningly, I’ve found in many cases that EMBT employees are completely unfamiliar with their competition! For instance Digia, owner of Qt, is moving the framework into Android and iOS just as FireMonkey is with the same general strategy. In his blog Marco made claims about Delphi being the only cross-platform native desktop and mobile solution, etc. Someone posted that Qt also fit that description. Marco said he “forgot about Qt” and then asked if they were using the NDK! All of Qt’s development is out in the open, so EMBT can see all the code changes they’re making at any time. They have at least 10x the developers of Delphi (210!) and should have the final release versions of Android and iOS support out by the end of the year and the Delphi product manager doesn’t even know the basics of what they’re doing? David I. basically also appeared to have zero knowledge of Digia’s solution. It just boggles my mind and makes me wonder whether they truly believe they have a change to sell to new users or whether they’ve given up and believe they’re only selling to the remaining user base and “milking the cow”.

    >I don’t understand why so many people cry about the old styled delphi is, or
    >the lack of one or another feature, or what delphi must be.

    That question should answer itself. Why would people complain that product X doesn’t have features that product Y has? Because those features are desirable and product X’s customer base wants them added to the product!

    >Is like when you don’t like your girlfriend, why want to change that girl, just
    >go away and both will be happy.

    And when everyone goes away, where does that leave Delphi? Dead. It’s the people who are complaining who really care about the product. They actually want to improve it and make it competitive and not be reduced to being a niche language that no younger person’s ever heard of. Once upon a time the Linux community had a bunch of people who didn’t want the OS to become user friendly because they wanted to keep people away so that they could feel special and smart because they were using a niche OS with a reputation of being difficult to use. Fortunately that camp didn’t win out or Linux would not have achieved the success it has.

    >I start using Delphi before you,

    I started using it in November 1995 and was using Borland Pascal and OWL (groan) before that. Delphi 1.0 was released in February 1995. You couldn’t have been using Delphi much earlier than I was.

    >and i like the way delphi growth without lost the rad concept behind.

    That’s the problem! The language itself was never designed with RAD in mind! As Anders explained at Delphi’s unveiling to the press when asked why not C++, no one else was using Pascal at the time so they thought they could take it and do what they wanted with it without anyone complaining. But now, in 2013, many languages exist like Ruby and Python that were specifically designed to be as productive as possible – real RAD languages. Delphi has a RAD framework but its language was only RAD compared to 1995’s C++. This is actually my biggest problem with the state of the product in 2013 – the language has fallen far, far behind the current state of the art for RAD languages. Heck, no statically typed language I’ve seen created from 2000 onwards has left out type inference for instance. Then there’s design by contract, automatic memory management, slice notation, list comprehensions and so much more that are present in many languages today. OXygene has incorporated some of these things, as has DWScript. Their parent language, Delphi, though, remains far behind the curve. Learning Python, I’ve rewritten some Delphi code and found that the larger the project the greater the difference in code size: I’ve seen code reductions of 1/2 to 1/4 and recently 1/5 the code! Python is one of the “gold standard” languages along with Ruby for productivity-focused/RAD languages today. When you talk about the productivity of Delphi today, you can’t compare it to C++ or Java; you need to compare it to the state of the art. When one does that, we find we’re missing quite a few modern features.

    >Is a impressive language,

    Details please – how so, and compared to what?

    >with lot of features,

    Sigh – everything has lots of features today. Which features? Name some unique, positive features of Delphi in 2013. C# has LINQ, Python has list comprehensions… what unique features does Delphi offer today that its competition doesn’t? What are some of its killer features today?

    >easy to maintain, easy to develop and release to market

    The ecosystem is nearly dead, no internet services or reporting tools make SDKs for it, the 3rd party community is a small size compared to what it once was, there are no free online courses for Delphi, there are no interactive websites that teach Delphi, there are no Delphi books or magazines in stores, there are few developers left – how does this make it easy to develop or maintain? Heck, it doesn’t even integrate support for modern distributed version control systems like github or mercurial out of the box. It’s also a pain to interface with C++ and sometimes even C libraries. Again, these vague claims of “easy” have no meaning unless we know what the benchmark is – compared to what. Which products are harder to develop with or maintain, and why?

    >and the result is strong app. I have it running 24×7 app, never a stop, never
    >a strange error, or something like that.

    And you believe this is a unique property of Delphi? 65% of internet-facing servers are running Linux, so we know they’re not running (modern) Delphi code. Obviously they’re running 24×7 code too written in languages other than Delphi.

    >So , to you and the all other peoples complaining all the time about delphi,
    >please let me girlfriend alone and continue using all that impressive
    >languages with all that impressive language.

    We care about the language too much to do that.

  9. Gareth says:

    @joseph & germanpablogentile – Here’s a great article on RemObject’s website which highlights the significant shortcomings of Delphi today. Sure it’s a marketing piece of behalf of Oxygene but it really hits the nail on the head especially related to cross-platform and FireMonkey :

    http://www.remobjects.com/elements/oxygene/vs/delphi.aspx

    Germanpablogentile disagreed with my comment that Delphi is now irrelevant. Joseph’s explanation of lack of books, 3rd party tools, online tutorials, forums, job postings, low ranking on TIOBE etc etc etc prove that this is the case. Most developers who have less than 10 years experience have never even heard of Delphi. Of course Delphi still does a job but it’s about maintenance not about new projects or future-relevant technology. Nobody wants to be the last one switching off the lights and no-one wants to be left with redundant skills that nobody wants to employ and that’s why I would recommend existing Delphi developers go into maintenance mode with their Delphi apps and look to move elsewhere. Certainly do not pin your hopes on a future with FireMonkey whether for mobile or anything else – it’s a short-term fix at best.

    If I was CEO of EMBT I’d acquire RemObject’s Oxygene (although seriously I doubt they’d sell to them!) rename the current product “Delphi – Legacy Edition”, drop FireMonkey and go forward with Oxygene as “Delphi”, reduce prices significantly and market like crazy to attract new developers. Although this shouldn’t matter to Delphi developers who can simply go and buy Oxygene for a fraction of the cost of Delphi right now! (I have no affiliation with RemObjects, I just admire their technology and approach).

  10. @gareth your recommendation of mixing Oxygene with Delphi is the problem. Oxygene is a great piece of technology, but is not delphi, is a completely different concept. On Oxygene you must know in depth Android topics to even show a button on the screen, and you have to draw this almost by hand, just to start. Yes, it have a lot of advantages, i will not make a list there, but is another concept. Why must delphi lost the strong points (do you really need i make a list here? are you kidding me , again?) to be another language. Let´s coexist Delphi and Oxygene. I hope EMB never buy RemObjects and hope RemObjects never lets alone Delphi developers. And i am a TeamRO member, by the way, you don’t have to explain me how great is RemObjects company…

  11. Gareth says:

    @germanpablogentile – my comment about EMBT acquiring RemObject’s Oxygene was made tongue-in-cheek just to highlight that EMBT’s approach with Delphi is backward looking and RO’s approach with Oxygene (and the soon to be Hydrogene) is forward-looking.

    As a member of TeamRO why the hell you’d want to use the half-baked approach of FireMonkey for your mobile development when you’re proficient in using Oxygene is beyond me. Or are you just proving my point that you’re using Delphi for maintaining existing apps and shoe-horning your old code into FM to breathe a little life into it on mobile but moving elsewhere for new development ie Oxygene? In that case we agree because I’m doing exactly the same (except not touching FM with a bargepole).

    I’m really glad we agree that Delphi still has something to offer – as a Windows VCL app maintenance tool. I’m pleased we cleared that up 😉

  12. @gareth i was user for DataAbstract for years. That library is impressive, and i have a lot of projects kurt there, in the real world, working with Delphi + DA. Why im using FM? Well, because have no learning curve for delphi users. That is the main reason. Also because Oxygene lacks of decent GUI editor for Android, and the learning curve is gorgeous, and theres no help/guide for new users on android or iOS. Basically, Oxygene is have no a common RTL and that is good for many users and bad for others. That imp lies you have to do many things different on iOS/Android or whatever you use. very low code shared between each environment .
    Don’t try to understand why some users like it or don’t, or have the universal true on which is the better tool my friend. Is a free world, again, just use the tool you fell more productive and you will be right.

  13. alasoft says:

    Hi everybody .. reading some commentaries saying ‘Delphi is irrelevant’ .. ‘Delphi is dead’ .. and son on .. maybe that’s true or not, I reall don’t know from a market point of view, wich is now dominated by mobile and web applications.

    But .. WHAT I KNOW .. is that some months ago, I suddenly show a simple Web application made up in Delphi with UniGUI to a full team of super Java and Php developers and ask them a simple question: How much time do you put to make this ? (a relatively simple windowed CRUD application, with many sophisticated details) ..

    Then the guys begin .. ‘uhh .. maybe a week and a half’ said one .. ‘well no, maybe just a week’ .. then came the Php guru and said ‘I’ll have this for tomorrow night’ .. ‘and you how much time put to make this ?’ .. asked all of them, but then I shut my mouth … and you know why.

    That’s Delphi an incredible super fast productive tool ..

  14. Gareth says:

    Making a serious web app in Delphi?? Seriously!? Come on!? Did you use those wonderful technologies known as DataSnap and IntraWeb? Good luck with that!!

    I appreciate that Delphi was a highly productive tool to create VCL Windows apps and I have around 15 years experience to prove that. While Delphi may not yet be “dead” (so long as people keep using it and EMBT keep developing it and people are prepared to stump up the ridiculously high upgrade costs) it is however irrelevant in the marketplace. Delphi skills are irrelevant and not in demand at all. A Delphi-only developer? The market doesn’t consider you a developer at all. Regardless of how productive you are in a language, if no-one wants you or your skills then it’s irrelevant – simple as that. I implore all Delphi developers to get real, put your existing apps in maintenance mode, sell them and support them but move on to something which will be around and helping you pay your bills in 3 or 4 years time.

    If Delphi wasn’t dead before then FireMonkey has put a knife squarely between it’s shoulders and it’s now staggering around gasping for it’s last gasp of air.

  15. Jim McKeeth says:

    Hearsay about current editions is hardly a basis for judgement, especially when you are still running an older version. As I said before, this quote was from someone watching me write and run demos. He was impressed with the productivity and performance of the apps.

    FireMonkey has come a long way in performance improvements, enhancements and features. It now supports 4 completely different platforms: Windows, OS X, iOS and Android, which includes 3 different CPU architectures. If you haven’t used the latest version then you haven’t used it.

    I’ve met customers who are using it and doing really amazing things with it.

Comments are closed.