Darum plant man das vorher.
Willkommen im
Wasserfall. In der Softwareentwicklung lässt sich nicht alles planen, viele Erkenntnisse kommen erst während der Umsetzung. Deswegen bevorzugt man heute meist
agile Softwareentwicklungsmodelle, die aus der Not - man kann nicht alles planen - eine Tugend machen.
Ich mach' das ja per astyle, aber das ist wahrscheinlich nicht "cool" genug.
Das hat doch nichts mit "cool" zu tun; astyle macht doch auch nichts anderes als ein Formatierungstemplate auf den Source Code anzuwenden. Ich hoffe doch, wer bei OpenBSD einen Patch einreicht, kriegt die Formatierung auf die ein oder andere Weise hin.
Und ein IDE bietet dabei genau welchen Vorteil?
Sie weißt dich auf viele Probleme - nicht alle - schon beim Entwickeln hin, wenn z.B. eine Klasse zu viele Abhängigkeiten hat.
Welche Deadlines hat das OpenBSD-Projekt? Die selbstgesetzte "alle 6 Monate ein Release"-Deadline ist keine: deren Nichteinhaltung hätte keine Konsequenzen.
Natürlich gibt es auch Budgets.
Meines Wissens bezahlt die OpenBSD Foundation keine Entwickler. Ansonsten würde der komplette Jahresetat der OpenBSD Foundation gerade mal ausreichen, einen Entwickler für ein Jahr zu bezahlen.
Der mit Abstand teuerste Faktor ist bei einem Softwareprojekt normalerweise die Entwicklerzeit (Ausnahmen bestätigen die Regel). Wenn sich ein OpenBSD-Entwickler ein paar Monate mehr Entwicklungszeit für etwas ausnimmt, kostet das die OpenBSD Foundation keinen Cent.
Oder willst du mir sagen, dass Open-Source-Projekte allesamt keine Rücksicht darauf nehmen müssen, dass Entwickeln halt Geld kostet?
Was ich sagen will: es macht einen riesigen Unterschied, ob in einem Softwareprojekt Entwicklungs
zeit unmittelbar Geld kostet oder nicht. Begrenzt ist sie in jedem Fall, weswegen man sie auch durch den Einsatz geeigneter Tools möglichst effektiv nutzen sollte.
Bei einem Betriebssystem bin ich mir da nicht ganz so sicher.
Dort braucht man natürlich genug Strom für die
Testserver.
Ansonsten kommt es beim Betriebssystem auf den entsprechenden Bereich an. Einen Treiber ohne die entsprechende Hardware zu schreiben dürfte schwierig sein.
Ich unterstelle, dass die Codebasis von vornherein einfach sauber geplant wurde.
Wie planst du in deiner Codebasis Änderungen ein, von denen du heute noch gar nicht weißt, dass sie in 3 Jahren auf dich zukommen?
Mehr Code heißt nicht auch mehr Wartungsaufwand, wenn man ihn mal umschreiben will.
Denk eine Nummer größer. Mit einer IDE siehst du bei einem Refactoring sofort, ob eine Klasse/Methode/etc. von einem Unit Test abgedeckt ist und kannst alle gängigen Refactorings per Shortcut erreichen. Gleichzeitig kannst du dir sicher sein, dass die IDE alle Referenzen beim Refactoring anpasst. Letzteres ist bei kleinen Projekten noch von Hand machbar, wie steigender Projektgröße aber nicht mehr realistisch durchführbar.
Mit einem Texteditor musst du das alles von Hand machen, so dass bei größeren Projekten aus der Arbeit einer Stunde leicht Tage werden können. Die Konsequenz? Im Texteditor findet entweder das Refactoring nicht statt und die Struktur der Codebasis vergammelt weiter, oder das Refactoring wird gemacht und mehrere Tage Entwicklerzeit verschwendet, die man an anderer Stelle sinnvoller einsetzen könnte.
PS: Ansonsten sind wir schon wieder in einer Nebendiskussion angelagt, die eigentlich in ein anderes Forum gehört (Programmieren? Geplauder? OpenBSD?). Weitere Diskussionen gerne dort, bevor sich die Moderatoren genötigt fühlen, diesen Thread hier zu schließen.