Soy desarrollador de software y construí un diccionario alemán-inglés (diccionario alemán-inglés)
William ya mencionó algunas de las herramientas que necesitará. Me gustaría ampliar un poco sobre algunos aspectos.
Mis puntos asumen que desea construir un diccionario basado en la web que espere mucho tráfico, es decir, no un diccionario de nicho, por ejemplo. Para un sitio web de alto tráfico puede ser muy engorroso (por decir lo menos) no usar un centro de datos o computación en la nube. Si su sitio web necesita estar disponible en varias zonas horarias, puede olvidarse de las soluciones de servidor doméstico.
- ¿Cuáles son las ventajas de usar Extensible Markup Language (XML)?
- ¿Cuáles son las características esenciales de todas las aplicaciones web?
- ¿Qué tipo de aplicación web necesitaría para crear un sitio donde los usuarios puedan seguir su progreso?
- ¿Cómo construyo un sitio web similar a craigslist con un presupuesto?
- Cómo averiguar los datos consumidos por páginas web individuales
Puede comenzar de forma segura con una base de datos relacional pero, a largo plazo, a medida que su sitio web obtenga más y más tráfico, es muy probable que esto sea bastante costoso. Por lo tanto, necesitará una solución para mantener sus costos razonables. Desde este punto de vista, las soluciones basadas en almacenamiento en la nube como Blob Storage de Microsoft o S3 de Amazon Web Services pueden resultar más económicas.
Para tener éxito, su diccionario basado en la web debe ser rápido. No muchos esperarán a que su página se cargue más de una cantidad de tiempo decente que se hace cada vez más pequeña a medida que avanza la tecnología y la gente quiere sitios web cada vez más rápidos. Desde este punto de vista, deberá poder escalar, almacenar en caché y, en términos generales, procesar muy rápidamente muchas solicitudes paralelas.
Las soluciones basadas en la nube le brindarán la escalabilidad (escalar o escalar, es decir, máquinas más potentes o más máquinas) y las herramientas de almacenamiento en caché que necesita. También le brindarán las tecnologías de virtualización que permitirán que sus servidores respondan a tiempo para solicitar.
Necesitará un algoritmo de búsqueda inteligente para las definiciones. La búsqueda instantánea de texto a través de las definiciones solo se puede hacer con altos costos en términos de hardware y velocidad. Imagínese que la búsqueda de Google iría a cada sitio web que sepa verificar si se puede encontrar un texto en el HTML cada vez que alguien realiza una búsqueda. Eso simplemente no es posible. Es similar con un diccionario: no puede ir a cada definición y ver si es la que desea.
Los sistemas de entrega e integración continua son otro tipo de herramienta que necesitará. No puede liberar sus cambios simplemente copiando los archivos en su servidor y en el mismo tipo de solicitudes de servicio. Dependiendo de su elección de alojamiento, esto se puede lograr de diferentes maneras. La mejor herramienta que puedo recomendar aquí es TeamCity: su ingeniero de construcción 24/7. Pero Go, Jenkins y otros también lo harían.
Cada vez más tráfico proviene de dispositivos móviles. No hay forma de que esto pueda ser ignorado. Necesitará aquí un llamado primer enfoque móvil. Diseñe su interfaz de usuario, botones, colores, etc. primero para dispositivos móviles y aumente el tamaño de su dispositivo hasta llegar a pantallas de monitor grandes. Las bibliotecas como Bootstrap de Twitter pueden ayudarte aquí. Consulte el Proyecto de páginas móviles aceleradas y verá que esto también lo beneficiará desde la perspectiva del motor de búsqueda.
No le gustará crear un sitio web que nadie conozca. Es por eso que la optimización de motores de búsqueda es muy importante. Agregue su sitio web a las herramientas para webmasters de Google y Bing y use sus herramientas para aprender sobre palabras clave, números de tráfico, mapas del sitio, indexación y todas estas palabras de moda. Es muy importante enviar sus mapas de sitio lo antes posible ya que los motores de búsqueda tardan en rastrear su sitio web. Y es muy probable que un diccionario tenga muchas páginas si considera que una definición es una página en sí misma.
Para comprender cómo las personas usan su sitio web, qué funciona y qué no, necesitará herramientas de análisis de seguimiento. Creo que Google Analytics es el mejor en este campo.
Si bien no es una lista de herramientas, aquí hay un resumen de qué considerar. Pero no se olvide del marketing, las ventas y otras áreas de un sitio web.
- Solución de acceso rápido a datos
- Escalabilidad y capacidad de caché
- Algoritmo de búsqueda
- Entrega continua e integración
- Primer acercamiento móvil
- SEO
- Análisis de seguimiento