He pasado entre 6 y 8 horas / día enseñándome a mí mismo para programar durante el último mes y básicamente he buscado en Internet todos los tutoriales gratuitos o semi-gratuitos que existen.
Aquí están las cosas buenas que he usado y recomendado:
- CodeHS: problemas de formato de video y luego programados personalmente, que comienzan con un lenguaje de juguete llamado Karel y avanzan a Javascript, y culminan en hacer que el juego se rompa en su navegador. Fundado por dos ex-CS106a TAs en Stanford de los cuales el plan de estudios se adaptó en gran medida. Tienen probablemente 40 horas de contenido realmente bueno y, lo que es más importante, le brindan ayuda amistosa e individual con aproximadamente 3 horas de respuesta cuando la necesita. Mira mi versión de Breakout que hice después de hacer todo el contenido: EpicBreakout. (1)
- Python Class de Google: a diferencia de lo anterior, requiere cierta configuración en su máquina (es decir, no está codificando en el navegador), pero sigue siendo bueno. Alrededor de dos días de conferencias sobre Python con un puñado de buenos problemas, que culminan en expresiones regulares (como un CRTL + F personalizado en un documento de Word) y un problema en el que descifras una imagen codificada de un sitio web.
- CodingBat: problemas de Python y Java. Sin lujos, solo los ejercicios, probablemente mejor para alguien con un poco de experiencia (lo que significa que sabes qué es una función / parámetro y puedes usar Google para descubrir / encontrar la sintaxis / funciones que necesitas). El sitio fue creado por el mismo tipo que enseñó la clase Google Python.
- Khan Academy: algunos tutoriales de introducción (en su mayoría centrados en gráficos / animación) en JS utilizando una biblioteca bien considerada (Processing.js) y luego un espacio de proyecto abierto para que vea los programas que otras personas han hecho (es decir, el resultado final y el código) y hacer el suyo propio, potencialmente despojando de su trabajo. Aquí hay un juego que hizo un tipo que sirvió de inspiración para mi versión de Breakout: Mercury Subspace. Bastante bien, ¿verdad?
- Codecademy: formato sólido de código de lectura y escritura de pequeños problemas divididos en diferentes subpiezas. Utilicé sus tutoriales HTML / CSS para obtener un fondo básico antes de hacer mi sitio web personal (http://www.thenickhuber.com/) y voy a usar sus cosas en JS y jQuery más avanzados cuando llegue a él. Aún así, su calificador está un poco defectuoso y hay una gran variación en la calidad del curso / superposición en el material, ya que todo está escrito por diferentes personas.
- Aprenda Python The Hard Way – Ejercicios de lectura y luego implementación, comenzando sin ningún conocimiento asumido. Bueno, pero aún no tan bueno como los problemas interactivos; Me di por vencido después de hacer ~ 20% más o menos porque es repetitivo sin disculpas, pero he leído muchas buenas críticas al respecto.
Otras cosas buenas que quiero ver:
- Curso de Stanford para iPhone (todas las diapositivas y tareas: http://www.stanford.edu/class/cs…): una aplicación para iPhone parece un proyecto temprano tan bueno, porque es muy fácil mostrar a tus amigos lo que has hecho, pero tengo que averiguar cuán completable sería para mí. Además, no puede clasificar sus conjuntos de problemas si solo está trabajando por su cuenta a partir del material en línea.
- K&R (http://www.amazon.com/Programmin…) – Libro de introducción de gran prestigio sobre C e implementaciones de los algoritmos más canónicos. (Si conoce un sitio web que intenta hacer algo como esto, me encantaría obtenerlo de usted).
- Los numerosos cursos de CS en Coursera y Udacity. Sin embargo, creo que es muy importante que tengas a alguien calificando tu trabajo para que puedas obtener comentarios (y que realmente resuelvas los problemas en lugar de solo mirar las conferencias). No estoy seguro de si esto es posible si tomas el curso “fuera de ciclo” y qué tan buenos son los problemas, pero aún así vale la pena echarle un vistazo.
Después de un mes, ahora tengo una mejor idea de lo que puedo hacer y esto informa cosas que creo que sería genial hacer. En este punto, estoy muy emocionado de continuar con este enfoque de aprendizaje basado en proyectos, ya que creo que es más efectivo / duradero / divertido que más tutoriales / clases, pero aún es difícil lograrlo fuera del entorno universitario / laboral.
- ¿Cuáles son algunos de los mejores sitios web para encontrar infografías?
- ¿Cuál es el mejor lugar para obtener información sobre entradas para conciertos en Australia?
- ¿Cuáles son los mejores y más confiables sitios web para entradas de fútbol?
- ¿Cuáles son los mejores sitios web en línea para la prueba de aptitud en línea con temporizador para preparar las ubicaciones en el campus?
- ¿Cuáles son algunos de los modelos de negocio y sitios web de comercio electrónico más innovadores?
–
- Nota: es imposible de ganar en este momento: necesito refactorizarlo y expandirlo, incluyendo un montón más de potenciadores y el enfrentamiento final con el jefe final de nuestro héroe, The Brick King. FYI, mi puntaje más alto es como 550 y el juego se vuelve defectuoso a niveles altos. Cambiar a viñetas ayuda y en realidad agrega algunas dificultades inesperadas. Me encantaría recibir sus comentarios / ideas.