¿Cómo retienen los desarrolladores lo que aprenden?

Por lo que sé, no es necesario ser un poseedor de registros de memoria para ser desarrollador de software. Yo también tengo bastante mala memoria y la mayoría de las veces me olvido de algunas construcciones de programación, olvídese de eso, he estado usando Linux durante los últimos 7 años y aún fumo mientras uso las banderas en tar.

Una parte importante, después de algunos años de trabajo extenso, realmente logramos buscar soluciones desde Internet. Ya sea en Google o en Stack Overflow o en cualquier otro recurso web, se convierte en una parte integral de nuestra vida. Sin embargo, he anotado algunos puntos rápidos que pueden resumir mi proceso de aprendizaje.

  • Notas de notas de bebé. Utilizo Macbook, y la aplicación de notas allí es útil para pequeños scripts que necesito anotar rápidamente. La gente usa evernote o google notes de la misma manera.
  • Github proyectos y gists. Leo y reviso mucho código, literalmente, me refiero a más de 1000 líneas de código diariamente. Entonces, si encuentro que alguna sub rutina ha sido implementada de manera impresionante, la robo. Lo pongo en mis gistas y lo uso cuando lo necesito. Esto me ha ayudado a escribir código de calidad a lo largo del tiempo, sin la necesidad de reinventar la rueda.
  • La práctica hace al hombre perfecto. No hace falta decir que esto es verdad cualquier día. Si quieres ser experto en volar necesitas esas horas de vuelo. Lo mismo ocurre aquí, el aprendizaje debe implementarse, y la única manera de hacerlo es codificar más a menudo.
  • Marcé cualquier cosa y todo lo que encuentre útil. Mi barra de marcadores está llena de miles de recursos útiles, y si necesito buscar algo, primero miro mis marcadores y la mayoría de las veces obtengo mis respuestas allí.
  • Mientras se trabaja en un gran proyecto, es normal olvidar muchas cosas en el medio. Ese es el lugar donde la gestión y planificación del proyecto aparece en la imagen. Utilizo Trello para organizar mis cosas y hacer un seguimiento de mi progreso sin perder ninguna sutileza de mi proyecto.

Estos son algunos de los trucos que utilizo para ser un mejor desarrollador cada día, se actualizarán una vez que tenga más información.

Mis consejos, creo que funciona así para mí:

  1. No tengas miedo de llegar a la documentación o ejemplos. Incluso la segunda vez. Incluso la quinta vez. Incluso la décima vez.
  2. Práctica. Después de usar un poco de conocimiento decenas o cientos de veces, probablemente lo recuerdes. Y si solo tuvo que consultar la documentación varias veces y no volver a utilizarla, probablemente no valga la pena memorizarla.
  3. Es aún más correcto buscar documentación y ejemplos si eres eficiente en eso. Haga una búsqueda en google / github / … lo más pertinente posible. Documentación de marcadores, artículos útiles (trabajos en libros reales también). Y si pregunta cómo ser eficiente en la búsqueda de documentación: práctica (o puede preguntar en Quora).
  4. Punto extra: si el código está abierto, puede ver cómo funciona una biblioteca / herramienta. Comprender cómo funciona ayuda a recordar cómo usarlo. (Y para dominar el código interno, una vez más: practicar)

Espero que ayude.

Trato de no confiar en la memoria para obtener detalles, porque sé que está defectuoso en general y que tratar de memorizar cada detalle me volvería loco o me dejaría sin ninguna vida personal.

En cambio, tomo notas bastante largas, muchas de ellas, al igual que tuve que explicárselo a alguien que no está familiarizado con el tema (la técnica del “pato de goma” que muchos ingenieros de software ya conocen).

El mero hecho de escribir por escrito lo que aprendí me ayuda mucho a memorizar cosas, a aclarar lo que realmente entendí, y también me libera de la molestia de tener que recordar todos los detalles. Cuando necesito algo, lo busco.

La herramienta de mi elección para tomar notas personales es TiddlyWiki, que es un wiki autocontenido implementado como un único archivo HTML + JavaScript + CSS auto-modificable que funciona con cualquier navegador principal, se puede buscar, tiene complementos, tiene macros y puede maneja su propia sintaxis wiki, HTML plano, texto plano y MarkDown. Un solo archivo puede contener fácilmente miles de notas.

Ellos no
Lo buscan en Google y comprueban las cosas en StackOverflow.

Bromas aparte, en su mayoría recuerdas cuáles fueron los problemas con los que te enfrentaste o qué bibliotecas / procedimientos utilizar en lugar de otros. Nunca puedes recordar la cosa del tiempo, y recordar todo esto nunca sería útil.

Por ejemplo,
Integré Facebook en uno de mis proyectos unitarios en septiembre, hubo un error en FacebookSDK para la unidad que desperdició una gran cantidad de mi tiempo en ese entonces, esta vez mientras hacía lo mismo para un proyecto diferente o sabía cuál sería el problema. . *

Puede encontrar cosas completas que puede buscar, buscar en google, pero los pequeños detalles técnicos son lo que aprende y recuerda el desarrollo de whilist.

* Facebook ya ha actualizado su SDK, resolviendo el error que mencioné, cuando lo usé por segunda vez. El ejemplo solo se utiliza para ilustrar cómo funciona una cosa en el desarrollo.











Podría hacer la misma pregunta de cómo recuerda cómo escribir palabras o hablar un idioma determinado. Todo se reduce al uso y la práctica regular. Yo también lucho para recordar lo que he aprendido, pero puedo afirmar específicamente que es porque después de aprenderlo, no lo practico. Cuando aprendo algo e inmediatamente empiezo a usar ese conocimiento con regularidad, eventualmente se mantiene, aunque con el tiempo, si no se usa nuevamente, comienza a desvanecerse y es posible que tenga que actualizar aspectos de lo que aprendí la próxima vez que lo use.

Personalmente, mantengo un gran depósito de código ordenado por lenguaje y función, así como una colección masiva de psudocódigo y notas, todo bien documentado con palabras clave relevantes. Puedo buscar rápidamente cualquier cosa de importancia que haya escrito antes. Además, Google es mi mejor amigo para encontrar rutinas que ya se han escrito.

También tengo una memoria terrible cuando se trata de memorizar la sintaxis. El mejor consejo que puedo dar es no molestar. La sintaxis es algo que puede consultar y, como los idiomas cambian constantemente, no hay ningún punto real para memorizarlos. Naturalmente, recordará los que usa con más frecuencia y eso es probablemente todo lo que realmente necesitará para la mayoría de su trabajo. La mejor analogía es probablemente el inglés, ya que hay miles de palabras en el diccionario, pero la mayoría de las personas solo usan una pequeña fracción en el día a día y todos nos comunicamos perfectamente bien en su mayor parte.