The debugging support of FPC+Lazarus nowadays is just as good as anything in the GNU tool-chain style compilers for example. I don't have a single issue debugging my code and I can't think of anything about debugging in Delphi that is better or that I can do without. Debugging works fine on Windows, Linux and OSX - although OSX Lazarus is a bit quirky but that's mainly down to jumping through X-code hoops.

Delphi is all about the components it ships with which are generally of a very high quality.

However I personally think Firemonkey is a joke - given they're a large commercial company they should be capable of far more than I am - yet my own comparative system is so much better it's funny - it doesn't give me much confidence in the abilities of their developers if a group of people being paid good wages are incapable of producing a better system than one person working in their spare time.

Their abysmal cross platform support over the years is nothing short of embarrassing nowadays - again they pay their developers an actual wage - why can't they do what Lazarus has been doing for years? who the hell is coding for them? the aliens from independence day?

Not to mention they expect you to pay extra for the 'privilege' of cross platform development, I mean *seriously*?

Unless you're being forced to support some old Delphi code base - updating it because it would be too expensive to re-implement - Delphi is dead - only somebody without another economically viable choice would *pay* for what is free everywhere else.

I miss Borland - they actually cared about their product and their customers - not just the money they could squeeze out of them.

I say this as somebody that has been coding in object pascal for over 25 years - I'm an expert and as much of an authority in the language as anybody can be - FPC + Lazarus are the better choice. I don't see why anybody in a position to choose would choose anything else.