Dijiste tanto software como hardware.
Lo más importante para entender es hacer las lecciones de matemáticas que se están enseñando bien, no solo la puntuación, sino conocer la profundidad. Extraño esos días. Si tuviera la experiencia que tengo ahora, desearía haber prestado más atención en clase.
Las siguientes cosas son especialmente importantes:
- ¿Qué herramientas gratuitas puedo usar para hacer un PDF interactivo?
- ¿Deben las compañías de software insistir en que los empleados no usen software externo para los datos de la compañía?
- ¿Qué piensan los policías de Dustcloud?
- ¿Cuáles son algunos puntos débiles significativos en el mercado de profesionales independientes que podrían resolverse con software?
- ¿Cuál es la forma más fácil de editar un PDF?
- Álgebra lineal – extremadamente importante que lo aprendan bien – lo más importante Matrices.
- Aprenda y entienda la probabilidad y la estadística.
- Precalc y tal vez si le va bien el cálculo.
- Matemáticas discretas, especialmente la teoría de conjuntos.
- Mientras aprende Matemáticas, sugiero comenzar desde Golang o Python y resolver todos los problemas (pruebe tantos, probablemente tome 1 por día) aquí – Acerca de – Proyecto Euler
- Si bien el aprendizaje de lenguajes de programación ciertamente ayuda, pero la mayoría de las veces es útil que comprenda por qué las cosas se hacen mejor de una manera determinada: busque el libro de patrones de diseño (especialmente Gang of Four) y aplique los problemas en los que está trabajando.
- Lea un libro ligero sobre estructuras de datos y algoritmos; este es un algoritmo de lectura ligera desbloqueado y quizás fácil de seguir, o pruebe el libro de algoritmos de Sedgewick, que también es una joya.
- Lea sobre la manipulación de bits.
- Para comprender el hardware, la mejor y única primera lección que necesita es ensamblar su propia computadora; de esta manera, aprenderá los detalles de la cosa, instale su propio sistema operativo, preferiblemente Linux.
- Intente comenzar con Golang o C. Recomiendo Golang primero.
- Definitivamente elige un libro sobre los fundamentos de Unix (prueba Richard Stevens) y scripting de shell …
- Para obtener exposición al programa funcional, quédese con Python y lea y aplique Map, Reduce, operador lambda.
Una vez que llegue a ser uno de estos conceptos, déjelo probar Scala o Haskell para comprender la programación funcional en profundidad.
La asamblea puede ser una buena opción como un “crédito adicional” – intente nasm.