> das verwendete Framework wird nicht mehr suportet und alles muss geändert 
> werden

Das ist schlimm, aber passiert erst nach vielen Jahren. So ein Tod
kündigt sich an wie z.B. bei Drupal. Wenn man alles selbst baut, muss
nach Wochen schon wieder überarbeitet werden, da ist der komplette
Neuanfang teilweise nach zwei Jahren nötig. Das Framework verlängert
also den Support, selbst wenn es schlecht gepflegt ist. Ein
Relaunch-Zyklus ist meist um die sechs Jahre, das heißt, bis auf die
Datenbank wird dann eh fast alles neu erstellt. Innerhalb der sechs
Jahre will man aber die Aktualisierungen vom Framework mitnehmen und
nicht selbst entwickeln müssen.

> mit ihrem Code auseinander setzen und nicht einfach nur blind copy-paste 
> machen

Eigenentwicklungen auf Basis von Copy&Paste nennen sich Boilerplate.
Das ist doof, stimmt. Aber ein übliches Framework hat einen Core, den
man niemals anfasst und gut kennt. Und ein paar dringend benötigte und
gut getestete Plugins, von denen man die meisten niemals anfasst. Nur
den kleinen selbst geschriebenen Teil ändert man.

> Muss ich mehrere Webserver laufen lassen, wenn ich verschiedene Funktionen 
> brauche

Ja. Der Chat hat in der Regel Websockets, der läuft oft in Node.
Bilder haben viel Traffic, die kann man direkt vom Nginx liefern
lassen. Das CMS ist meist in PHP und kommt vom Apache, aber der Cache
davon ist wiederum im schnelleren Nginx. Sind schon drei Webserver,
die der Nginx zusammenroutet. Klingt komplizierter als es ist, der
Admin kriegt das gut hin :-D

> Erstmal wäre es nicht schlecht zu wissen, wie man "Ein Fenster" beim Anwender 
> auf dem Bildschirm erzeugt, welches man dann weiter mit Leben füllen kann

Du bist gerade bei einem schlanken siebenstelligen Budget, und das ist
nicht übertrieben. Der Login, die Eingabe der Daten, den Zusammenbau
der Seiten und viele andere Komponenten sind bei heutigen Ansprüchen
extrem komplex. Deshalb ist auch die Frage nach der Programmiersprache
rein philosophisch. Man nimmt die, in der das Framework ist. CMS gibt
es nahezu ausschließlich in PHP, und auch da ist die Auswahl
mittlerweile an einer Hand abzählbar. Django Wagtail ist glaube ich
die einzige Alternative, das ist in Python. Das CMS brauchst du fürs
Marketing, Hilfeseiten, Anmeldung, also das Drumherum.

Ich würde jetzt fragen, aus wie vielen unabhängigen Teilen die Seite
zusammengebaut ist, und wie die Schnittstellen funktionieren.
Beispielsweise baust du eine zentrale Userverwaltung im CMS. Daran
angedockt ist der Chat, der hat technisch völlig andere Anforderungen.
Und angedockt ist das ERP, das arbeitet mit anderen Daten und anderem
Backend. Oder das ERP wird als Plugin ins CMS integriert, das dürfte
bei einem kleinen ERP mit fünfstelligem Budget machbar sein. Häufig
müssen 90% der Funktionen nur ein paar geschulte Leute machen, die
müssen nicht optisch poliert sein und können aus fertig designten
Standardkomponenten des CMS bestehen. 5% sind dann für die Kunden und
auf schönen Schein getrimmt. So hast du erst einmal nur ein einziges
Framework, nämlich das CMS, das auch kleines ERP ganz gut kann. Das
ist natürlich alles von den genauen Anforderungen abhängig.

Du könntest die minimalen Wünsche mit einem Django-Entwickler und
einem Wordpress-Entwickler besprechen und gucken, welche Ideen die
haben wie es am besten geht. Dann ist dir vielleicht klarer, wohin es
gehen soll. Es könnte sich auch lohnen, mit einem Experten die
üblichen Verdächtigen wie wperp.com zu testen, also rückwärts vom
Angebot zum Bedarf zu denken. Das bringt in wenigen Tagen sehr viel
Erkenntnis.

> VPN, Forum, Activedirectory

Wenn es irgendwie noch handhabbar sein soll und halbwegs sicher,
verbinde nichts davon mit dem Produktivserver. Der läuft am besten,
wenn er nur die nötigsten Funktionen machen muss und nicht noch völlig
andere Sachen.

Thomas

Antwort per Email an