Como novato que quiere crear una aplicación web de citas en línea, ¿qué necesito saber y qué habilidad necesito tener?

Otros respondieron muchas de las mismas herramientas que dijiste que ya entendiste, pero voy a tratar de analizar esto de una manera diferente.

Necesita una forma de registrar usuarios y crear sus perfiles.

Necesita una forma de editar sus perfiles, publicarlos, revertirlos, moderarlos y relacionarlos mediante algún tipo de taxonomía o búsqueda.

Necesita un mecanismo de inicio de sesión, almacenamiento, recuperación de contraseña, protección contra correo no deseado, informes de abuso, una forma de evitar que su sistema de informes de abuso se use para denegar el servicio y una forma de ganar dinero con perfiles y fechas, o de vender anuncios, e información.

Necesita un sistema de actualizaciones, de auditoría de seguridad, de garantizar que su sitio no se utilice como punto de comunicación para el tráfico ilegal (la prostitución, las drogas, el terrorismo, el puerto infantil han utilizado todos los sitios de citas como medios de transferencia, y los sitios tienen sufrido).

Necesitará contadores para ayudar a los clientes a saber cuánto les gusta a sus perfiles. Los sitios de citas son tan sociales como se centran en las citas. Es posible que necesite un código para evitar que los hombres casados ​​usen el sitio para establecer fechas con mujeres solteras. Algunos estados han responsabilizado a los sitios de citas por infidelidad, así como por publicidad falsa.

Necesitará una manera de hacer que el sitio sea indexable para búsquedas que no sean las suyas. Los motores de búsqueda odian los sitios de citas en parte porque son prolíficos. Encontrar un diseño alternativo que le permita obtener la indexación de la página puede ser importante.

Necesita modelos definidos para la creación de contenido nuevo a partir de su base de datos y lógica empresarial existentes. Estas son cosas mutables.

En estos días, prácticamente necesitas bootstrap de Twitter o un análogo para que el sitio funcione bien en diferentes pantallas.

Los patrones de diseño serán imprescindibles. Debe superar rápidamente las “cosas fáciles” y pasar a las preguntas complicadas antes de que su sitio pueda competir con sitios más antiguos y más maduros.

Querrá un método para analizar registros, calcular el tiempo de actividad, determinar áreas de interés e identificar errores rápidamente.

La transmisión de medios puede ser necesaria al proporcionar contenido de video, audio o mensajes de chat.

La gestión del almacenamiento, desde el vencimiento hasta los requisitos y solicitudes gubernamentales, será clave para la operación.

La distribución regional, así como los estándares comunitarios y públicos donde viven sus usuarios serán clave. No te entrometas con la ley china, por ejemplo, al permitir que los perfiles contengan contenido prohibido.

Considere las estrategias de carga desplegada como Docker.

Ata todo a un calendario.

Cree estrategias por lotes y cronometradas para el cambio de datos de back-end.

Debe definir su pila de tecnología, por ejemplo, LAMP (Linux, Apache, MySQL, PHP). Sin embargo, LAMP es relativamente antiguo, y lo más probable es que incluso sea una opción obsoleta. Para su necesidad, le recomendaría que consulte MEAN stack (Mongo, Express, Angular, Node.js) http://mean.io/#!/ . Esto es muy adecuado, si no desea perder tiempo en elegir las tecnologías correctas, ya que está bastante más fresco (supongo que si hizo esta pregunta aquí).

Esto es lo que necesitas en general. En particular, definitivamente debe aprender uno de los lenguajes del lado del servidor, como JavaScript (Node.js), Ruby, Python, Go, etc. Decida qué base de datos sería factible de usar (MariaDB, Mongo, Riak, etc.). Y, finalmente, diseñe su interfaz (CSS, HTML, JS-framework (Angular, Ember, React, etc.)). Esos componentes representan un núcleo de cualquier aplicación web.

PD,

Por supuesto, hay muchas trampas y matices, que comprenderá mientras trabaja en ello. Probablemente para usted, incluso mejor sería leer un libro sobre la creación de aplicaciones web desde cero.

Espero que esto ayude, buena suerte!

lo que creo que necesitas saber:

