Enfrentando dificultades para aprender un nuevo lenguaje de programación en la empresa

Soy un tercer estudiante de TI en desarrollo haciendo un curso "híbrido". Para ser más específico paso el 50% de mi tiempo en la escuela y el resto en una empresa. Sí me pagan (alrededor del 80% del salario mínimo en mi país) y sí pagan mi formación (escuela).

Desde que comencé a trabajar en mi empresa (septiembre de 2016) mis habilidades en programación eran suficientes y si tenía alguna dificultad siempre lograba tener éxito en mis tareas aprendiendo en la web.

Desde hace unos días me estoy atascando mucho en mi proyecto web usando AngularJS que realizo solo. Mi curso de capacitación no incluye este idioma, por lo que difícilmente puedo pedirles soporte técnico. Mis colegas están haciendo un gran Sprint en su proyecto, por lo que no puedo pedir ayuda en este momento.

Empiezo a preocuparme por mi situación. Concretamente en AngularJS que considero bastante duro, complejo y muy diferente a lo que he aprendido aquí.

¿Cómo se debe proceder al enfrentar los desafíos técnicos iniciales de la carrera cuando se carece de apoyo?

PD: el inglés no es mi idioma nativo y me disculpo por cualquier error de gramática u ortografía.

Consigue un libro o un tutorial sobre el idioma que necesitas aprender y trabaja con él. Prefiero los libros para principiantes, aunque escribí mis primeros programas en 1967, porque enseñan la mentalidad adecuada para el idioma. Aprender lenguajes de programación es una habilidad mucho más duradera que cualquier lenguaje en particular.
Intentaría salir de este proyecto lo antes posible. Y no pensaría en ello como rendirme. Pensaría en él como responsable de conocer mis límites actuales. En cuanto a los beneficios, creo que tanto su jefe como el cliente se beneficiarían, ya que entonces podrían reasignar el proyecto a alguien que podría completar la tarea en el tiempo asignado. (Continuación)
(Continuación) Pero tenga en cuenta que generalmente soy bastante indulgente, especialmente si veo que la persona realmente está luchando después de haber hecho un esfuerzo. No sé si este es el caso para usted y su supervisor también, por lo que realmente tiene una decisión difícil por delante.
@TeacherKSHuang Puede que sea demasiado pronto para darse por vencido y no soy realmente un tipo que "se da por vencido", hice lo mejor que pude en Angular (interfaz con enlace de datos, etc.). No quiero entrar en detalles porque no es el lugar apropiado, pero se complica un poco. Creo que esperaré a que algún colega calificado me ayude, yo también quiero progresar. ¡Además sigo siendo un aprendiz!
@Matieu, lo entiendo. Sin embargo, el hecho de que renuncies al proyecto no significa que tengas que renunciar al aprendizaje.
AngularJS es conocido por ser difícil de comprender, incluso para las personas que tienen mucha experiencia en Javascript. Obtener un libro es un buen comienzo, y también lo es seguir haciéndolo. Haga algunos proyectos de juego para intentar cosas de una manera pequeña.

Respuestas (5)

Si está atascado en un proyecto porque le falta alguna habilidad requerida, entonces debe decirle a su gerente que le falta esa habilidad, y depende de su gerente decidir qué hacer. Imagine que tiene un colega que se encuentra exactamente en la misma situación, pero tiene la habilidad que le falta a él y él tiene la habilidad que le falta a usted: su gerente simplemente intercambiará las tareas y todos estarán felices. Si no le dice a su gerente, usted y su colega sufrirán y perderán mucho tiempo sin lograr nada.

Las opciones obvias para su gerente son darle alguna otra tarea o decirle que aprenda las habilidades requeridas, sabiendo que esto llevará algún tiempo.

Es posible que dedique mucho tiempo a encontrar la respuesta que podría dedicar a aprender el idioma. Da un paso atrás y pasa un fin de semana o tus pocas noches e intenta completar algunos cursos de principio a fin. Te pondrá en marcha y en marcha.

Primero plantee el problema a su gerente y colegas. Su gerente preferiría saber más temprano que tarde que el proyecto está teniendo problemas, así que dígaselo ahora, no solo antes de la entrega. Solo porque sus colegas estén ocupados, no asuma que no estarán preparados para ayudarlo. Puede haber alguien que esté preparado para trabajar un poco más de tiempo para ayudarte, o que hagan las revisiones de tu código mucho más rápido, etc. No lo sabrás hasta que hables con ellos.

En segundo lugar, busca apoyo fuera del trabajo. Hay muchos foros donde puede obtener ayuda con un problema específico, así que utilícelos.

Si tiene problemas con algunos de los conceptos en lugar de problemas de programación específicos, haga algunos proyectos de muestra simples para ayudarlo a comprender lo que está sucediendo. Probablemente tendrás que hacer esto en tu propio tiempo, pero te ayudará a ponerte al día. Por ejemplo, cuando estaba aprendiendo Angular, escribí una página simple que calcularía cuántos rollos de papel tapiz necesitarías para empapelar una habitación.

Finalmente, evalúe si hay un enfoque técnico diferente que podría tomar. Por ejemplo, encontré Angular mucho más fácil una vez que dejé de tener que depender de mi terrible conocimiento de JavaScript y usé CoffeeScript en su lugar.

Empiezo a preocuparme por mi situación. Concretamente en AngularJS que considero bastante duro, complejo y muy diferente a lo que he aprendido aquí.

También es extremadamente próspero, popular, impulsado por la comunidad y con una gran cantidad de literatura al respecto.

¡Encuentre recursos que funcionen para usted y siga buscando!

Tratar:

  • Udacity, Khan Academy, Coursera, etc.
  • Compra un libro de O'Reilly o similar
  • Leer un montón de diferentes tutoriales sobre él
  • Encuentre proyectos de muestra en github, lea su código y modifíquelo
  • Lea artículos comparándolo con lo que sabe un excelente artículo de SO
  • Busca en Google muchas preguntas específicas y lee hasta que las resuelvas.
  • Ambos se enfocan en realizar tareas muy específicas de la forma que sea posible y aprender más de la teoría que hace que el marco funcione.
  • Etcétera...

Debe ser tratado como un programador y decirle qué hacer y cómo hacerlo, o la calidad del código disminuirá, pero las empresas de consultoría generalmente quieren que aprenda por sí mismo. Siempre tendrás que aprender por ti mismo, y la mejor manera es usar Google para encontrar la solución. Si está atascado con algo, simplemente notifique el problema a su gerente de proyecto y tendrá que evaluar el riesgo, y tal vez asignar a otra persona para esa tarea.

"Siempre tendrás que aprender por ti mismo" pues en realidad sí y no. Aprenderé un montón de cosas por mí mismo, pero Google no es la solución para todos los problemas. Como dijeron anteriormente Erik y Patricia los libros podrían ser una solución, pero también las capacitaciones (en mi empresa son bastante comunes). A veces Google no es suficiente dependiendo de la complejidad del proyecto. Pero avisaré a mi gerente lo antes posible, ¡gracias por el consejo!