No se puede obtener una educación universitaria de Internet, PERO CS es el tema que está más que completo, en el sentido de tener excelentes recursos disponibles, en forma de MOOC y muchos otros recursos también.
Hay muchas personas que trabajan en la industria del software que no entienden los conceptos básicos de la complejidad algorítmica. Tome cualquier tipo de curso de ‘Introducción a CS’, hay muchos, y ya tendrá una mejor formación académica, en algunos aspectos, que otros.
Quizás lo más importante que una educación universitaria le brindaría es que, hasta cierto punto, lo obligará a estudiar materias que le interesan menos personalmente. Pero muchas de ellas pueden retrasarse, tal vez indefinidamente. Computer Graphics es en realidad un tema bastante divertido, pero requiere una comprensión de la trigonometría 3D y las matrices que puede que no tenga, por ejemplo. Pero a menos que vaya a implementar juegos, realidad virtual o trabajar en animación, no es esencial. Las bases de datos, las redes y los sistemas operativos son temas que son algo aburridos, y que puede retomar en el camino, pero que son algo aburridos tienen menos recursos que otros en MOOC y demás.
- ¿Cómo se puede entrenar para convertirse en un chico o chica ridículamente fotogénico?
- Inglés (idioma): ¿Cuáles son los efectos de leer una prosa sin editar?
- ¿Qué tan rápido tiene que ser una conexión a Internet para un servidor de alojamiento pequeño típico?
- ¿Cuál es el futuro de los sitios web de chat extraños?
- ¿Por qué algunos sitios web tienen URL ilegibles?
Recomiendo absolutamente los 4 cursos de algoritmo de Robert Sedgewick (y su análisis), comenzando con Algoritmos, Parte I – Universidad de Princeton | Coursera (próxima iteración 23 de enero). Sin embargo, recomendaría distribuirlos durante dos años , y en el segundo año volver a la primera pareja como TA. Por supuesto, inscríbase en los análisis anteriores y eche un vistazo a algunos videos, para que pueda ver qué requisitos matemáticos pueden ser necesarios.
También puedo recomendar Circuitos y electrónica 1: Análisis básico de circuitos: este curso ahora consta de tres partes, las dos primeras son relativamente fáciles. Considera la tercera parte de tu segundo año, pero mira todos los videos antes de eso, incluso si los ejercicios son demasiado difíciles.
Si usa MOOC en Coursera y EdX como su principal recurso “sustituto de la universidad”, entonces recomendaría tomar entre 2 y 5 cursos en un momento dado, y tomar al menos dos descansos por año, en momentos naturales, para imitar semestres. Si no tiene trabajo, intente mantener los MOOC en aproximadamente 30 horas por semana, para que pueda dedicar de 10 a 20 horas por semana en otras cosas, incluidos sus propios proyectos personales.
Los MOOC solo introducen los conceptos básicos de los lenguajes de computadora, siendo Python y Java los más populares. Considere otros paradigmas que OO, en particular aprenda un lenguaje de programación funcional (prefiero uno legible para fines de aprendizaje, así que evite a Haskell como principiante). Evite JavaScript y PHP a toda costa hasta que se vea obligado a usarlos para el desarrollo. Si no le gusta Java, considere uno de C, C ++ y C # en su lugar. Las alternativas a Python incluyen Ruby, pero también esté atento al Lenguaje Julia (aún en desarrollo), este es MUY un lenguaje CS “soñado”.
No olvide que en una educación universitaria, 42 horas por semana durante 42 semanas por año durante (al menos) 2 años de CS se considerarían normales. Llámelo 3500 horas, a lo que puede agregar otras 500-1000 horas en virtud de no tener el mismo apoyo de los foros en línea como lo haría en la universidad. Por otro lado, si su interés principal es crear un buen software, cometer errores y encontrar las respuestas por sí mismo valdrá la pena, en términos de aprendizaje.
¡Buena suerte, y siempre puedes pedir un préstamo después de un extenso estudio individual!