Das finde ich jetzt sehr Spannend: gibt es eine solche Garantie bei Delphi? Das natürlich sehr schön.
Eine Garantie im rechtlichen Sinne natürlich nicht, aber es wird immer versucht so kompatibel wie nur möglich zu sein. Was z.B. zu inkonsistenten Bezeichnungen in der StrUtils.pas bezüglich
Unicode geführt hat. Aber es war nicht anders möglich ohne auch bei gut geschriebener Software einen großen Portierungsaufwand zu produzieren. Denn wenn man sich von Anfang an im Stile der Windows
API um
Unicode und
Ansi Gedanken gemacht hat, insbesondere bei Strings als Datencontainern, ist der meiste Code einfach 1:1 auch mit Delphi 2009+ nutzbar.
Selbst wenn etwas durch einen Fehler überhaupt nur funktioniert und so nie gedacht war (ja, worauf wir Entwickler so alles kommen...
), wird es nach Möglichkeit so beibehalten, damit darauf basierender Code nicht gebrochen wird. Deshalb funktionieren manche Sachen nicht für alle Anwendungsfälle, einfach weil manche Features so gar nicht vorgesehen waren.
Und deshalb kann man auch nicht einfach alle Fehler fixen, weil sich viele Workarounds gebastelt haben, die dann plötzlich nicht mehr funktionieren würden.
Natürlich führt so etwas dazu, dass es länger dauert bis alles nach dieser Maßgabe umgesetzt ist.
Dennoch glaube ich, dass trotz aller Zustimmung zu deinen Thesen der unnötige "politische Hickhack" im Hintergrund zu der Verzögerung auch maßgeblich beigetragen hat.
Vor allem gab es eben nicht so den Drang zu mehr Fortschritt. Es wurden zwar kleinere Sprachfeatures neu eingeführt und die neue
IDE war ein Riesenfortschritt, aber die war eben leider in Delphi 2005 auch noch sehr buggy und hat sich erst entwickelt.
Ein typischer Fall von Bananensoftware: reift beim Anwender. Und ansonsten hat sich da nicht so viel getan in den Jahren.
Wenn man sich dagegen anschaut was sich jetzt in den letzten 3 Jahren alleine getan hat... Da sind so unglaublich viele neue Features hinzugekommen und das setzt sich mit XE 2 und XE 3 ja fort...
Was viele, die die größeren Versionen nicht kennen, auch nicht sehen sind die Fortschritte im Bereich Business Logik, Multi-Tier, Datenbanken, ...
Das sind Enterprise Features, aber die sind auch für die Verwendung in Firmen unglaublich wertvoll, weil man viel an Kosten spart.
Und in der Hinsicht hat Lazarus rein gar nichts zu bieten.
Der Fokus liegt bei Delphi klar auf Business Kunden, leider zuletzt zu sehr. Dadurch fehlt der Nachwuchs. Es ist nicht so einfach gute Leute zu finden, das dauert immer ein wenig. Ich denke aber, dass die XE Starter dazu beitragen wird, dass sich das in Zukunft entschärfen wird.
Es ist jedenfalls schlicht eine andere Zielgruppe und eine andere Zielsetzung. Lazarus will in erster Linie plattformunabhängig sein und auch auf anderen Plattformen als
IDE laufen und zudem kostenlos und eher für Hobbyentwickler sein. Und das ist auch schon fast alles was Lazarus zu bieten hat.
Ich glaube, eines Tages wird Borland bereuen, sich so sehr von seinem "Baby" abgewendet zu haben.
Das glaube ich nicht, denn profitabel war die Sparte soweit ich weiß auch für Borland trotz aller Schwächen. Dass sie sie ausgegliedert und verkauft haben, hatte nach dem was von außen zu lesen war, strategische Gründe.
Und ich glaube nicht, dass die Entwicklung wie sie jetzt mit Embarcadero stattfindet mit Borland möglich gewesen wäre.