Cómo convertirse en un gran desarrollador web

10 maneras efectivas de convertirse en un buen programador

Un buen programador es alguien que siempre mira a ambos lados antes de cruzar una calle de sentido único. ~ Doug Linder

Trabajar como programador de software en la industria de TI, una cosa que nos lleva a diario al lugar de trabajo; Es que la diversión y la pasión radica en la programación. Pero para hacer que esa programación sea divertida y para obtener una euforia eterna, uno necesita aprender y cumplir con algunos conceptos básicos que lo convierten en un buen programador.

No estoy escribiendo mantras que pueda seguir para convertirse en un buen programador, pero la intención es recopilar una lista de consejos de ayuda que aprendí e implementé en la industria para obtener buenos resultados. No existe una definición de un buen programador, pero aquí nos referimos a la categoría de programador que ha desarrollado excelentes soluciones de TI y ha ayudado al crecimiento general de esta industria.

1.Trabajo básico

Como es cierto para cualquier industria y cualquier trabajo, la comprensión conceptual es la clave del éxito. A menos que uno tenga una base conceptual sólida, nunca podrá ser un buen programador. La comprensión conceptual central le ayuda a diseñar e implementar las mejores soluciones de la mejor manera posible. Si aún siente una brecha en la informática central y los conceptos específicos de su lenguaje de programación, nunca es demasiado tarde para volver y revisar los conceptos básicos.

2.Comience a colocar etiquetas de preguntas (cómo, qué) con cada conjunto de código que escriba

Una cosa de la que me di cuenta al crear una línea de separación clara entre un buen programador y el descanso es ese entusiasmo por saber qué y cómo está sucediendo. Hay un pequeño grupo de personas que nunca pueden dejar un código sin saber exactamente lo que sucede cuando se ejecuta. Entiendo que en plazos ajustados, no siempre tenemos esta libertad y, por lo tanto, tenemos que dejar el código solo sabiendo que está haciendo su trabajo. Aunque este es un tema un poco diferente sobre cómo manejar tales situaciones, pero como programador siempre se puede intentar el mejor nivel para profundizar tanto como se pueda. Y créeme, esto se convierte en un hábito con el tiempo y luego lo haces sin saberlo cada vez.

3. Aprendes más ayudando a otros

La mayoría de nosotros tenemos una tendencia común de volver la cabeza hacia foros o grupos solo cuando necesitamos ayuda. Y nuevamente, una clara separación entre el buen programador y el descanso de que los formadores visitan estos lugares con más frecuencia para ayudar a otros. Esto los hace aprender más de lo que aprenden a resolver su problema por otra persona. Dentro de un equipo también, ayuda a otros a resolver sus problemas. Créeme, entendiendo el problema de otros en su contexto, investigando sobre eso y brindando soluciones; te dejará mucho más aprendido que antes.

4.Escribe código simple, comprensible pero lógico

Como en casi todos los aspectos de la vida, la fórmula de KISS (Keep it simple and short) también funciona en la programación. Escriba más código lógico y evite la complejidad. A veces las personas escriben códigos complejos solo para demostrar su capacidad para escribir dichos códigos. Mi experiencia dice que los códigos simples pero lógicos siempre funcionan bien, resultan en menos problemas y son más extensibles. Recuerdo una excelente cita

Un buen código es su mejor documentación. Cuando esté a punto de agregar un comentario, pregúntese: “¿Cómo puedo mejorar el código para que este comentario no sea necesario?” ~ Steve McConnell

5. Dedique más tiempo a analizar el problema, necesitará menos tiempo para solucionarlo

Dedique más tiempo a comprender y analizar el problema y a diseñar soluciones para él. Encontrarás el resto de las cosas fácilmente factibles. Diseñar no siempre significa usar herramientas y lenguajes de modelado, puede ser tan simple como mirar al cielo y pensar en una solución en tu mente. Aquellos que tienen el hábito de presionar el teclado (para codificar) en el momento en que entienden el problema, generalmente nos terminaron algo diferente al requisito.

Si no puede asimilar la estructura general de un programa mientras se ducha, no está listo para codificarlo. ~ Richard Pattis

Aunque es un poco difícil, intente descifrar su propio código antes de que otros puedan hacerlo y con el tiempo aprenderá a escribir código libre de errores. Siempre haga una revisión cercana e imparcial de su código. Además, nunca dudes en hacer que otros vean tu código. Trabajar con buenos programadores y tomar sus comentarios seguramente lo ayudará a convertirse en un buen programador.

7. No te desanimes mirando el mundo tecnológico cambiante

Durante estos períodos en la industria de TI, me reuní con muchas personas que están decepcionadas por su trabajo o incluso lo dejaron para buscar un nuevo trabajo diciendo que quieren aprender y trabajar en las últimas tecnologías. No veo ningún problema con esta aspiración, pero la primera palabra incorrecta es ‘las últimas tecnologías’. Lo que escuchamos todos los días y queremos decir aquí es que nuevas herramientas, API, marcos y otros significan venir todos los días para hacer que la programación sea más fácil y rápida. De todos modos, esto continuará en el mundo de la tecnología. Pero lo que debe entenderse es que las tecnologías básicas y básicas cambian con un ritmo mucho menor que los marcos, las herramientas y las API a su alrededor. Esto es como el mar donde las aguas superficiales se mueven muy rápidamente, pero las aguas profundas están relativamente tranquilas y concentradas y la mayoría de las vidas acuáticas sobreviven aquí. Entonces, siéntete en esas aguas profundas y cerca de las tecnologías centrales. Por ejemplo, en el mundo empresarial de Java, existen muchos frameworks web y nuevos cada dos semanas. Pero los conceptos centrales de comunicación basada en solicitud cliente-servidor, patrón MVS, filtros / servlets / JSP, agrupación de recursos, análisis XML, etc., siguen siendo los mismos. Así que dedique más tiempo a aprender estos conceptos básicos en lugar de preocuparse por los cambios en los marcos y las herramientas que lo rodean. Créame, con la base de los conceptos básicos, siempre le resultará más fácil aprender nuevos marcos, herramientas y API.

