Delphi XE5: Promised Android support not included!
This isn’t the post I was planning on writing. I was really looking forward to this latest release. I really wanted to like it. I really wanted to use it, and I really wanted to be able to talk on here about how awesome it is. Afterall, this release was going to finally bring Android support to Delphi, which has been something it’s needed for several years now.
Unfortunately… it doesn’t. I just got my SA download and installed it, and there’s no Android support anywhere to be found. Apparently that’s not part of Delphi; it’s an “add-on pack” that costs 140% of what I already paid for SA this year! All that’s in Delphi XE5 itself is the Desktop development stuff I already have, which has scarcely changed at all since XE2. With pricing that high, you’d almost think someone in Embarcadero marketing is deliberately trying to drive users to Oxygene!
That makes me seriously wonder what it is I’m paying for. I purchased SE on the good-faith belief that I was making an investment in R&D for Delphi, with the promised return on investment being the fruits of that research and development, as it has been in the past. But this year’s fruit, that I paid for, has been pretty much exclusively in mobile, and someone decided not to include it in my return on investment!
And this isn’t even a case of the proverbial “nickel and diming” either. I’ve already paid my dollar, and now they want an extra $1.40, as it were. That’s blatant double-dipping, and then some! And it needs to stop. I’ve been saying for years (as has almost the entire community) that the price of Delphi is far too high and it’s harming the product and the community, and with further price increases and blatant bait-and-switch marketing, it’s time to put my money where my mouth is. So I’m drawing the line.
I do not do business with companies whose policy is to rip off paying customers. I already paid good money to fund Android development, in good faith. That faith has been broken, and steps must be taken to restore it. I will not pay extra to purchase an “add-on” that I have already paid for the development of, and if I am not able to develop native Android applications in Delphi by the time my SA is up for renewal, I will not renew.
I’m very sad it has to come to this. This is not at all the article I was planning on writing after getting my copy of XE5! And I still really love the Delphi language. But what can you do, when a good product is being mismanaged by a bad company?
I have SA on the Rad Studio instead of just Delphi, and it has mobile in it. Are you saying you have zero mobile support in Delphi SA? How much are your annual costs for that?
Yes, I’m saying that when I open Delphi XE5, I cannot create a new Android project, period. (Or an iOS project, but I don’t care about that.) No mobile support unless I pay out even more than I already paid.
What version of RADStudio do you have SA on?
I think Embarcadero has been saying for a while that only Enterprise and Architect customers on SA get Android support bundled with the XE5 release.
I have Enterprise SA and while I have not installed XE5 yet (just downloaded it), and I see a bunch of Android files in the ISO distribution.
There’s no good reason why it should be an Enterprise feature; mobile development isn’t an “enterprisey” thing.
You know what is, though? A new REST framework. A library for a URL technique that lets programs (not human beings) talk more efficiently to Web servers is about as enterprisey as it gets. But mobile development is something that ordinary individual developers are interested in, and there’s no justification for not including it in the core Delphi distribution, especially when it’s the big new feature they’re advertising and the one that’s received the lion’s share of development work.
REST is as enterprisey as twitter and WordPress, Internet is years away from Enterprises-only state
Mason, sadly this shouldn’t have come as a surprise to you. http://www.deltics.co.nz/blog/?p=1365
The separation of Mobile support occurred with the release of XE3, when they removed the beta iOS capability. It only re-appeared with XE4 when the Mobile Add-On first became available.
Similar to yourself, I bought XE2 on the strength of the promised future delivery of mobile platforms. I cancelled my SA after one year, making sure I at least got XE3 – for what it was worth (actually for far more than it was worth since it really had nothing new for Windows desktop development over XE2).
I also dropped the $49 on the upgrade to XE4, just because it was cheap enough to keep my toe in the door of a future upgrade eligibility window, should Delphi ever become an affordable, compelling proposition in the next 2-3 years.
If you love the language, as I do, consider doing what I did…. take a good look at Oxygene.
It’s a better Pascal even than Delphi these days and fully supports Android (and iOS) development using the platform native frameworks, so you get to learn “proper” Android development (portable skills) without having to swallow the Java pill.
Oh, I’ve taken a very serious look at it already. The problem is, you’re still swallowing the Java pill; it’s just got a Delphi-flavored candy coating on it. But everything you do still involves Java system libraries and dealing with Java language warts that ended up worked into the JVM because it was built around the Java language. For example, this means that no matter what language you’re supposedly working with, you still have no value types and a horribly broken Generics system.
And there are some very serious problems in the Java libraries. For example, the following exercise:
With no prior experience, produce a function that takes a URL (string) as a parameter, POSTs a predefined username and password to it, and returns a string containing the same HTML that would show up if you performed the equivalent login operation in a web browser and then used Show Source on the resulting page.
Time to do this with Indy, on my first attempt: about half an hour, and it worked.
Time to do this in Oxygene for Java: I gave up after two days of diving down an ever-deeper sequence of rabbit holes because, after I finally got the POST operation to actually complete successfully, I could not for the life of me figure out the necessary magical incantations required to get it to correctly handle the redirect from the server. (Which Indy does automatically.) And a bit of Googling tells me I’m not the only one having trouble with this really fundamental bit of functionality.
If the fine folks over at RO could produce a native compiler for Android like they’ve done for iOS, that would allow me to sidestep the headaches of the JVM and do the sort of Delphi development I’m used to, I’d give it another very serious look.
Native compiler for Android would not give you a thing but incompatibility with half of the phones out there, as “happy” XE5 users are starting to learn.
You’ve got top-model year or two ago, like Tegra2 Asus Transformer or Samsung Galaxy Tab ? Get off, your XE5 app is just a blank screen.
You’ve got top-model of this year (Intel Atom) ? Get off, your XE5 app is just a blank screen.
You’ve got cheap model on not-most-recent entry-level ARM CPU ? Get off, your XE5 app is just a blank screen.
You’ve got an ultra-cheap MIPS CPU tablet/phone ? Get off, your XE5 app is just a blank screen.
EMBT embraced LLVM compiler just to castrate it and disable everythign it could offer except for a single ARM+NEON target.
Then they failed to embrace LLVM-DB and instead attached an outdated slow GCC-debugger to it.
Well, enjoy those native code benefits, would you?
I would also note that NDK-based games were behaving very OS-unfriendly to Android 2 and a little more OS-friendly on Android 4.
Google said they would be changing this in Android 5, but it is not delivered yet.
So even if your XE5 CPU-Native app would start, its behavior would not be on par with OS-Native behavior of JVM-based apps.
Now, if your goal is to recompile INDY/Synapse/ICU for Android target, then what you care is a front-end, not back-end.
You would not compile Indy with Oxygene, no matter if it emits JVM/Dalvik bundles or ARM .so – the language is different.
And i do have doubts that language changes in so called “Delphi NextGen” would allow easy porting of INDY/Synapse/ICU nor their seems to be a lot of people wishing to carry that load, but we’d have to see it.
Meanwhile why won’t you find some 3rd-party HTTP client library for Java/Scala/Oxygene or any other JVM Language ?
INDY/Synapse/ICU are not part of Delphi – they are merely 3rd-party projects bundled with the installer.
I do think you may find similar libraries for Java as well.
I agree entirely with you which is one of the reasons after paying SA on the Architect edition of RAD Studio diring the CodeGear days, I stopped paying SA. At that time I did so to show my support for CodeGear and the Delphi product. Although the releases did get significantly better under CodeGear, I was still using Delphi 7 for every day dev. Since then I’ve seen SA as just a way of evening out the revenue trough for EMBT, with no guarantee of bug fixes or development of new features (or completion of half baked ones for that matter).
If EMBT was listening to it’s customers, it would be a different story. While I might experiment with Delphi’s mobile features, I neither agree that it’s the best approach, nor that EMBT will ever see the light when it comes to their customer relations. I had a couple conversations with Tony de la Lama, the head of Senior Vice President of Marketing and Engineering (the title should give you a clue….there are no more disparate endeavours that engineering and marketing). He said he would look into my issues with QC and get back to me. He never did. So did Mike Rozlog, and I probably don’t have to elaborate on my experience with the Vice President of Developer Relations and Chief Evangelist. I have met no one from EMBT who walks their talk. The company is disorganized, unwilling to accept constructive criticism, and unwilling or unable to figure out what their customers really want, and what is fair to them (or they simply don’t care).
Delphi was great tech and IMHO can be again. I would encourage everyone tired of EMBT to contribute to an open source effort (Lazarus/FreePascal?) to make a comparable product, or adopt an alternative like Oxygene.
Lazarus is the option many Delphi programmers have taken. Do you know pas4mobile? It’s a true native iOS pascal development library for Lazarus. http://pas4mobile.com
I bought Delphi XE4 with iOS Mobile support and I am very very unhappy that I have to pay almost the same amount to get Android support. I would have expected to pay a small amount to upgrade to XE5 with iOS , and then a modest price for Android support.
Even better would have been to get a free upgrade to XE5 if I purchase the Android pack! I am now thinking twice and actually wondering about what other tools are offering.
That’s XE4 PRo and XE5 PRo I am talking about.
I felt the same way when I paid for my renewal of Delphi DataAbstract with RemObjects and I got only bug fixes (mostly regressions) and no new features. They changed the plans to two updates per year and their road map on Delphi is, “lots of good stuff”. So basically yeah, I’m paying whatever Jolyon is using right now.
Is RO at fault here? nope. That is how business works, nothing knew.
Couldn’t agree more. I’m not a Delphi hater, in fact just the opposite, but the pricing of XE5 has left me exasperated. I bought XE3 last year, upgraded to XE4 earlier this year for iOS support. Now, to get XE5 and Android support, I have to pay MORE than my XE3 licence cost me last year.
As Wilfred said, for those of us with current licences, the “add-on” price for Android development should be minimal.
Hopefully Embarcadero are listening, but recent evidence suggests not.
Pick a Keygen and be happy!
lol
I’d rather wait for XE6 release and then would compare Lazarus/CodeTyphon offering for Android with XE6 one.
If XE2 taught as anything, that is “don’t even consider 1st version of any new EMBT technology”, so XE5 must be skipped by anyone, who does not want to be in trap like those invested into FMX-1 or iOS-support-1
Remember: even with a keygen you still invest a lot of your time.
In russian forums there is a funny guy, who invested a lot of time to learn FMX-1 and fix its bugs… just to see all his chances are totally incompatible with FMX2.
Now he tries to port his application to Qt5 🙂
My guess is that most users did the opposite, they have no SA and bypassed XE3 and XE4 to jump directly from XE2 or previous to XE5. So I guess that’s why EMBT had to raise upgrade prices.
It’s not an excuse, just an explanation.
What’s more worrying is that the entry price for a new customer to get “delphi for android” is 1500€ ! woaw !
I fully agree with Mason when he says “mobile development is something that ordinary individual developers are interested in, and there’s no justification for not including it in the core Delphi distribution” and I would add that even STARTER edition should have a $99 android addon to lower the entry ticket for new customers.
I would add there’s nothing evil in the price setting. They just compute the price to reach the turnover income goal. Book-keeper beancounter strategy.
I wonder if such strategy is instructed in MBA ?
Given the quality of EMBT releases (many times they do not actually try to run their RTL/VCL code, nor do they run “sample code” snippets from their Help) i would say that starter edition is a no go. Especially for new platform like Android.
Even the entry-level versino of Delphi should have RTL/VCL/FMX sources bundled – because EMBT just cannot be trusted on quality and reliability of those codes.
100% agree. I don’t care what the fine print says. I expect something for my money. I think I should expect mobile development even if I am only on Delphi Pro SA. After all what for do I pay it every year. To get some minor changes and even more new bugs, with old ones still there.
This was my last SA renewal. Period. Time to learn a new language and only stick to Delphi for old stuff.
I am really pissed off about the price policy of Embarcadero. I have purchased Delphi Enterprise 4, 43 days ago, and now I should pay 1.379 Euro for an upgrade after 43 days! This is really annoying!
Of course I mean Delphi Enterprise “XE4”
Delphi slogan is “Caveat emptor”
Feeling sorry for you, but what did you expect from EMBT, the cmopany who tried to disable TCP/IP in XE3 Pro and it made a lot of public uproar to make them revert this?
On my part i am getting amused by COM ubgs introduced with last updates for XE2. I just can’t decide whether QA team was neglecting or that was a plan to make people pay for XE3.
The “one size fits all” upgrading price should be reviewed by EMBT. Too much monkey business 😉
But that is -AFAIK- the one thing that EMBT will still fix for you when you contact them or your retailer.
So: contact either of them.
My prev is @Peter, of course.
Delphi Pro AFAIR never (After XE2 bait and switch) offered any mobile solutions. Not even Delphi XE4 Pro.
It is somewhat vague but it seems that you had Delphi Pro XE4 – without mobile tools, and then you paid in advance for Delphi Pro XE5 that also would not have mobile tools just like XE4 you already owned. And then you wonder what XE5 packaging did not changed comparing with XE4.
EMBT pricing is really bad, but in this story i just cannot understand what was so sudden to you ?
[…] Smith has been posting a lot of really rosy stuff about Oxygene lately. And he even commented on a recent blog post of mine, in response to my frustration about Embarcadero blatantly ripping off paying customers by not […]
BTW, recently a book came out, how to program Android using Lazarus/CodeTyphon environment.
Probably it is even more complex yet than using Delphi, but at least they pay for their R&D themselves.
Posted three links here for Android development, but they did not make it in this blog
I have been programming Pascal since Turbo and I gave up on Android support in Delphi two years ago. Then I installed Eclipse and the Android SDK. It was a little confusing in the beginning but it didn’t take long to learn programming in Androids version of Java, there is plenty of help on Stackoverflow. I now have three enterprise applications on Android. I stop buying Delphi when I upgraded to XE and found my self using 2007 over XE.
Why are you guys paying for Android development? It is open source and free. Stop complaining take the Java pill. Even the embacaderro forums run on Java. Where is Delphi for the web?
The eclipse IDE works perfectly for android development. What I have seen since I left Delphi in 2005 is that if there ain’t no component to do the job Delphi programmers cant do anything.
Its a shame what happened to Delphi but I had to make a choice between becoming a programmer with a skill set that does not attract work or being relevant in the Market.
I was a customer of Borland (and all name changes) from turbo pascal up until about two years ago. We purchased all the upgrades of turbo pascal and most of the Delphi upgrades, some of which were so unusable we reverted to the previous version. In the end I bit the bullet and refused to pay for poor QA, expensive low quality support (in Australia I often had no answer on the support line) and the total disregard of customer requirement, problems and complaints. I remember a post requesting the next upgrade had no new features that they just fixed all the bugs.
When receiving an email about Delphi I sometime think (hope) that by some miracle they have got their act together and the reviews will be positive. No such luck and I believe things will not change unless a more customer oriented company buys Embarcadero.
One day I received a phone call offering me an upgrade for about $1,000 I told the young lady I would not use Delphi again if they paid me $1,000 and I am sure that there are many other ex-customers who feel the same.
Yeah, I got a call from Embarcadero in the UK trying to sell me an upgrade to XE5. I told him, in great detail, why we wouldnt be upgrading and why we’d moved away from Delphi and were re-writing our apps in C# rather than refactor/rewrite with FireMonkey. The guy sounded completely disillusioned and inconsolable as though he’d heard the same things over and over and over again all day long. I’d almost feel sorry for him if he wasn’t trying to peddle a load of over-priced, unusable and irrelevant technology garbage to me.
I’d spent years fighting the “Delphi is Dead” brigade – ever since 2003 in fact – and stuck with Delphi through thick and thin. At the start of this year I finally came to the realization that everyone else had been right and I’d been wrong and should have listened when I’d had the many opportunities over the last 10 years to jump ship. I rue the time and effort spent in a technology which has gone nowhere and provided me with no long term benefits. It’s no coincidence that still the best release is Delphi 7, which I still use to maintain an existing app until we can move on. No coincidence 7 was released in 2002!
[…] twice: once without it and then again for the “add-on”. (Yeah, I got it. Remember my complaint a year ago about Embarcadero’s handling of all this? Well, to my surprise they actually listened!) […]
Hey I know this is off topic but I was wondering if you knew of any widgets I could add to my blog that automatically tweet my newest twitter updates.
I’ve been looking for a plug-in like this for quite some time and was
hoping maybe you would have some experience with something like this.
Please let me know if you run into anything. I truly enjoy reading
your blog and I look forward to your new updates.
Review my website … source web page; santosneyk.bravesites.com,
Thhat is really interesting, You’re a very skilled blogger.
I’ve joined your feed andd look forward to in quest of extra of your wonderful post.
Additionally, I have shared your weeb site in mmy social networks