Codificación relacionada:

  • Debe saber cómo escribir consultas para obtener datos de su base de datos (sql o un idioma equivalente). La única forma de evitar esto sería usar una solución ORM (Object Relationship Management), pero aún así probablemente necesite consultar manualmente su base de datos en algún momento
  • Conozca un lenguaje de back-end (PHP, ASP.Net, Ruby, Python, Javascript, etc., hay muchas opciones)
  • Elija una capa de acceso a la base de datos (ORM o soluciones equivalentes)
  • Elija un marco web de back-end (posiblemente siguiendo el controlador de vista del modelo MVC o un patrón similar)
  • Conozca un lenguaje front-end como JavaScript, TypeScript, CoffeeScript: menos opciones que los lenguajes de back-end, pero aún hay algunas opciones
  • Probablemente también querrá algún tipo de marco front-end ya que mencionó que el usuario busca mientras escribe, algo que hace que administrar muchas llamadas AJAX como Angular, Ember o DOJO

No relacionado con la codificación:

  • Habilidades de diseño web (Photoshop, html, css y tal). Conoces ht.l y css pero ¿puedes hacer que tu plantilla sea atractiva para tu usuario?
  • Debe tener en cuenta que tal ambiente en el clima económico actual lo obliga a crear también aplicaciones de Android e IOS, no solo un sitio web, de lo contrario se perderá a muchos usuarios
  • Necesita conocer el marketing para comercializar su idea a los usuarios y tener un presupuesto para esto.
  • Debe conocer la publicidad para que su usuario descubra que tiene un producto y un presupuesto para esto.

En primer lugar, con el HTML y CSS que ya conoce, podrá crear el front-end de la aplicación, es decir, la interfaz de usuario. No olvides pensar en un buen diseño y experiencia de usuario (UX) para tu aplicación, esta es una parte crucial.

En segundo lugar, debe conectar la base de datos que mencionó a la interfaz de usuario. Para eso, debe aprender un lenguaje / marco del lado del servidor como PHP o Ruby on Rails. Con eso, llenará la base de datos con los datos que el usuario ingresa a su aplicación web y leerá los datos para mostrarlos al usuario. Hay muchos tutoriales y cursos por ahí, o puedes seguir un buen libro.

¡Buena suerte!

Al igual que otros dijeron, debe seguirlos si desea construirlo desde un boceto, pero dado que dijo que es principiante, es una buena idea comenzar con algunos CMS existentes para construir su aplicación. Quiero decir, aún necesitas saber muchas cosas además de HTML o CSS, pero usar un CMS aumentará tu tiempo de desarrollo.

Puede considerar BuddyPress.org, que es un complemento de redes sociales para WordPress, o también puede ver Joomsocial, que es una extensión de Joomla pero paga. Personalmente prefiero BuddyPress, ya que hay muchos recursos geniales por ahí. El objetivo de usar un CMS depende de la escala de su aplicación, si piensa en una aplicación de gran escala, necesita conocer diferentes tecnologías como la administración del servidor, la optimización de la aplicación, la tecnología de red distribuida, la seguridad de la red y muchas otras cosas.

Y para el lenguaje, definitivamente algún lenguaje del lado del servidor como php, C #, python (depende de la plataforma que elija). Y algunos frameworks JavaScript o JS para el lado del cliente (como jQuery, AngularJS, etc.)

En resumen, si es su primer enfoque para desarrollar un sitio de citas de tipo de redes sociales, aprenda un poco de PHP y SQL, y comience con la tecnología existente como WordPress y BuddyPress, una vez que comprenda la arquitectura y cuando su sitio crezca, entonces puede Siempre renovar con cosas nuevas.

Tienes todas las respuestas técnicas, así que déjame darte otro aspecto:
no lo hagas; a menos que tenga una idea realmente original sobre este tema y crea que sabe cómo construir una comunidad viva para el sitio, es una pérdida de tiempo.

Ya ha sido respondido

Leyendo la pregunta, creo que no estás listo para enfrentar un proyecto así.
En cualquier caso, el desarrollo de aplicaciones web es imprescindible.
No reinventes la rueda