Como usted, A2A, y no tengo experiencia en la creación de un sitio de redes sociales, le daré esta mejor oportunidad. No voy a recomendar ninguno de esos idiomas, excepto como base para implementar una nueva arquitectura que pueda usar para construir su sistema. Ya no soy fanático de usar los lenguajes existentes para implementar nuevos sistemas. Entiendo que la motivación de la mayoría de los desarrolladores es hacer que algo despegue rápidamente, llevarlo al mercado, comenzar a ganar dinero lo antes posible y preocuparse por las consecuencias arquitectónicas más tarde; o posiblemente poner en marcha algo, ganar dinero, reunir un equipo lo suficientemente bueno como para que pueda realizar mejoras / contribuciones a los proyectos de código abierto a medida que avanza (esta última opción es un poco éticamente mejor, en mi opinión, pero en términos de construir algo que dure, Todavía soy escéptico).
El modelo de desarrollo de software que utilizan la mayoría de los lugares se basa en la mercantilización del talento basada en herramientas estandarizadas. Compensan el mal diseño arquitectónico mediante la contratación de ingenieros muy talentosos que pueden superar las limitaciones de la arquitectura existente, simplemente “eliminando” algo que la gente encuentra interesante, porque parece “nuevo”, o mediante controles de gestión burocráticos, que controlan los costos a través de las economías. de escala en el mercado laboral. Pueden salirse con la suya, porque el mercado de consumo tiene expectativas relativamente bajas de tecnología informática (en comparación con lo que podrían ser), y la industria fomenta activamente estas bajas expectativas.
No estoy comentando sobre la ética de estas prácticas en términos de cómo se trata a los trabajadores, aunque sí estoy comentando sobre la ética de cómo se trata a la sociedad , y valoro el software como un depósito de conocimiento. Estoy hablando de cómo la práctica común es una estrategia a corto plazo que produce mucho esfuerzo desperdiciado y no contribuye significativamente a una mejor manera de hacer las cosas, excepto para optimizar las prácticas antiguas. Este modelo de producción produce “montones” muy grandes de código desechable que durará tal vez una década, si es así, después de lo cual todo se considerará inútil y será reemplazado por “lo nuevo”, lo que exigirá la reurbanización. de herramientas estandarizadas y / o API. Enjuague de lavado. Repetir.
- ¿Cómo reducen los estudiantes de doctorado el área específica en la que quieren trabajar?
- Lamento haber elegido estudiar Ingeniería de Producción en una buena universidad en lugar de CS (Lo que más me gusta) en una mediocre. ¿Cómo puedo redimirme?
- ¿Cuál es la diferencia entre la memoria RAM y la memoria RAM de la computadora?
- ¿Puedes recomendar algún programa de maestría en física para ingenieros informáticos?
- ¿Hay alguna forma para que una compañía de distribución de energía monitoree el uso de energía de su red eléctrica y luego distribuya solo la cantidad de energía necesaria a un sector particular de la red (como cómo un enrutador de Internet controla el tráfico en una red)? Si es así, ¿ya existe un sistema de este tipo?
Ahora creo que es mejor pensar y trabajar en su arquitectura para el proyecto primero (que es la parte difícil), y usar un lenguaje existente que se ajuste a sus requisitos arquitectónicos, que puede extender, cuando debe ser (de nuevo, por integridad arquitectónica), o desarrollar su propio lenguaje para representar esa arquitectura, y luego “desarrollar la aplicación”, que debería ser la parte fácil.
Re. la parte de la pregunta sobre “Si hoy fuera a escribir un sitio web de tipo de redes sociales”, he criticado el diseño de redes sociales existente. Mi principal crítica es que tienden a hacer que sea realmente difícil encontrar contenido específico que esté envejecido. Quora es un poco una mejora, pero creo que deja algunas cosas que desear también. Si alguien se pregunta a qué me refiero, animaría a la gente a ver de qué habló Ted Nelson hace muchos años. Es muy pertinente. Al menos, Quora le permite buscar contenido y vincular respuestas y conversaciones. Esa es una característica importante. Sería bueno si las entidades de contenido fueran direccionables internamente para que las porciones pudieran incluirse en otras publicaciones, con atribución automática, sin la necesidad de copiar / pegar manualmente, y luego incluir un enlace. También sería bueno poder clasificar las conversaciones por tema, que pueden buscarse, ya que las respuestas pueden ser puntos de partida para las discusiones sobre temas relacionados. Parte de esto podría ser categorizar las respuestas como nuevas “preguntas” (si son preguntas) que luego pueden conducir a más respuestas. Creo que un sitio como Quora comete un error al priorizar los perfiles y las preguntas como entidades especiales, con respuestas y conversaciones secundarias. Ciertamente, está bien filtrar por categorías (como “personas” y “preguntas”), pero las respuestas y los comentarios también deben poder buscarse e indexarse (aunque las respuestas están indexadas, pero solo por las personas que las publicaron). Un sitio que es como Quora, IMO, debería ser un “universo” de contenido, cada uno vinculado de manera significativa.