Die Woche: Forken sollte wohlüberlegt sein!

< Beitrag >

< Thread >

Re: Heutzutage sollte Forken kein Problem sein

Avatar von William Zard

William Zard

mehr als 1000 Beiträge

21.01.2013 14:53 Permalink
NeoBoot schrieb am 20. Januar 2013 12:10

> Öhm, nein. Erstens splittet Forken immer noch Entwicklerressourcen.

Ja, man sollte dabei aber im Hinterkopf behalten, dass sich das meist
positiv auf die (gesamt) Produktivität auswirkt. Es ist leider so,
dass bereits ab einer vergleichsweise geringen Anzahl von Entwicklern
eine gewissen Sättigung erreicht ist.

> Und, noch schmerzhafter, Testerressourcen.

Während sich Testresourcen verringern, bleibt die Zahl der "Holzwege"
auf die man sich (bei beiden Zweigen in der Summe) bei der
Entwicklung begibt nicht an, sie bleibt gleich. Noch schöner daran,
zumeist ist bereits eine halbwegs entwickelte Alternative verfügbar,
die auch dafür sorgt, dass sich die Entwickler nicht allzu tief/weit
auf ihrem Holzweg verrennen ... gerade weil dem Holzweg die Tester
sehr schnell ausgehen.

> Zweitens kann das VCS auch
> nicht zaubern, wenn die Projekte sich zu weit voneinander entfernen,
> ist es ganz schnell vorbei.

Kann schnell gehen, ja. Allerdings werden das beide Zweige nur dann
weiter leben, wenn sie beide ihre eigene Existenzberechtigung haben
(oder aber nicht allzu weit vom gemeinsamen Kern entfernt haben.)

Das A und O der Softwareentwicklung war schon immer eine gute
"Architektur", so dass man recht unterschiedliche Dinge darauf
aufbauen kann. Wenn hier die Ausgangssituation nicht passt, dann ist
wohl eine ganze menge Arbeit nötig, damit das ganze nicht irgendwann
verworfen wird ... das ist aber unabhängig davon, ob man Forkt oder
nicht!

Des weiteren kann man auch wunderbar zwei Projekte zusammenführen,
die überhaupt noch nie eine gemeinsame Code-Basis hatten. Um bei
GNOMKE zu bleiben, der Fenstermanager Mutter entstand aus Metacity
und Clutter. Es ist IMHO mehr eine Frage des Entwicklers/der
Projektleiter wie gut sie ihr Ding kennen und beherrschen.

> Drittens wird in den meisten Fällen, auch
> wenn die Technik es hergeben würde, nichts zusammengeführt, weil den
> Entwicklern ihre Egos im Weg stehen.

Würde ich so nicht sehen, neben dem bereits genannten Beispiel gibt
es weitere "berühmte" Gegenbeispiele. So sind da die gefühlten
Millionen von Linux Distributionen, die alle den selben Kern
verwenden und allenfalls geringe Modifikationen am Kernel haben. Auch
die Softwarepakete und Bibliotheken sind im Grossen und Ganzen immer
die selben (und dabei gibt es gefühlt bestenfalls 5 Alternativen für
ein "Ding")
Bei der "Apache Software Foundation" kann IMHO man auch recht schön
alle beschrieben Facetten beim Entwickeln/Forken/Mergen schön
beobachten.

Thread-Anzeige einblenden

Anzeige