8. Las tareas no funcionan por más tiempo

Muchas veces los programadores de software implementan soluciones alternativas (puede deberse a la falta de tiempo, falta de comprensión del problema o falta de experiencia tecnológica). Pero durante el período estas soluciones alternativas siempre dañaron el código, lo que lo hace menos extensible y mantenible y mucho desperdicio de tiempo más adelante. Siempre prefiera implementar cuando conozca la entrada y salida de la solución. Entiendo que se vuelve inevitable en algunas circunstancias, pero es como si uno dijera la verdad siempre, pero dices mentiras en algunas circunstancias.

9. Leer la documentación

Uno de los hábitos esenciales de un buen programador es que leen mucha documentación. Pueden ser especificaciones, JSR, documentos API, tutoriales, etc. Leer documentos lo ayuda a crear esa base esencial en función de la cual programa de la mejor manera.

10. También puedes aprender del código de otros

Interactué con algunos programadores excelentes que realmente tienen un proyecto fuente de Java dentro de su IDE todo el tiempo y lo leí / referí en el trabajo diario. Lo hacen no solo para satisfacer su apetito de conocer los conceptos básicos, sino también para aprender formas de escribir buenos programas. Leer y referir un código fuente confiable y conocido o el código de su superior también puede ayudarlo a mejorar su programación.

Y el último, no mencionado anteriormente: no te compares con los demás

Tu comparación de ti mismo con los demás solo dará como resultado la evolución de sentimientos negativos y una competencia no saludable. Todos tienen sus fortalezas y debilidades. Es más importante que comprendamos el nuestro y trabajemos en ello. He visto muchas veces que los llamados ‘programadores de fundoo’ (programador fundamentalmente fuerte) también cometen errores tontos. Por lo tanto, analícese, enumere sus áreas de mejora y trabaje en ello. La programación es realmente divertida, disfrútala.

Cualquier tonto puede escribir código que una computadora pueda entender. Los buenos programadores escriben código que los humanos pueden entender. ~ Martin Fowler

Dos cosas a tener en cuenta …

1. Está bien saltar adelante.

Esta guía lo ayudará sin importar dónde se encuentre en su viaje para convertirse en un desarrollador profesional. Después de leer esta introducción, solo desplácese al título que mejor describa su situación y comience a leer desde allí. Si recién estás comenzando, o solo estás pensando en comenzar, entonces sigue los consejos del Rey de Alicia en el país de las maravillas …

“Comienza por el principio y continúa hasta llegar al final; luego se detiene.”

2. Probar rápidamente todo primero y luego especializarse.

El dinero no es lo más importante. ¡Necesitas ❤ AMAR ❤ lo que haces! Pero no sabrás lo que amas hasta que lo pruebes.

¡Felicidades! Este es un gran primer paso y el comienzo de algo muy emocionante. También puede ser totalmente abrumador. No te preocupes, estoy aquí para ayudar.

Su primer objetivo debe ser ponerse al día muy rápidamente con los conceptos básicos de todas las áreas de desarrollo web (a menudo llamado “la pila completa”). Aprenderás mucho, pero no muy profundo. Esto se trata solo de ayudarlo a encontrar el área que más le guste y desarrollar algunas habilidades generales en todos los ámbitos para que pueda apreciar y manejar una amplia gama de desafíos independientemente de dónde termine especializándose.

Aprender HTML básico

El lenguaje de marcado de hipertexto (HTML) es lo que controla el contenido y el diseño de lo que ve en su navegador web. Al comenzar allí, obtendrá una interfaz de usuario que puede usar para interactuar y ver los resultados de su código. A medida que aborde idiomas más avanzados, esto será cada vez más importante. No quieres estar codificando en la oscuridad.

Aquí está el HTML que necesita aprender primero (haga clic en los enlaces para obtener un tutorial gratuito):

  • Empezando
  • Etiquetas, atributos y elementos
  • Títulos de página
  • Los párrafos
  • Encabezados
  • Liza
  • Campo de golf
  • Imágenes
  • Mesas
  • Formas
  • Poniendolo todo junto

Sé algo de HTML básico

¡Increíble! Ese es un primer paso importante. Ahora necesitas un poco de JavaScript básico.

Aprenda JavaScript básico

JavaScript es el idioma de la web, todos los principales navegadores web (Chrome, Firefox, Safari, IE, y muchos más) tienen compatibilidad con JavaScript incorporada. Cada sitio web o aplicación web que haya usado probablemente tenga muchísimo código JavaScript Detrás de eso. Sin mencionar que JavaScript también se está volviendo popular en otras plataformas, incluidos servidores, equipos de escritorio y dispositivos.

Por ahora, solo necesita lo básico, estos enlaces ayudarán:

  • Hacer que las cosas sucedan
  • Variables y datos
  • Haciendo matemáticas
  • Lógica
  • Condicional
  • Bucle
  • Las funciones
  • Objetos
  • Matrices
  • El DOM
  • Eventos y devoluciones de llamada
  • AJAX
  • JSON
  • Alcance

Conozco algunos JavaScript y HTML básicos

¡Fantástico! Pongamos un poco de CSS en tu haber.

Aprender CSS

CSS significa hojas de estilo en cascada. Se utiliza para personalizar el aspecto de los elementos HTML en su página. Siga este tutorial gratuito de Mozilla para obtener los conceptos básicos, y luego consulte CSS-Tricks con frecuencia para resolver los problemas CSS más difíciles (use la función de búsqueda en la parte superior derecha).

Mover al “Back End”

En este punto, has estado expuesto a lo que se llama “desarrollo web front-end”. Es decir, conoce los principales idiomas que se ejecutan en un navegador web. Es hora de pasar al “back end”. Cuál es el código que se ejecuta en un servidor. No se preocupe, no necesita un servidor para aprender esto, su propia computadora funcionará bien.

