Späte Antwort, aber da es noch keine akzeptierte Antwort gibt, werde ich es versuchen. Ich nehme es als zwei Fragen und werde versuchen, sie getrennt zu beantworten:
Wie wählen Manager Programmiersprachen aus?
Dies hängt stark von der Größe der Organisation und der Erfahrung des Managers ab, umfasst jedoch im Allgemeinen die Bewertung der aktuellen Situation sowie der zukünftigen Szenarien und Anforderungen. Dies geschieht normalerweise durch PESTLE oder eine ähnliche Analyse und um nur einige Proben in jeder Kategorie zu geben:
- Politisch
- "Niemand wurde für den Kauf von IBM entlassen" - eine sichere Wahl.
- CEO hörte, dass Java cool ist - Hype.
- Chefarchitekt liebt .NET - Haustierprojekt.
- Die Sprache wird von einem feindlichen Konkurrenten kontrolliert - warum Google sich nicht auf C # verlässt.
- Wirtschaftlich
- Lizenzkosten.
- Schulungskosten für Entwickler.
- Kosten für die Codebasismigration.
- Sozial
- Buy-in vom Team.
- Fachkräfteverfügbarkeit im Haus (Schulungsbedarf, Kontinuität).
- Verfügbarkeit von Fähigkeiten auf dem Markt.
- Bedrohung des bestehenden Status Quo innerhalb des Entwicklerteams.
- Verfügbarkeit einer ausreichend großen Praxisgemeinschaft.
- Technologisch
- Produktivitätssteigerung.
- Qualitätsverbesserung.
- Interoperabilität mit vorhandener Codebasis.
- Einhaltung von Standards.
- Reife.
- Legal
- Lizenzbestimmungen.
- Technologiekontrolle (Wer besitzt und kontrolliert die Technologie? Welche zukünftige Lizenzierungsstrategie ist wahrscheinlich?)
- Einhaltung gesetzlicher und behördlicher Vorschriften.
- Umwelt
- Bestehende Infrastruktur im Unternehmen.
- Vorhandene Fähigkeiten im Unternehmen.
- Integration mit externen Partnern.
- Technologische Unterstützung durch ein breiteres Umfeld.
Dann kann eine Reihe von Sprachen, die den Kriterien entsprechen, unter Verwendung von SWOT , Kosten- Nutzen-Analyse oder ähnlichem weiter bewertet werden .
Der gesamte Prozess kann recht komplex sein, aber unter dem Strich entscheiden sich die meisten Unternehmen oder Projektteams angesichts der aktuellen Umstände für die sicherste Option, die immer noch die Funktionen bietet, die sie benötigen. Sehr oft kann es bedeuten, länger auf der aktuellen Plattform zu bleiben.
Wie kann ein Programmierer sicherstellen, dass die richtige Programmiersprache für ein Projekt ausgewählt wird?
Es wurde hoffentlich gezeigt, dass ein typischer Programmierer normalerweise nur ein Sechstel des gesamten Inputs in den Entscheidungsfindungsprozess hat. Und in der Regel würde er oder sie sich hauptsächlich nur für die Sprachkenntnisse interessieren!
Nun, der beste Weg, die Entscheidung zu beeinflussen, scheint ein breiteres Bild des Auswahlprozesses zu haben, Verbündete innerhalb und außerhalb des Teams zu bilden, eine gute Einweisung in die technologische Seite der Dinge zu erstellen und sich nicht nur auf die Sprachfähigkeiten zu konzentrieren.
Und natürlich muss man sich in eine Position begeben, in der ein Projekt- oder Entwicklungsleiter (oder jeder andere Verantwortliche) die Vorteile des gesamten Evaluierungsprozesses erkennt und bereit ist, die Risiken und Unwägbarkeiten eines Wechsels zu einem anderen zu berücksichtigen Sprache an erster Stelle. Dazu muss nachgewiesen werden, dass:
- Die aktuelle Plattform ist nicht mehr ausreichend.
- Eine neue Plattform verspricht Vorteile, die den Aufwand bei weitem überwiegen.
Hätten Sie jedoch gefragt, "Wie kann ich die Sprache, die ich mag, am besten bei der Arbeit verwenden?"