¿Qué fundamentos de CS necesitan saber los programadores autodidactas y dónde puedo obtenerlos?

Seguramente estás en el camino correcto y diría que depende de tus objetivos más específicos: si, por ejemplo, aspiras a ser un desarrollador de juegos aún mejor (y luego el gerente de otro desarrollador de juegos bueno), me enfocaré mucho en el aprendizaje de algos (incluso los más populares como Dijkstra no son tan triviales de dominar, pero pueden proporcionarle herramientas invaluables para, por ejemplo, hacer que los enemigos se muevan contra su jugador) y las estructuras de datos .

Otras habilidades de codificación como depuración, creación de prototipos, pruebas, etc. nunca se deben subestimar, mientras que también puede dejar las paredes seguras de la programación y aprender (o mejorar) habilidades más orientadas a la gestión, como gestión de proyectos, liderazgo o comunicación ( de nuevo: uno nunca se cansa de ellos).

En cuanto a los recursos gratuitos, te recomendaría que vayas con algo similar a mi camino.

Coursera, en particular, puede brindarte toneladas de temas interesantes para aprender que te convertirán en un codificador y administrador versátil; a su debido tiempo, también puede llegar a apreciar, al igual que integrar habilidades aparentemente ajenas, como marketing o finanzas , que también pueden mejorar seriamente su calidad de vida, permitiéndole contar con herramientas muy valiosas.

Finalmente, si me da un último consejo, intente evitar cualquier situación que pueda hacerle sentir o pensar que es “plenamente competente”: uno nunca obtiene el dominio total de algo tan complejo como el CS , por lo que es mejor mantener un En este sentido, tenga una perspectiva conservadora y, aunque esté contento con su logro anterior, también intente mantener a su cerebro siempre sediento de más conocimiento .

Yo mismo encontré una excelente manera de mantener la humildad y la motivación en la codificación competitiva (CodeWars es mi recurso favorito en este momento), ya que puedo tener muchos problemas diferentes y me aseguro de encontrar mucha gente mejor que yo, pero cada uno de nosotros es diferente y puede encontrar mejores resultados al colaborar en sitios como BitBucket o Github.

Espero que esto ayude y feliz codificación :)!