Hay muchos idiomas de back-end, pero como ya está familiarizado con JavaScript, le recomendaré que aprenda a usar Node JS. El nodo JS le permite ejecutar código JavaScript en un servidor (en lugar de en un navegador).

Además de Node JS, debe aprender sobre Express y Mongo DB.

Exprimir
Express es una biblioteca que facilita que Node JS actúe como un servidor web (es decir, escuche las “solicitudes” de sus páginas web y envíe “respuestas” a sus páginas web).

Mongo DB
Mongo DB es una base de datos. Le permite almacenar y recuperar información.

Puede aprender sobre Node JS, Express y Mongo DB, a partir de este excelente tutorial gratuito y su secuela.

Necesito elegir entre ser un desarrollador “Front End”, “Back End” o “Full Stack”.

Si ha estado expuesto a ambos extremos, es hora de tomar una decisión. De lo contrario, siga los consejos de la sección anterior para llenar cualquier vacío en su conocimiento.

Por ahora, has escrito dos tipos de código. Un tipo tiene que ver con la interacción del usuario. El otro tipo tiene que ver con la interacción de datos. ¿Qué tipo prefieres?

¿La interacción del usuario? ¡Felicidades, eres un desarrollador front-end!

Interacción de datos? ¡Felicitaciones, eres un desarrollador de back-end!

¿Ambos? ¡Enhorabuena, eres un desarrollador full stack!

¿Odiaste todo? Felicidades, convertirse en un desarrollador web no es para ti, alegrate de haberlo descubierto ahora en lugar de perder más tiempo y dinero. ¿Todavía no estás listo para rendirte? ¿Quizás aún no has encontrado un idioma que te encante? Pruebe algunos de los otros idiomas cubiertos en “Quiero ser un desarrollador de back-end”.

Quiero ser un desarrollador Full Stack

Guay. Debe leer y hacer todo lo que se indica a continuación. Quiero ser un desarrollador front-end y quiero ser un desarrollador back-end a continuación .

Quiero ser un desarrollador front-end y sé algunos JavaScript básicos, HTML y CSS

Para ser eficaz como desarrollador front-end, debe dominar HTML, CSS y JavaScript del lado del cliente. También necesitará dominar algunos marcos importantes. Esto le dará las habilidades que los empleadores y clientes esperan de los desarrolladores front-end.

A estas alturas, deberías saber algo de HTML básico. De lo contrario, regrese a Learn HTML básico.

Aprenda HTML intermedio y avanzado

Siga este tutorial HTML intermedio y luego este tutorial HTML avanzado para mejorar su habilidad.

Aprenda JavaScript avanzado del lado del cliente

¡Una gran serie de libros en JavaScript disponibles en línea de forma gratuita!

Para subir de nivel tu JavaScript, recomiendo la serie de libros, You Don’t Know JS de Kyle Simpson. El autor ha hecho que toda la serie esté disponible en línea de forma gratuita en estos enlaces:

  1. “Up & Going”
  2. “Alcance y cierres”
  3. “Esto y prototipos de objetos”,
  4. “Tipos y gramática”
  5. “Asíncrono y rendimiento”
  6. “ES6 y más allá”

Junto con esos libros, la referencia de JavaScript de MDN debería convertirse en su mejor amigo.

Conocer la “trifecta front-end” HTML, CSS y JavaScript es genial. Pero para comenzar a ganar dinero, deberá familiarizarse con algunos marcos.

Aprende jQuery

jQuery es la biblioteca JavaScript más popular de todos los tiempos. Aunque algunos marcos más nuevos hacen que jQuery sea menos relevante, si está buscando empleo, es probable que jQuery sea parte de la descripción del trabajo (y la entrevista) durante muchos años.

Recomiendo seguir la ruta jQuery en FreeCodeCamp para comenzar a aprender jQuery de manera rápida y efectiva. Después de eso, vaya al sitio de aprendizaje oficial de jQuery para obtener más instrucciones.

También querrás tener a mano los documentos de la API jQuery.

Aprenda un marco JS popular

Los marcos facilitan el trabajo con un lenguaje o tecnología en particular al abordar y resolver algunos de los mayores problemas con esa tecnología. JavaScript ha visto una gran ayuda en el desarrollo y popularización de frameworks.

Parece que cada semana hay un nuevo marco de JavaScript que se promociona como el próximo estándar de facto. Tendrá que consultar las bolsas de trabajo o buscar en Google para determinar cuál es el más popular para su mercado. Un buen lugar para consultar es la herramienta de tendencias de contratación de Hacker News.

Esto es lo que parece tener demanda al momento de escribir esto:

Tendencias de contratación de Hacker News

Reaccionar JS

React fue creado por Facebook para trabajar con su arquitectura Flux. Es una biblioteca de JavaScript para construir interfaces. Ha subido al primer lugar recientemente, superando a Angular. Entonces comienza con React. Hay un buen curso gratuito que presenta React aquí.

Angular 1 y 2

Angular JS fue creado por Google y realmente despegó tan pronto como se introdujo. Muchas empresas invirtieron mucho en el marco y, como puede ver en el gráfico anterior, sigue siendo muy popular. Desafortunadamente, Google sintió la necesidad de reescribir completamente Angular cuando construyeron la versión 2. Por lo tanto, Angular 1 y Angular 2 son casi como dos fraeworks completamente diferentes. Si quiere llamarse a sí mismo un experto en Angular, en este momento, necesita aprender ambos para ser realmente comercializable. Probablemente todavía haya una ventana de tiempo, donde solo conocer Angular 1 es suficiente. Pero esa ventana se está cerrando. La mayor parte del trabajo de Angular será en la transición de las bases de código Angular 1 a Angular 2. Code School tiene un curso gratuito y divertido para Angular 1. Para Angular 2, consulte esta serie de videos gratuitos para aprender los conceptos básicos.

Ember JS

Todavía hay bastantes trabajos para personas con experiencia en Ember JS, pero como puede ver en el gráfico, está comenzando a ser plano. No cuenta con el respaldo de un gigante como Google o Facebook, y tendrás las manos llenas con React y Angular. Aún así, si tiene curiosidad, puede seguir la guía oficial de Ember JS.

