Física (y EE) de fondo. Depende en cierta medida del idioma, ya que algunos idiomas son mejores que otros para ciertos problemas / usos. Pero, en general, concéntrese en los conceptos reales de programación: estructuras de control, lógica booleana, tipos de variables, etc. Comience con poco y evite saltar sobre cualquier cosa. También con respecto a cosas como el sistema operativo y las redes, es posible que ni siquiera necesite que logre sus objetivos inmediatos. Se beneficiaría absolutamente de ello, pero a menos que sea bastante profundo, la mayoría de los problemas no surgirán hasta entonces. Desea conocer los conceptos específicos del sistema operativo, especialmente cuando trabaja con lenguajes compilados, y especialmente si está escribiendo código en diferentes sistemas, ya que todos se comportan de manera diferente y tienen sus propias reglas. Desearía saber acerca de los conceptos de redes si está trabajando específicamente con cliente-servidor, computación distribuida, cosas por el estilo. ¡Restringe tu problema!
No se concentre en los algoritmos porque eso es algo que su mente tendrá que resolver usando el software (herramienta). Una vez que establezca buenas prácticas, puede descubrir fácilmente cómo usar el software para lograr sus objetivos. Al igual que necesita usar las matemáticas para que la física trabaje para usted, necesita comprender la sintaxis para que el lenguaje funcione para usted con el algoritmo.
Surgirán problemas más complejos a medida que continúe, por lo que es importante usar los fundamentos bien establecidos para el lenguaje que está utilizando porque esto le dará una red de seguridad de algunos de los problemas “detrás de escena” que uno puede encontrar. Algo así como cuántas personas pueden conducir un automóvil, pero menos personas saben cómo funciona. Pueden saber que el automóvil usa gasolina, pero probablemente no sabrán sobre el ciclo de Carnot: D.
- ¿Qué valor proporciona el uso de un enfoque orientado a objetos?
- ¿Por qué la industria del software tiene tantos problemas?
- ¿Cómo puede alguien que no tiene experiencia en informática convertirse en un probador de software?
- ¿Un 'buen' ingeniero de software volvería a escribir su código para módulos Python obsoletos, o haría que su empleador actualizara dicho módulo?
- ¿Hay alguna herramienta que me permita crear fácilmente un diagrama de arquitectura de software interactivo?
Encuentre un buen tutorial, uno que sea conciso pero que no omita nada. Es fácil pasar mucho tiempo en cosas que enloquecen cuando comienzas a desarrollarte, especialmente con lenguajes compilados. Por lo tanto, tenga una buena guía y asegúrese de leer el archivo README, así como las notas de la versión de lo que esté utilizando a fondo para evitar no tener las respuestas para una compilación específica.
Además, el depurador es tu mejor amigo. Aprendelo bien. No necesariamente dedique demasiado tiempo a los detalles, pero al menos aprenda cómo establecer puntos de interrupción, examinar variables, etc. Cosas como mirar la pila pueden venir más tarde.