Primero, me gustaría estar en desacuerdo con la premisa de la pregunta, que la pila de tecnología es una “parte muy especial”. Creo que toda elección razonable podría funcionar, y no espero que la elección sea demasiado fatídica.
No sé demasiado sobre node.js, pero puedo dar mi perspectiva sobre Go:
- Go está usando el modelo muy asíncrono que usa node.js, pero sin usar devoluciones de llamada. Los hilos / goroutines verdes le permiten escribir código síncrono que utiliza debajo una lectura de socket asíncrono estilo encuesta. Si te entiendo correctamente, te encantará.
- No sé qué tan maduro es Node.js, pero Go definitivamente es menos maduro que otras tecnologías. Por ejemplo, si desea agregar un inicio de sesión SASL o una integración de Kereberos, tiene bloques de construcción estables integrados con Java, pero (casi) gurnisht para Go.
- La curva de aprendizaje es importante. Si tiene una pila de tecnología que ya conoce y ama, necesita una muy buena razón para volcarla para Go. Puede ofrecer suficientes beneficios para hacer que el cambio valga la pena, pero desde mi punto de vista técnico, desde un punto de vista técnico, usar Go para webapp no es su punto fuerte. Mira a un Djangonauta construyendo una aplicación web en Go with Gorilla
- Dicho esto, si estás listo para sacrificar algo de productividad para ampliar tu conocimiento, puedo asegurarte que encontrarás a Go único en la multitud. ¿Qué otro lenguaje de programación creó un generador de perfiles como parte de su conjunto de herramientas principales? ¿Cuál mantiene la interfaz compatible con gcc? ¿Cuál incluye la pila nativa de procesamiento de imágenes y criptografía en la biblioteca estándar? Creo que nadie hace todo lo anterior, ni siquiera D.
Lo que elijas para este proyecto en particular, dale un paseo a Go. Muchos lo hicieron y se enamoraron.
- Lo importante en la creación de software: la calidad del código o el resultado final del producto.
- ¿Puedes convertirte en un buen programador si solo lo haces como un hobby?
- ¿Cuál sería el mejor enfoque para hacer una plataforma de descarga OTA para teléfonos móviles?
- ¿Puede el software de reconocimiento de fotos identificar un estilo (p. Ej., Urbano, preppy, chic, etc.)?
- ¿Cuáles son buenas estrategias para gestionar grandes proyectos con vim?