Una vez que haya elegido el marco que más le guste, y esté razonablemente familiarizado con él, puede valer la pena explorar un marco CSS que lo acompañe. Los dos jugadores dominantes en CSS en este momento son Bootstrap y Material Design.

Oreja

Bootstrap fue creado por Twitter y es bastante maduro y popular. Hay versiones de Bootstrap para Angular, Angular 2 y React.

Material

El material es una guía de diseño presentada por Google que está ganando terreno. También hay versiones angulares y reactivas. Dado que Google también publica Angular, encontrará que hay un ajuste natural allí.

Aquí hay algunos enlaces para comenzar.

  • Reaccionar Bootstrap
  • Bootstrap angular
  • Angular 2 Bootstrap
  • Material UI (Reaccionar)
  • Material angular
  • Material angular 2

¡Felicidades! Ahora tiene las habilidades clave necesarias para ser un desarrollador front-end.

Los idiomas en verde son donde debe centrarse. Si aún no conoce ninguno de estos, comience en la parte superior y vaya bajando. ¡Detente cuando encuentres uno que te guste y profundiza!

Si ya está familiarizado con un idioma verde en particular y le gusta, concéntrese en ese.

Java

Java es un lenguaje extremadamente popular y puede ejecutarse (casi) en cualquier lugar. Fue desarrollado por Sun Microsystems (ahora propiedad de Oracle ). Java es el lenguaje utilizado para construir aplicaciones de Android. También se puede usar para crear aplicaciones de escritorio y, por supuesto, se puede usar para construir aplicaciones web (ya sea como un back-end independiente o junto con JSP). Es maduro, estable y hay muchos recursos para aprender Java. También es uno de los lenguajes de programación orientada a objetos más ampliamente enseñados en colegios y universidades de todo el mundo. Aquí hay un curso gratuito de Java para principiantes, que es bastante bueno.

DO#

C # es un lenguaje creado por Microsoft para competir directamente con Java. Hasta hace poco, no era compatible con sistemas que no son de Microsoft, pero eso está cambiando rápidamente. Al igual que Java, está orientado a objetos y puede usarse para construir no solo aplicaciones web (ya sea como un backend independiente o junto con el sitio oficial de Microsoft ASP.NET) sino también para aplicaciones de escritorio. Si eres un usuario de Windows y quieres programar un ecosistema un poco más contenido, C # podría ser el camino a seguir. Echa un vistazo a este curso gratuito de Microsoft Virtual Academy.

Pitón

Aunque no tiene una compañía de renombre como Java o C #, Python es un gran lenguaje para hacer las cosas rápidamente. Es relativamente fácil de aprender y se está volviendo cada vez más popular cada año. Si no amas a los demás, este es un buen lenguaje para aprender. El mejor lugar para comenzar es aquí.

JavaScript

Si ha estado siguiendo desde el principio, ya hemos cubierto JavaScript. Con la llegada de Node JS y la popularidad de npm (Node Package Manager). JavaScript en el servidor solo se volverá más popular en los próximos años. Vale la pena aprenderlo.

Si no lo hizo antes, ahora es un buen momento para aprender sobre Node JS, Express y Mongo DB, a partir de este excelente tutorial gratuito y su secuela, es hora de hacerlo ahora.

Rubí

Ruby es un pájaro extraño. Las personas que lo aman, de verdad, de verdad, lo aman. Está en el top 10, pero parece estar disminuyendo su crecimiento. El lenguaje en sí es una mezcla entre la programación funcional y la programación imperativa. Recomiendo probarlo, tal vez te conviertas en uno de sus fanáticos acérrimos. Habrá mucho trabajo de Ruby en los años venideros. Pero es posible que desee verificar dos veces los listados en su área particular para asegurarse de que al menos algunas empresas hayan sido mordidas por el error Ruby.

El mejor lugar para aprender Ruby es RubyMonk

¿Qué hay de PHP ?

Hay una gran cantidad de PHP en el mercado, pero, al menos según este conjunto de datos, parece ser cada vez menos popular. Lo puse amarillo porque creo que, en este momento, sigue siendo una opción viable para desarrollar una carrera. Además, en aras de una divulgación completa, no soy un fanático de PHP, por lo que tal vez también haya aparecido algún sesgo personal, pero no puedo imaginar que en los próximos 5 a 10 años PHP sea más valioso que JavaScript , a pesar de que ocupa un lugar más alto en este momento y probablemente todavía habrá trabajos disponibles para los desarrolladores de PHP.

He aprendido mucho, pero no tengo experiencia en el mundo real.

Es extremadamente difícil conseguir un trabajo sin experiencia.

El primer paso es completar uno o dos proyectos personales, para sentirse cómodo construyendo cosas de punta a punta.

Cuando comienzas a construir proyectos personales, es útil tener una forma de administrar y publicar tu código. Para eso, necesitas GitHub.

GitHub

GitHub es un repositorio de código fuente en línea creado en la plataforma Git. Le permite almacenar, administrar y publicar su código. Si usted es desarrollador hoy, DEBE tener una cuenta de GitHub. Puede obtener más información sobre GitHub y cómo usar GitHub en esta guía “Hello World” y también en este tutorial interactivo sobre el uso de la plataforma Git.

Proyectos personales

