Quiero hacer un sitio web dinámico. ¿Qué idiomas debo saber?

Si desea crear motores de búsqueda y sitios de redes sociales buenos y con buen rendimiento, tiene mucho trabajo por delante y la elección del lenguaje de programación es una de sus preocupaciones menores. Use lo que le resulte más cómodo y las herramientas que le permitan trabajar de manera eficiente. Si aún no conoce ninguno de los idiomas, le recomiendo que primero consulte Python y Ruby. Tienen buenas herramientas (Django, Rails) y tienen una notable atención al rendimiento dedicada a ellos (y con Ruby, puede ejecutar JRuby, donde puede aprovechar todo el rendimiento y el trabajo de implementación de Java).

Sin embargo, hay muchos problemas más grandes que deberá resolver que su lenguaje de programación.

  • Arquitectura del servidor: servidor web, base de datos, almacenamiento en caché, replicación
  • Arquitectura de código: use un marco, no se repita
  • Diseño social: ¿cómo funciona su red social? ¿Cuáles son las diversas acciones y sus significados? El primer error es simplemente replicar las decisiones de Facebook sin pensar en cuál es la mejor decisión para su dominio . Lo que funciona para Facebook puede no funcionar para usted: debe pensar cómo funcionará el sitio.
  • Indización de búsqueda: si está creando un motor de búsqueda, ¿de dónde viene su índice? ¿Utiliza un índice de terceros o rastrea y crea el suyo propio? Construir el rastreador también requerirá mucho trabajo. Es posible que deba pasar a C o C ++ para partes del sistema de rastreo e indexación si está trabajando en cualquiera de los idiomas que mencionó.

Breve historia: hay muchas cosas en las que pensar, y en el esquema general, su elección del idioma entre los que mencionó es en gran medida irrelevante. Elige con qué te sientes cómodo y ve con eso. Espere pasar mucho tiempo aprendiendo. Parece que tiene una experiencia de programación limitada: recomendaría elegir algunos proyectos mucho más pequeños e intentar que funcionen. Y siga los consejos de los programadores inteligentes: aprenda a programar en diez años.