Respuesta tardía, pero como todavía no hay una respuesta aceptada, lo intentaré. Lo tomo como dos preguntas e intentaré responderlas por separado:
¿Cómo eligen los gerentes los lenguajes de programación?
Depende en gran medida del tamaño de la organización y la experiencia del gerente, pero generalmente implicará evaluar la situación actual y los escenarios y requisitos futuros. Esto generalmente se hace a través de PESTLE o análisis similar, y solo para dar algunas muestras en cada categoría:
- Político
- "Nadie fue despedido por comprar IBM" - opción segura.
- El CEO escuchó que Java es genial, bombo publicitario.
- El arquitecto jefe ama .NET - proyecto para mascotas.
- El lenguaje es controlado por un competidor hostil: por qué Google no confía en C #.
- Económico
- Costos de licencia.
- Costo de la capacitación de desarrolladores.
- Código base de los costos de migración.
- Social
- Compromiso del equipo.
- Disponibilidad de habilidades en la casa (necesidades de capacitación, continuidad).
- Disponibilidad de habilidades en el mercado.
- Amenaza al status quo existente dentro del equipo de desarrollo.
- Disponibilidad de una comunidad de práctica suficientemente grande.
- Tecnológico
- Mejora de la productividad.
- Mejora de calidad.
- Capacidad de interoperar con la base de código existente.
- Adherencia a las normas.
- Madurez.
- Legal
- Términos de licencia.
- Control de tecnología (¿Quién posee y controla la tecnología? ¿Cuál es la estrategia de licencia futura probable?)
- Cumplimiento legal y regulatorio.
- Ambiental
- Infraestructura existente dentro de la empresa.
- Habilidades existentes dentro de la empresa.
- Integración con socios externos.
- Nivel de soporte tecnológico por entorno más amplio.
Luego, un montón de idiomas que coinciden con los criterios pueden evaluarse más a fondo utilizando SWOT , análisis de costo- beneficio o similar.
Todo el proceso puede ser bastante complejo, pero como resultado final, la mayoría de las empresas o equipos de proyecto optarán por la opción más segura, dadas sus circunstancias actuales, que aún pueden ofrecer las capacidades que necesitan. Muy a menudo puede significar permanecer en la plataforma actual por más tiempo.
¿Cómo puede ayudar un programador a asegurarse de elegir el lenguaje de programación adecuado para un proyecto?
Como se ha demostrado, con suerte, un programador típico normalmente tendría solo 1/6 del aporte total en el proceso de toma de decisiones. Y, por regla general, ¡a él o ella le interesarían las capacidades lingüísticas solo!
Bueno, la mejor manera de influir en la decisión parece tener una imagen más amplia del proceso de selección, hacer aliados dentro y fuera del equipo, crear un buen resumen sobre el aspecto tecnológico de las cosas y tratar de no concentrarse solo en las capacidades del lenguaje.
Y, por supuesto, uno necesita ponerse en la posición cuando un Gerente de Proyecto o Desarrollo (o cualquier otra persona a cargo) ve los beneficios de pasar por todo el proceso de evaluación y está preparado para considerar los riesgos e incertidumbres de cambiar a otro idioma en primer lugar. Para que esto suceda, debe demostrarse que:
- La plataforma actual ya no es adecuada.
- Una nueva plataforma promete beneficios que superan con creces la molestia.
Sin embargo, si hubiera preguntado "¿Cuál es la mejor manera de poder usar en el trabajo el idioma que me gusta?", La respuesta probablemente habría sido "unirse a una empresa que ya usa el idioma o comenzar el suyo".