Ahora que está configurado con GitHub, aquí hay un par de ideas de proyectos personales.

  • Cree un blog simple (aquí hay un tutorial con React and Node)
  • Cree un calendario simple (aquí hay un tutorial con C # y .Net)

Free Code Camp también tiene una variedad de proyectos para probar, incluidos algunos solo de front-end. Aquí hay dos de mis favoritos:

  • Construye un reloj “pomodoro” (solo front-end)
  • Administrar un Club de negociación de libros (proyecto de pila completa)

Experiencia real

A continuación, necesitas experiencia real . La experiencia real significa trabajar para alguien más. Los proyectos personales son útiles, pero no son suficientes para hacerlo competitivo en el mercado laboral. Hay algunas vías para ganar experiencia real .

1. Contribuir a un proyecto de código abierto

Gracias a la popularidad de GitHub, hay millones de proyectos de código abierto con problemas abiertos (errores) que esperan ser solucionados por alguien como usted. Poner en su currículum que ha contribuido a algunos proyectos de código abierto populares y conocidos, es una excelente manera de establecer y aumentar su credibilidad. El mejor recurso para descubrir a qué proyectos contribuir es Triage de código. Code Triage le permite elegir su proyecto favorito y le enviará un número abierto diferente directamente a su bandeja de entrada todos los días.

2. Trabaja para un amigo o familiar

Encuentre un amigo, o un miembro de la familia, que tenga un negocio y cree una aplicación web o sitio web, o mejore su existente. Solo asegúrese de elegir con mucho cuidado, debe elegir el proyecto del tamaño correcto y el miembro adecuado de la familia para evitar situaciones incómodas en el futuro. Idealmente, debe ser un proyecto que pueda completar en menos de 90 días y una persona con la que tenga una relación muy honesta. No debe tener miedo de admitir si las cosas no salen según lo planeado y no debe tener miedo o preocuparse por tener que decir “no” o decirles que “retrocedan” en ciertas solicitudes o expectativas. Además, debe asegurarse de que si alguno de ustedes y el rescate por cualquier motivo, no dañará permanentemente su relación.

3. Trabajo para organizaciones benéficas / sin fines de lucro

Una forma muy gratificante de obtener experiencia real es hacer algún trabajo para organizaciones sin fines de lucro y / o organizaciones benéficas. Puede acercarse a una organización benéfica local o sin fines de lucro que le guste y ofrezca su ayuda. También puede usar el sitio Catch a Fire para encontrar un proyecto en el que pueda ayudar. Finalmente, si sigues el programa en Free Code Camp y obtienes todos sus certificados, obtendrás acceso a proyectos sin fines de lucro en los que puedes aprovechar tus habilidades.

4. Trabajo esclavo

Lo confieso, es un título un poco descarado para lo que voy a sugerir aquí, pero en mi experiencia, si tomas esta ruta y luego consigues un trabajo o trabajas por cuenta propia, lo mirarás como trabajo esclavo, sin lugar a duda. Sitios como Upwork, Fiverr y PeoplePerHour le brindan la oportunidad de ganar negocios, pero tendrá que mantener sus tarifas muy bajas y aceptar que solo está haciendo esto por la experiencia.

Tengo una experiencia real, por favor ayúdame a encontrar empleo.

Regla # 1 – No te llames un “desarrollador web”

Mira esto…

fuente: Indeed.com

¿Qué diablos es la diferencia entre un “desarrollador web” y un desarrollador “front-end”? Bueno, aproximadamente 7000 $ / año aparentemente. En serio, cuando llegue el momento, un simple cambio en lo que te llamas a ti mismo puede hacer una gran diferencia.

Tener un buen currículum

A pesar de todas las historias que lees sobre personas que hacen locuras y locuras para llamar la atención de un empleador, aún necesitas tener un buen currículum. Este artículo de Tech Republic lo ayudará con eso.

Construye un sitio web de cartera

Más importante que tener un buen currículum es tener un sitio web de cartera fuerte. Tome todos los proyectos reales que ha realizado y póngalos en una página de inicio personal que los muestre. Este artículo de SitePoint ofrece algunos buenos consejos sobre cómo crear un sitio de cartera. La otra cosa que destacaría es que debe asegurarse de resaltar cómo cada uno de sus proyectos resolvió un problema comercial para su cliente (o empleador). Haga eso, y su sitio de cartera se mantendrá por encima del resto.

Prepárese para codificar entrevistas

Mi artículo anterior, Cómo ganar la entrevista de codificación, lo ayudará con eso.

Mejora tus habilidades generales de entrevista

Debe estar preparado para algo más que la parte de codificación. Esta pieza de Life Hacker es una buena hoja de ruta para mucha información valiosa e importante.

Solo pon tu pie en la puerta

No se preocupe por conseguir un trabajo con el empleador de sus sueños con el salario de sus sueños de inmediato. Solo preocúpate de que te paguen por escribir código por un tiempo. Una vez que tenga más experiencia en su haber, puede comenzar a considerar su próximo movimiento.

Quiero convertirme en un profesional independiente.

Ser su propio jefe es algo increíble, pero también viene con una tonelada de presión y complejidad adicionales. La mejor fuente de información sobre trabajo independiente que he visto es DoubleYourFreelancing.com por Brennan Dunn. Tiene una serie de artículos que lo guiarán para convertirse en un profesional independiente mejor que cualquier cosa que pueda escribir aquí. Entonces, échales un vistazo.

Otra opción para trabajar independientemente, si crees que eres realmente bueno, es unirte a Toptal. Solo aceptan el 3% de los solicitantes y su proceso es notoriamente difícil, pero si ingresa, tendrá acceso a muchas oportunidades independientes bien remuneradas donde puede trabajar de forma remota.

Comienza registrando un dominio y luego crea un sitio para ejecutarlo. Por ejemplo, registras fortunecookies4u . org y luego cree un sitio web que genere textos aleatorios de cookies de fortuna. Hazlo interesante y divertido e intenta conseguir muchos visitantes una vez que hayas terminado.

Mientras tanto, después de poco tiempo, comienza un segundo proyecto, preferiblemente con otro dominio. Digamos, algo así como femalecyb . org y llénalo con historias e imágenes de criaturas que son mitad mujeres y mitad robots.

Luego, después de más tiempo, inicie un tercer y cuarto dominio y sitio e intente mantenerlos operativos y mantenerlos actualizados. Siga agregando proyectos a su pila de trabajo hasta que llegue a un punto en el que sienta que tiene demasiados proyectos privados en ejecución. Ese es el momento en el que sigues administrando los sitios que ya tienes y quizás veas si algunas personas quieren hacerse cargo de algunos de tus sitios, incluida la fuente.

Lo que estás haciendo con todo esto es practicar, y estás practicando mucho. Si tiene 10 dominios y sitios que se ejecutan de esta manera, aprenderá cómo acelerar su desarrollo, cómo mantener el código existente, cómo mejorar el rendimiento y mucho más. Los sitios no necesitan ser rentables, aunque es un bono de bienvenida. Pero los sitios deben funcionar y estar operativos las 24 horas, los 7 días de la semana.

Sin embargo, no dejes de desarrollar más sitios. Necesitas mantener tus habilidades. Preferiblemente, trate de enfocarse en varias técnicas diferentes. Por ejemplo, use PHP con MySQL para un dominio, C # con ASP . NET para el segundo, Java para el tercero, C ++ para el cuarto y quizás HTML estático para el quinto. Combine técnicas y use subdominios para crear servicios web y subdominios de recursos especiales para contenido grande. Cuantas más técnicas use, mejor. Pero siga desarrollando sus sitios privados e intente hacerlos populares, ya que necesitará comentarios adicionales para saber cómo mejorarlos.

Podría haber dicho “Practica, Practica, Practica …” pero alguien más ya lo dijo. Bueno, lo que sugiero es básicamente practicar …

Convertirse en desarrollador web, ¿qué debe hacer? ¿Cuánto tiempo lleva aprender el desarrollo web? Veamos.

1. Conceptos y principios básicos del diseño web (al menos 10 días)

Debes dominar los conceptos básicos y el conocimiento teórico del diseño web antes de comenzar. Debe saber sobre: ​​¿Qué es una página estática? ¿Qué es una página web dinámica? ¿Cuál es el diseño general de la página web? ¿Cuál es el principio de diseño del diseño web? ¿Cuáles son los elementos básicos de la página web? ¿Qué no se puede hacer o no hacer del diseño web? Cuanto más básico sea el concepto de diseño web que conozca, más fácil será desarrollar una página web sin cometer errores.

Como sabemos, las tendencias de diseño web siempre cambian, dominar los principios básicos del diseño web puede ser la base de un sitio web. Al mismo tiempo, es posible que necesite conocer algunos conocimientos básicos de SEO para hacer un sitio web amigable. Realmente les recomiendo que lean algunos libros de diseño web en lugar de ver videos tutoriales en línea, un buen libro absolutamente los beneficiará. Aquí hay algunos libros de diseño web recomendados por diseñadores líderes en esta industria.

Cómo hacer una página web más fácilmente:

HTML Y CSS: DISEÑO Y CREACIÓN DE SITIOS WEB, POR JON DUCKETT

Cómo hacer que el diseño web sea más funcional:

JAVASCRIPT Y JQUERY: DESARROLLO WEB INTERACTIVO DELANTERO, POR JON DUCKETT

Cómo aprender el desarrollo front-end:

APRENDIZAJE DEL DISEÑO WEB: UNA GUÍA PARA PRINCIPIANTES DE HTML, CSS, JAVASCRIPT Y GRÁFICOS WEB, POR JENNIFER NIEDERST ROBBINS

Debe leer el libro de usabilidad:

NO ME HAGA PENSAR, REVISADO: UN ENFOQUE DE SENTIDO COMÚN PARA LA USABILIDAD WEB, POR STEVE KRUG

2. CSS + HTML + JavaScript (1 mes)

Compare con Javascript, HTML no es nada difícil, sino el lenguaje de etiqueta y la especificación de formato; CSS es relativamente complejo, implica algunos problemas de compatibilidad del navegador. Pero combinar estos dos puede lograr muchos efectos de página web. Si solo comprende un lenguaje de código básico, pero no toma medidas prácticas, será difícil dominarlo. Cuando comencé a aprender Bootstrap, acabo de poner la página web receptiva creada por Bootstrap para el proyecto comercial de electricidad existente. Bootstrap es una muy buena herramienta para comenzar. Puedo resolver los problemas básicos por mi cuenta después de leer los documentos oficiales de su sitio web, puede intentarlo.

JavaScript es más difícil que HTML y CSS. Pero, sabes que Brendan Eich creó el lenguaje JavaScript solo durante 10 días, por lo que su sintaxis no es muy complicada de lo que crees. Creo que pronto podrás dominar la sintaxis básica siempre que estudies mucho.

Creo que el mejor material de aprendizaje de desarrollo web es Mozilla Developer Network ( https://developer.mozilla.org ). Cubre todo el conocimiento sobre HTML, CSS, JavaScript, ya sea que sea un principiante o veterano, es muy útil para todos los desarrolladores web.

3. Debe dominar algunas herramientas de diseño web (15 días)

4. Cree su propio sitio web (al menos 1 mes)

5. Nunca dejes de aprender conocimientos de diseño (todo el tiempo)

Conclusión:

El desarrollo front-end web es el proceso que debe seguir aprendiendo. En los últimos años, la complejidad del desarrollo front-end es cada vez mayor. Este artículo es solo para aquellas personas que desean ingresar a la industria de desarrollo front-end y no pueden encontrar la dirección. ¿Cuánto tiempo lleva aprender el desarrollo web? (¡Debido al largo cuerpo, puede leer más en este enlace!) Después de leer esta guía paso a paso, puede encontrar una posición de desarrollo junior. Hagas lo que hagas, el aprendizaje es fundamental, espero que este artículo pueda ayudarlos.

Algunos fuera de mi cabeza. Es cierto que soy culpable de muchos de estos yo mismo.

  • Un buen desarrollador es fenomenal al usar un concepto particular. Un gran desarrollador es bueno para implementar el concepto más adecuado para la tarea en cuestión. No te quedes atrapado en ninguna biblioteca, marco o lenguaje en particular.
  • Un buen desarrollador escribe código. Un gran desarrollador implementa soluciones. Construye cosas con la intención de resolver un problema real.
  • Un buen desarrollador trabaja duro. Un gran desarrollador trabaja de manera inteligente. Comprender el problema hará que alcanzar la solución sea mucho más simple.
  • Un buen desarrollador aprende sobre las nuevas tendencias en tecnología. Un gran desarrollador los está implementando en un proyecto paralelo. Pase tiempo jugando con código, no solo viendo conferencias y tutoriales de tareas.

Un camino que tomo es empujarme, incluso en sitios de ‘cortador de galletas’.

* Escriba su Javascript en Coffeescript y compílelo antes de publicarlo.
* Lo mismo ocurre con MENOS / SASS y CSS3.
* Aléjese de jQuery y complementos. Cree módulos Javascript orientados a objetos que pueda reutilizar.
* No menciona los lenguajes del lado del servidor, por lo que quizás aprenda PHP, Ruby o Python a través de un marco web, luego comience a introducir su propio código de servidor personalizado.

Sobre todo, no mire a ningún sitio como ‘cortador de cookies’: cada proyecto puede ser una oportunidad para construir algo que se puede hilar en un complemento, un módulo para un marco o un proyecto de código abierto que pueda luego desarrollarse lejos del espacio del cliente.

No hay pequeñas aplicaciones, solo pequeñas ideas.

Aspectos de desarrollo

  • Cross-browser prueba tu trabajo. Tenga las máquinas virtuales relevantes instaladas en su máquina.
  • Use metodologías basadas en las mejores prácticas en su trabajo, como Mejora progresiva, Marcado semántico, etc.
  • Aprenda a optimizar su salida HTTP. El rendimiento web es importante.
  • Se adhieren a los estándares web.
  • Aprenda sobre la tecnología en la periferia de su trabajo. ¿Conoces CSS? ¿Puedes trabajar en Google Analytics?
  • Pruebe con otro lenguaje o marco de desarrollo. Genial para la perspectiva.
  • Crea cosas web en casa, por ti mismo.

Aspectos de la comunidad

  • Suscríbase a los blogs relevantes, manténgase en contacto con lo que sucede en la comunidad de desarrolladores.
  • Comience un blog de desarrollo web, escribir sobre las cosas que aprende devuelve energía y conocimiento a la comunidad
  • Contribuir a un proyecto de código abierto

Aprenda todo lo que pueda, especialmente de las personas que admira en su nuevo trabajo. Profundice en los marcos y comprenda las compensaciones y por qué se está utilizando. Conviértase en un experto en una cosa, como construir archivos o directivas angulares.

Los grandes desarrolladores son los que encuentran algo que los molesta (para las herramientas de desarrollo) o algo que molesta a los usuarios y pasa tiempo aprendiendo todo al respecto, reuniéndose con las partes interesadas y finalmente implementando una solución.

Los grandes desarrolladores dejan que el usuario venga primero, conozcan la motivación detrás de las nuevas características y cómo ayudarán al usuario, y luego implementan una característica simple y encantadora que resuelve la necesidad del usuario.

mientras codifica

Nuestro profesor de programación nos dijo esto en la primera conferencia

Hay tres formas de aprender programación

  1. Práctica
  2. Práctica
  3. Práctica

Internet tiene mucho material en línea; pero, por favor, no consumas material por el simple hecho de hacerlo. instale un buen IDE y ensúciese las manos.

De lo contrario, leer, ver videos no te dará nada

Si está buscando aprender desarrollo web, ¿puedo recomendarle que eche un vistazo a los tutoriales aquí? – Cree aplicaciones completamente destacadas | Turbo 360, como desarrollador actual, diría que React / Redux son grandes y próximos en el mundo del desarrollo web y lo ayudarán a conseguir grandes trabajos.

Solo ve a los tutoriales y comienza a aprender. Recomiendo usar la pila MERN (Mongo, Express, React / Redux, Node) porque solo son tres idiomas para aprender, que son todos imprescindibles para el desarrollo web (HTML, CSS, JAVASCRIPT).

También hay una gran comunidad y un canal flojo si alguna vez necesitas ayuda en los tutoriales o ayuda en general. Esta es la forma en que aprendí a desarrollar, bueno, una de las formas, pero la forma en que desearía haber aprendido primero. Estos son mejores que cualquier otro tutorial que pueda encontrar, y estoy seguro de que otros estarán de acuerdo.

También puedes ver algunos de los videos en la página de YouTube: Turbo 360

Primero, debe comprender los conceptos básicos del desarrollo web. Tendrá que aprender lenguajes de programación y lenguajes de estilo como (X) HTML, que es el lenguaje de marcado más popular, CSS, PHP, My SQL, JavaScript, etc. Recomiendo encarecidamente la aplicación móvil edX si desea aprender . En segundo lugar, deberá probar su conocimiento de codificación (en usted mismo). Desarrolle un sitio web (puede usar WordPress, Durpal o Joomla!. Diseñe su cartera y aprenda a optimizar nuestro sitio web para que los motores de búsqueda (SEO) lo descubran fácilmente. Anuncie su negocio de desarrollo web utilizando su página de redes sociales o contratando redes sociales Influencer. También debe aprender a comprar un nombre de dominio, alojar sus archivos en un servidor web. Si lo desea, puede descargar plantillas para sus sitios web en freecsstemplates.com. En total, le recomiendo la Guía de desarrollo web para Dummies.

Todas las otras respuestas mencionan la práctica, absolutamente haga esto, también, sin embargo, la mayor parte de su aprendizaje vendrá de otros, por supuesto, esto es más difícil si es un profesional independiente, pero no imposible, esté atento a las conferencias o reuniones locales.

En este tipo de eventos, a menudo escuchará a otros desarrolladores mencionar un problema con el que han estado luchando, o lo último en lo que han estado trabajando: tal vez hayan cambiado de framework x a framework z, o refactorizaron una aplicación backbone a angular2 o reaccionar, simplemente al estar cerca de estas personas le proporcionará información sobre lo que está sucediendo en la industria y, a menudo, puede generar pistas sobre dónde invertir un poco de tiempo de investigación.

Back End Específico (ya que usaste la palabra desarrollador).

Como un desarrollador de back-end no siempre se detiene en la primera iteración del código, e intenta no copiar y pegar el código en su proyecto, esto es una señal de que tal vez el código debería ser referenciado desde otro lugar, es demasiado fácil digamos que volveré y arreglaré esto más tarde, rara vez las personas hacen un seguimiento de este compromiso, lo hacen mientras está fresco en su mente.

Laracasts tiene algunos excelentes cursos gratuitos y de suscripción, incluso si no desea o no está utilizando actualmente Laravel muchas de las técnicas que usa Jeffrey y la forma en que explica y los códigos lo convierten en un excelente recurso de aprendizaje. Me gusta especialmente la forma en que que escribe el código de llamada a menudo antes del código que se llama, esto significa que sus convenciones de nomenclatura son mucho más sensatas que si intenta darle la vuelta. También proporciona contenido para herramientas (paquete web, elixir, etc.) y front-end, como vue.js.

Prueba de unidad, ¿estás familiarizado con ella? si no, aprenda, no necesita esforzarse por obtener una cobertura de código del 100%, o utilizar necesariamente el desarrollo impulsado por pruebas, pero si escribe una función de transformador, entonces es muy beneficioso escribir tantas pruebas de cobertura para escenarios de aprobación y falla , en mi opinión, los grandes desarrolladores siempre considerarán esto, lo que sucede si paso una cadena, arroja una excepción si se pasa nulo cuando se requiere un valor …

De la misma manera, te conviertes en un gran desarrollador en computadoras de escritorio, dispositivos móviles, juegos, IoT, ciencia de datos, aprendizaje automático, computación numérica, computación en la nube, análisis financiero, etc., etc., etc.

Se trata de qué tipo de aplicación está creando, y si tiene los recursos / medios para desarrollar la funcionalidad (en su totalidad) usted mismo, o si necesita aprovechar los servicios de terceros. Esto se conoce como Build vs. Buy.

En términos generales, es más rápido y más barato a largo plazo comprar contra construir: esto se debe principalmente a la economía de escala (un ahorro proporcional en los costos obtenidos por un mayor nivel de producción).

Si yo fuera usted, primero me sentaría y pensaría exactamente qué es lo que desea construir, qué servicios / funcionalidades necesitará, y luego comenzaría el proceso de planificación. Para ayudar, he compilado una lista de servicios maravillosos dirigidos a desarrolladores que parecen estar en el mismo barco que usted. Puede consultar la lista en el siguiente enlace:

Servicios SaaS impresionantes: GetStream / awesome-saas-services

Un gran diseñador web …

Diría que hay dos componentes clave para ser un diseñador web excepcional:

  1. Aprende, practica y aplica tus conocimientos. Ya sea tomando cursos, aprendiendo HTML y CSS, técnicamente podrá ejecutar proyectos web de manera efectiva. Creo que también podría adoptar el enfoque más fácil, que es posiblemente usar constructores de arrastrar y soltar que pueden acelerar el proceso
  2. Aprenda cómo llegar a la raíz del proyecto. Ser un buen desarrollador web significa que puede lograr un alto nivel. Si puede absorber todo el conocimiento tecnológico, pero no puede identificar efectivamente las necesidades de sus clientes y hacer coincidir eso, será como otros desarrolladores web.

Además de desarrollar su conjunto de habilidades técnicas, también debe aprender sobre la interfaz de usuario y experimentar las mejores prácticas. Le dará una mejor idea de lo que le han pedido que codifique. “Don’t Make Me Think” de Steve Krug es una lectura obligada.

Impresionante resolución de problemas, habilidades de depuración y habilidades analíticas son los conjuntos de habilidades obligatorias que un desarrollador web perfecto debe aspirar.

Y entonces

Simplemente no se limite a ninguna tecnología específica. En cambio, adquiera ese conjunto de habilidades para resolver cualquier problema y ese potencial para elegir la tecnología en consecuencia.

Por lo tanto, practicar las cosas mencionadas de forma continua te convierte en el desarrollador perfecto.

CONSTRUIR , CONSTRUIR , CONSTRUIR

Pero no me malinterpretes, no es tan simple como eso, también necesitas …

APRENDER , APRENDER , APRENDER

Después de hacer los que necesitas

DISFRUTAR

Disfrutar de lo que haces te hará apreciar tu arduo trabajo y te dará suficiente combustible para enfrentar el próximo desafío. Y entonces

REPETIR

Aprenda a programar (vea Teach Yourself Computer Science, cree el cálculo de 1,000-2,000 horas, como el final corto del cálculo).

Aprende cómo funciona la web. (La web es un modelo desconectado: su navegador no está conectado al servidor cuando está leyendo una página).

Aprenda el DOM (Modelo de objeto de documento) del navegador.

Aprenda cómo los navegadores y los servidores trabajan juntos.

Aprenda algunos idiomas: JavaScript y algún lenguaje del lado del servidor para la programación, SQL para el almacenamiento de datos, HTML para el marcado, CSS para el estilo.

Aprende AJAX.

Instale una pila web en su computadora y comience a experimentar.

Primero necesitas aprender un curso de desarrollo web del Instituto o hacer un autoaprendizaje.

Puede unirse a la mejor clase de capacitación de PHP en Indore y aprender a hacer aplicaciones web dinámicas utilizando PHP en un curso de capacitación todo incluido que incluye PHP completo, fundamentos de MySQL, concepto de programación con proyecto en vivo y al completar con éxito la capacitación, tendrá ofertas de colocación .

El Instituto de Capacitación para el Desarrollo de Software Expertx en Indore permite que un estudiante tenga un gran éxito en su carrera. Ofrecemos no solo capacitación, sino también oportunidades de colocación para estudiantes BE, B. Tech, MCA, BCA más frescos y experimentados.

Para más detalles, llame al Sr. Mohit Pandey al +91 98273-55500 o al +91 (731) -4090138