He sido programador del lado del servidor durante la mayor parte de mi carrera y solo recientemente comencé a dedicar más tiempo al desarrollo web. Estoy sorprendido por la cantidad de cosas que necesito dominar para escribir una aplicación web decente. Solo para enumerar algunas herramientas / tecnologías que necesito aprender,
Lenguaje de programación del lado del servidor (Java / JSP, ASP, PHP, Ruby u otra cosa)
Un marco web decente (para cualquier aplicación de tamaño mediano a grande).
HTML y CSS
Javascript
Biblioteca Javascript (JQuery / ExtJS, etc., principalmente para AJAX). Es bueno saberlo aunque no sea necesario.
Al menos un conocimiento básico de diseño web: diseños, colores, fuentes, etc.
Una buena comprensión de la seguridad web.
Una buena comprensión de los problemas de rendimiento / escalabilidad.
Pruebas, problemas de compatibilidad del navegador, etc.
La lista continua.
Entonces, mi pregunta para los desarrolladores web experimentados es: ¿cómo logran aprender y mantenerse actualizados sobre tantas cosas? Mientras desarrolla una aplicación web, ¿cómo maneja las complejidades involucradas en estas áreas y logra escribir una aplicación bien diseñada, fácil de usar, segura, eficiente y escalable?
Como desarrollador web, ¿uno tiene que ser un experto en todos los intercambios o debería especializarse en una o dos áreas y dejar el resto a otros miembros del equipo?
Respuestas:
Usa un marco. Django, por ejemplo.
No "mediano a grande". Use un marco para todo .
Es lo que es. Aprenderlo.
Use bibliotecas y marcos tanto como sea posible. Escribe menos, reutiliza más.
Correcto. Usa una biblioteca.
O.
Utiliza FLEX.
Copiar sitios existentes.
Lea www.owasp.org cuidadosamente. Y. Use un marco que haga esto.
Usa Apache. Use un marco que maneje esto. Lea las arquitecturas escalables de Internet de Schlossnagle.
Marcos. Bibliotecas
Hay un truco para esto. Use tantas bibliotecas y marcos como pueda. La web ha existido por años.
Pararse en los hombros de los gigantes. Por favor. No necesitas reinventar todo esto.
fuente
Consejo 1 . Esté atento a todas las cosas que están sucediendo allí. Escuche de lo que habla la gente, revise cosas, lea artículos y blogs, marque lo que es importante, aprenda, experimente, mantenga la curiosidad natural sobre todo.
Consejo 2 . Absolutamente diviértete en el proceso.
Consejo 3 . Como alguien señaló en SO una vez, las cosas que ha enumerado se relacionan con el conocimiento colectivo de muchos desarrolladores. No esperes saberlo todo a la perfección, es demasiado para que una sola mente lo maneje. Tome lo que necesita y sepa dónde encontrar el resto.
Es mejor estar bien versado en diferentes áreas. Lo especial del desarrollo web es que de repente une todos los aspectos del desarrollo del producto en un solo lugar en una sola mano. Inevitablemente, debes ser consciente de muchas cosas para que todo funcione. Pero en serio, ¡es una gran alegría tener los dedos en todas partes!
fuente
No siempre tienes un equipo, al menos en mi caso. Por lo tanto, ser un "gato de todos los oficios" es útil.
Pero no tiene que saberlo / no lo sabrá todo, así que sea bueno para buscar en Google.
Desarrollarás las habilidades a medida que las necesites.
fuente
Hay aspectos básicos que debe conocer: HTML, CSS, marcado semántico, qué hace HTTP y cómo hacer un buen uso de él.
Luego observa lo que necesita para este proyecto, sea cual sea el proyecto actual. Probablemente eso implicará comenzar con una plataforma o CMS existente y personalizarlo, a veces un trabajo completamente a medida, pero a menudo no. A veces habrá requisitos relacionados con dónde y cómo está alojado que lo guiarán a la plataforma correcta, otras veces la funcionalidad que desee guiará el alojamiento que puede usar. Aprendes lo que necesitas a medida que lo necesitas. Es un poco lento como una forma de trabajar, pero termina siendo la forma en que la mayoría de nosotros fuimos buenos en lo que hacemos: proyecto por proyecto aprendiendo lo que necesitábamos saber.
Obviamente, cuanto más trabaje en compañía de desarrolladores web más experimentados, más rápido podrá aprender de ellos, pero en general, la mayoría de nosotros adquirimos estas habilidades poco a poco con el tiempo.
fuente
Trato de saber lo suficiente sobre todas las tecnologías actuales para poder saber cuándo deben aplicarse. Por ejemplo, soy principalmente un desarrollador de ASP.NET, pero sé lo suficiente para que Ruby on Rails descubra si es más adecuado para un problema en particular.
Las tecnologías que estoy usando realmente trato de conocerlas dentro y fuera. Si hay una característica particular en ASP.NET, quiero conocerla en detalle y saber cuándo debería y cuándo no debería aplicarla. Lo mismo ocurre con JQuery, CSS y todo lo demás que uso.
Para mantenerme al día, escucho podcasts, me suscribo a los canales RSS, examino StackOverflow y asisto a eventos para desarrolladores.
fuente
Comience de manera fácil con .NET o JEE / JSF. No es necesario que haga su primer proyecto de la manera difícil. Guarde esa complejidad para cuando realmente la necesite.
fuente