¿Cuál es el mejor enfoque para crear una aplicación web desde cero?

Original: seguiré y estaré de acuerdo con “anónimo”. Depende de la funcionalidad que desee de la aplicación.

Actualizado: para algo como lo que tiene en mente, recomendaría revisar el trabajo de los desarrolladores e ingenieros existentes. Considera buscar en Github a algunos de esos tipos. Y lea un poco sobre Progressive Web Apps para saber qué hay ahí fuera.

Si bien he visto cómo se desarrollan aplicaciones personalizadas, no tengo una gran comprensión del proceso necesario para algo tan complejo como lo que necesita.

Si no puede encontrar una respuesta decente en Quora, le recomiendo que se comunique con alguien que lo haya hecho con éxito. Es decir, una empresa que desarrolló una aplicación como Vine. No creo que esta sea una empresa adecuada para su equipo de desarrollo diario o pequeña empresa. Debería determinar quién es realmente competente primero.

Espero haber sido de ayuda. ¡La mejor de las suertes!

Gracias por A2A

Primero debe elegir un lenguaje de programación o lenguajes con los marcos correspondientes. Usted escribió que su mercado objetivo es un nicho, así que creo que casi todos los lenguajes de programación deberían ser posibles.

Elige tu base de datos. Recomiendo postgresql como una posibilidad gratuita y rápida.

Comenzaría a crear el manejo de usuarios estándar como autenticación, perfil y clases grupales. Luego haz las cosas de mensajería. Supongo que esto podría ser su MVP (producto valioso mínimo). Asegúrese de probar su aplicación desde el principio. Agregue algunas pruebas de integración. Con las especificaciones de la interfaz de usuario, puede esperar hasta que sea estable, pero su backend debe tener una cobertura de prueba al menos casi completa. Teniendo este básico, puede continuar mejorándolo con el suministro de noticias, sincronización de actualizaciones y UI a través de websockets, etc.

Este es un ejemplo de guía. tal vez no se ajusta a tu idea. Pero podría ser similar a eso.

Codificación feliz

Primero debe seleccionar el idioma que desea utilizar para la aplicación.
Prefiero configurar un sitio privado en un servidor con Apache y ejecutar el servidor de forma privada mientras desarrolla nuestras aplicaciones. Esto solo da acceso al equipo de desarrollo al sitio y un área adecuada para las pruebas. El sitio no tiene acceso público y se usa estrictamente para el equipo de desarrollo. Esa computadora en particular puede tener varios sitios ejecutándose al mismo tiempo. Está equipado como un servidor de Internet con Linux.

Entonces, después de crear el sitio, comenzamos comenzando nuestro código en las computadoras que usan los desarrolladores. Dependiendo de la complejidad de la aplicación, la dividiremos en módulos y asignaremos uno o más módulos a un programador. Él / ella creará los módulos asignados y probará las funciones. El líder del equipo obtiene los módulos y los combina en la aplicación prototipo. Él / ella colocará el prototipo en el sitio privado y todos lo evaluarán como “usuario”.
Cuando se encuentran errores, se corrigen en los módulos efectuados y el programa se vuelve a montar y se prueba nuevamente. Este proceso puede repetirse varias veces.
Una vez que la aplicación está terminada, la trasladamos al sitio real y la monitoreamos de cerca, hasta que decidimos, en base a los comentarios de los usuarios, que funciona como se esperaba.

Comience eligiendo tecnologías, desde el enfoque clásico LAMP (Linux + Apache + PHP + MySQL) hasta el moderno Linux + ((Ruby + Rails) / (Python + DJango) / (JavaScript + NodeJS)) + (Some NoSQL) + Ngix.
Decide si vas a alojar localmente o en la nube.
Para ambas decisiones es útil saber cuánto tráfico tendrá

Prototipo. Intenta hacer una versión mínima de lo que quieres en aproximadamente una semana. Míralo y descubre lo que está mal y sé valiente para tirarlo a la basura y mejorarlo. Tal vez este no sea el mejor plan, pero hasta ahora trabajé en un proyecto donde descartaron el trabajo de unas 30 personas durante aproximadamente medio año y comencé de nuevo. Y fue un gran éxito. En tu mente, todo funciona muy bien, tan pronto como tienes un prototipo, reconoces los puntos débiles.

Puede intentar usar uno de los servicios de bricolaje que tienen plantillas para crear redes sociales. Aplicación de constructor | Desarrollar la aplicación para iPhone | Ipad Publishing | App Maker android es bastante bueno y tienen muchos tutoriales para ayudarte a terminar tu aplicación más rápido.