¿Cuál es el mejor marco para comenzar su propio proyecto de aplicación web (para un inicio)?

Creo que Ruby on Rails es el mejor marco para crear aplicaciones web. Los desarrolladores eligen Ruby porque es un placer usarlo. Me hace sentir más productivo y mi código es más fácil de leer.

Ruby on Rails es muy popular entre las nuevas empresas, el enfoque de Rails a la “convención sobre la configuración” hace que sea rápido e intuitivo conseguir algo construido. Ruby tiene un enorme ecosistema de bibliotecas de código abierto (llamadas Ruby Gems) que lo hacen aún más rápido de construir. Odio reinventar la rueda, por lo que tener un puñado de gemas que pueda agregar a un proyecto en unos minutos me ahorra días o semanas de desarrollo si iba a escribir lo mismo desde cero. Visite ruby-toolbox.com para obtener una buena lista categorizada de las gemas más populares.

Hay muchos marcos en otros idiomas, pero Rails probablemente tuvo una gran influencia en ellos. Muchos marcos fueron construidos para imitar a Rails. Rails sigue liderando el camino en muchos aspectos.

Creo que depende de muchos factores, enumeraré algunos para usted:

  • ¿Qué marcos conoce usted mismo o puede adquirir desarrolladores competentes para
  • Qué tipo de aplicación está creando: si es una aplicación en tiempo real, es posible que desee considerar algo usando websockets o NodeJS / Meteor.
  • Con qué rapidez desea llevar su proyecto al mercado (MVP): Ruby, por lo que he escuchado, puede ser una buena opción para la velocidad en la creación de prototipos y personalmente recomendaría Meteor como una plataforma que permite un desarrollo rápido.
  • Opciones de base de datos: ¿cómo funciona su base de datos junto con el marco elegido? ¿Desea utilizar SQL, en cuyo caso Meteor tal como está no sería una opción?
  • ¿Con qué hardware / software estás usando para desarrollar? Si usa Microsoft para desarrollar, puede usar ASP.net, pero tendrá dificultades para desarrollar ASP.net en un OSX.

Si puede proporcionar más información sobre lo que hará su aplicación y cómo funcionará, podemos ayudarlo mejor a encontrar un marco que se adapte a las necesidades de usted y su aplicación.

Primero, seamos honestos, y no trate de responder más genérico como todas las respuestas anteriores, por supuesto, debe comprender que elegir el marco es más como elegir un automóvil o una esposa, pasará una gran cantidad de tiempo al aprender características, cavaets , optimizaciones, etc., pero la idea principal es que las personas no pueden decirle qué debe usar, pero aún así pueden aconsejarle.
A corto plazo, comenzar un nuevo proyecto no es fácil, también depende del tamaño del proyecto. Y ahora parte interesante …

Ruby / Node es bueno para la creación de prototipos, el inicio fácil y muchos paquetes útiles, pasará más tiempo gestionándolos / reuniéndolos en lugar de escribir su propia lógica. Y ambos son gratis. Pero para proyectos empresariales reales que ambos apestan, terminarás escribiendo piezas de pequeños fragmentos que deben encajar siempre, y sin verificación de tipo es realmente difícil mantener diferentes versiones de los mismos paquetes o tu propio código, también son lentos. de lenguajes dinámicos (twitter, shopify)

ASP.NET/Java son realmente soluciones empresariales, tienen verificación de tipo que es mejor que escribir pruebas, ambos tienen un fuerte soporte, muchos paquetes y ambos son fáciles de aprender, pero ASP.NET solo se ejecuta en IIS, por lo que no es gratis, debes tener una PC con WindowsOS (Stackoverflow, msn)

Meteor fomenta el desarrollo web, especialmente para aplicaciones móviles, tiene un concepto bastante bueno, es bueno para pequeños proyectos en tiempo real como el cliente de Twitter o lo que sea, no para empresas, pero aún puede usarse en pequeños segmentos. Todavía es nuevo y tiene un soporte más pequeño que ASP

Python, no sé sobre esto, pero supongo que es lo mismo que ruby, una sintaxis diferente, quizás más / menos características, quora está escrito en este idioma, el trabajo es bueno, no estoy seguro para la empresa, pero considerando una gran cantidad de datos en una sola página, Se puede usar allí.

PHP es algo que no debes usar, aunque fue realmente increíble en algún lugar de la historia, algunos dicen que apesta, y Facebook no puede cambiar a otro marco debido a 234 toneladas de código heredado (Facebook)

Quizás esta respuesta no cubra todos los marcos, o algunas ideas son incorrectas. Espero que sea útil para pequeños análisis

Para empezar, recomendaría Laravel o Symfony, sin embargo, también puede tener en cuenta la cantidad de una aplicación web que necesita y la rapidez con que puede desarrollar la aplicación web. dependiendo de eso, puedes elegir Drupal . El cual es un poderoso CMS, pero además se puede ampliar creando nuevos módulos. La última versión de Drupal (8) es poder de Symfony.
He visto sitios web desarrollados en pocas horas usando Drupal que además tienen una gran cantidad de módulos para cada funcionalidad que no puedas imaginar.

SocketCluster: el entorno escalable en tiempo real es ideal para nuevas empresas. Es ideal para crear aplicaciones de una sola página. Tiene una API de estilo Socket.io y también API Pub / Sub que puedes encontrar en soluciones comerciales como Firebase.

Le permite escalar verticalmente en un grado muy alto (probado en hasta 16 núcleos): por lo tanto, si su aplicación está creciendo rápidamente, le da mucho tiempo para pensar en escalar horizontalmente (en múltiples máquinas).
Una vez que llegue a ese punto en el que esté listo para escalar horizontalmente, SC también le permite hacerlo con mucha facilidad: puede conectarlo a colas de mensajes distribuidos y esto le permitirá compartir canales en tiempo real a través de múltiples instancias remotas de SC.

Con el que tienes más experiencia.

Alternativamente (si no tiene experiencia con ninguno de ellos), sugeriría que Laravel sea más fácil de aprender pero aún así potente y escalable.

Si es php, vaya a laravel o al encendedor de código.
Si es Python, elige Django (nada mejor que esto)