Ich weiss, dass die Frage in den Kern der Delphi/Lazarus Philosophie trifft.
Ich möchte mich deshalb auch im voraus bei Allen entschuldigen, deren Weltbild diese Frage tangiert.

Ich selber habe vor bald zehn Jahren meine ersten Schritte in ObjectPascal nach TurboPascal und VB mit Delphi gemacht.
Damals kamen mir die Komponenten in der Palette sehr entgegen, weil ich damit relativ einfach erste Lernschritte machen konnte.
Heute aber und gerade unter Lazarus, empfinde ich die installierbaren Komponenten oft als Hindernis (englisch pita).
Wieviele Threads lesen wir über: "Kann das, kann dieses nicht installieren".
Am Schlimmsten finde ich diese scheinbar unüberwindlichen Probleme bei nicht-visuellen Komponenten wie Indy, ACS, etc.
Viele Lazarus User können mit dem Code scheinbar gar nichts anfangen, wenn er nicht "installierbar" ist.
Hier tritt sich doch eine Philosophie auf die eigenen Füsse.
Natürlich kann es jeder halten wie er will, aber ich selber schreib mir lieber mal eben z.B.
fWaveIn := TWaveIn.Create(Self);
fAOLive := TAOLive.create(Self);
fAOLive.Input := fWaveIn;
fAOLive.OnDone := OnPlayDone;
fAOLive.OnThreadException := OnThreadException;
fAOLive.OnProgress := OnProgress;
in den Code, als das sich ich ne Woche lang probiere die Komponente zu installieren.
Manchmal empfinde ich diese Package und Komponenten Gläubigkeit auch als Verblödung.
Beispiel: Bei der letzten Version von OPBitmap musste man nur noch "uses RegisterLazOp" in die Uses Klausel aufnehmen und man hat alle Formate völlig unmerklich via TFPCustomImageReader und TFPCustomImageWriter zur Verfügung.
Ratet mal, was der erste Kommentar ausserhalb des deutschen LazarusForums war, den ich bekommen habe!
"Thanks a lot, I tried it and it works fine.
How to "install" all these units on Lazarus?"
Meine Absicht war doch gerade, dass man nichts installieren muss.
Ich schreibe auch alle meine Demos so, dass man nicht instalieren muss, um zu sehen was es tut, indem ich die Komponenten im Code erstelle.
Ich wäre wirklich froh, wenn das alle so machen würden.
Ausserdem ist es so viel einfacher Delphi/Kylix/Lazarus kompatiblen Code zu erstellen.
Für mich ist diese Package und Komponenten Religion eine reine Zeitverschwendung für echte Anwendungen, ausser man möchte nur mit der IDE spielen.

Das geht doch z.B. mit Synapse auch und hat letzlich nur Vorteile, sogar über Versionen hinweg, vom weitergeben des Codes ganz zu schweigen.
Denkt doch mal über Effizienz unter dem Strich nach. Es gibt immer seltsame Ansichten darüber.
z.B. gibt es die MSEIde. Deren Programmiertechnisch extrem begabte Autor, argumentiert damit, dass sein System effizienter sei als Delphi/Lazarus.
Nun hat er aber selber tausende Stunden in dieses System investiert und hat gerade mal einen User.
Das hat natürlich seinen Grund, weil das System so gar nichts mit der VCL zu tun hat, dass niemand das lernen möchte.
Aber ja, effizient ist das!!!

Nein! Es gibt nichts ineffizienteres als alle Nase lang ein neues System zu erlernen, oder sich mit dem System an sich herumzuschlagen (Packages).
Letzteres wird dann aber immer mit "Einfachheit" und "Effizienz" begründet, aber ich glaube alle die dies behaupten, sind nicht weit über "hello world" hinausgekommen.
Wie denkt ihr darüber?