Está bien hacer programación competitiva siempre que te motive.
Programar es como escribir. Programar es una actividad creativa.
Haz tu propio proyecto. Escribe tu blog técnico. Programa para un proyecto que mantendrás durante años, como mantener un blog de 10 años.
Por lo general, no necesitas perseguir lo que está de moda en la tecnología ahora, ya que muchas tendencias desaparecerán después de unos años.
Persigue tu curiosidad y programa por tu propio bien.
Intenta crear programas para ti mismo. No son tareas de trabajo.
Si a menudo te sientes infeliz al programar, entonces lo estás haciendo de manera incorrecta.
iOS, Android, Backend, Frontend, IA, todos son buenos. Al menos puedes intentar hacer un pequeño proyecto con ellos o aprender sobre ellos durante unos meses.
Depurar es ser sospechoso. No confíes en cada línea de tu código; puedes pensar en una mejor manera de hacerlo.
En la programación, incluso un carácter o una línea de registro es importante. Te dicen algo.
Usar la programación para crear productos que otros usen. Es interesante tener usuarios.
No necesitas ser duro. Unos cientos de usuarios que realmente aman tu producto es mejor que decenas de miles de usuarios que solo lo aprecian amablemente.
Recuerda por qué te metiste en la programación y nunca lo olvides.
Aplica el conocimiento de la programación a todos los aspectos de la vida. Son lo mismo. Hacer las cosas en lotes o una por una. Cómo separar trabajos en unidades. La tecnología subyacente detrás de cada aplicación. Los detalles matizados detrás de las solicitudes de red.
La abstracción y el pensamiento lógico. El pensamiento orientado a los detalles. El pensamiento de cada solución.
La verdad es la verdad. Por lo general, la computadora no se equivocará. El circuito eléctrico no se equivocará. El compilador no se equivocará. No te sientas mal cuando haya un error.
Persigue soluciones elegantes y simples. La simplicidad es la máxima sofisticación. Necesitas pensar mucho para dejar lo esencial y eliminar lo extra.
Para los lenguajes de programación, los lenguajes que hacen el trabajo están bien. Personalmente recomiendo Java y Python.
Sigue a Yin Wang en https://www.yinwang.org. Es uno de los pocos genios en la programación, aunque él dice que los genios nunca existen.
El conocimiento y los principios de la programación se pueden aplicar fácilmente al aprendizaje de idiomas, la reparación de hardware, el life hacking y la investigación científica.
Para la mayoría de las tareas de programación, no necesitas matemáticas avanzadas más allá de las matemáticas de la escuela secundaria.
Reflexiona sobre tu código antiguo después de años o mantén un proyecto de código durante mucho tiempo. Te enseñará mucho.
Si pierdes la pasión por la programación, simplemente haz otras cosas por un tiempo.
El momento de las pruebas es importante. Hazlo de manera natural. A menudo no necesitas escribir pruebas para tu proyecto. Intenta no escribir pruebas, escribe pruebas unitarias, escribe pruebas de integración, escribe pruebas de API. Compáralas sabiamente.
Prueba editores de código con IA. Usa ChatGPT u otros chatbots con frecuencia. Como las herramientas de IA son fáciles de usar ahora, puedes concentrarte en partes más creativas o importantes.
Al depurar, verifica si estás usando la última versión de las bibliotecas. Si una biblioteca no se mantiene, busca clones o bifurcaciones que estén activamente mantenidos.