I really hope Lazarus will do away with full IDE recompilation and already adopt Delphi's style of pre-compiled objects (aka .DCU's) when adding a new component to palette in it. Until then it still feels like amateur, not "professional".
That style is for me personally a source of frustration every time I have to add a new component that shares the same name with an existing one, while in Delphi is just a simple error message and you can quickly switch between whichever you want. Heck, in Delphi I can fully name qualify both of them at the same time for runtime. Try do this in Lazarus with one that uses a design time 3rd party component and you're dead in the water.
This is because some major refactoring has to happen in RTTI and system units to support dynamic linking so that true delphi-style runtime dynamic packages can be supported. This is easier said then done because of how many platforms are supported by FPC & Lazarus.
>In contrast, Delphi IDE only runs on windows ... <
And? I don't see that as a minus in a world where virtualization and virtual machines exists. Also in Delphi IDE, in order to target Linux or Android, all you have to do is "select from this drop-down" and rebuild and/or deploy and voila!, you have executables ready to go. You try have a easy switchable Lazarus to compile for a new OS because I gave up. Right now, for each OS I want to target, I have a separate virtual machine with Lazarus installed there. Long live cheap RAM because I can run all 5 Lazarus VM's I need for creating cross-platform executables (Lin/Droid/iOS/MacOS/Win)
That style is for me personally a source of frustration every time I have to add a new component that shares the same name with an existing one, while in Delphi is just a simple error message and you can quickly switch between whichever you want. Heck, in Delphi I can fully name qualify both of them at the same time for runtime. Try do this in Lazarus with one that uses a design time 3rd party component and you're dead in the water.