Entonces, estoy tratando de enseñarle a mi primo mucho más joven un poco sobre programación. Mi pensamiento inicial fue algo así como Scratch o Alice , pero había algunas desventajas en eso.
Todos parecen estar realmente interesados en la programación de juegos y el desarrollo de videojuegos (porque a todos les encantan los videojuegos, y en lo que respecta a los videojuegos, jugar el tuyo puede ser lo más gratificante), pero ni Alice ni Scratch parecen satisfacer el juego desarrollo
Alice y Scratch parecen demasiado infantiles, aunque estoy seguro de que a mi primo le encantaría meterse en él, creo que rápidamente lo aburriría
Quiero un lenguaje que pueda usarse para desarrollar cosas realmente geniales que impresionen a sus amigos. Recuerdo haber escrito BASIC en el día e invitar a todos mis amigos y mostrar mi creación, y siento que Alice y Scratch simplemente no apelan de la misma manera
Quiero un idioma que requiera que mi primo escriba código. Ahora, esto no es solo porque creo que escribir código es una buena preparación para otros lenguajes de programación, sino porque le da la oportunidad de practicar realmente la escritura y tal vez acostumbrarse a algunos de los caracteres un poco más esotéricos en el teclado
Ahora, por eso no quiero elegir a Alice o Scratch.
Tampoco quiero elegir un lenguaje como C o Java, o incluso Python o Ruby para el caso. Mi primo ya me ha impartido que le gusta jugar videojuegos y quiere hacer el suyo, y que le gusta usar computadoras. En mi opinión, incluso un lenguaje simple como Python o Ruby simplemente toma demasiado tiempo para construir cosas geniales. Idealmente, se sentaría, pasaría alrededor de un día o dos (o tal vez hasta una semana, pero con suerte menos que eso) y tendría un juego bidimensional que funcione. No digo que no puedas hacerlo en Python o Ruby, pero solo digo que sería difícil para un programador por primera vez. Además, no quiero molestarlo con todas las cosas de informática, ya que eso puede venir más tarde. Solo quiero ayudarlo a crear la chispa y luego dejar que continúe con el resto del fuego.
He visto idiomas como Lua, y aunque parece común en la programación de juegos, no estoy seguro de si es la mejor opción, pero si ustedes piensan lo contrario, háganmelo saber.
También he visto un lenguaje como Blitz y parece realmente prometedor (además, lo probé hace unos años, y fue realmente bastante agradable). La desventaja es que tengo que pagar, algo en lo que definitivamente estoy en contra.
He mirado SmallBasic , lo que parece prometedor y lo seguiré viendo. Pero no he hecho mucho (de hecho, estoy ejecutando el instalador mientras escribo esto, por lo que informaré mis pensamientos al respecto en breve).
ACTUALIZACIÓN: probé rápidamente a SmallBasic y parece intrigante, pero también parece bastante diferente en comparación con otros idiomas, eso no es algo malo, pero es algo inusual. Fuera de las cosas que he visto, Blitz sigue siendo mi favorito, pero me niego a ir allí debido al costo.
Pero básicamente, ¿qué piensan ustedes de lo que he dicho hasta ahora, y los idiomas que he visto y conocen otras buenas alternativas?
ACTUALIZACIÓN: Esto es lo que he elegido hacer ...
Me he dado cuenta de que aunque me encantaría ayudar a mi primo, no puedo estar con él todo el tiempo, y no puedo ayudarlo cada vez que necesita ayuda. Entonces, quería elegir algo que tenga una buena documentación, una buena comunidad y un buen libro que pueda seguir.
De todos modos, he elegido Python y Pygame. Python es un lenguaje con el que estoy bastante familiarizado, además sé que hay una comunidad bastante buena (y bastante grande) alrededor de Python. Además, sé que la documentación de Python es bastante completa y fácil de navegar. Pygame también tiene una excelente documentación y un conjunto de tutoriales. También le pido que use / siga Invent Your Own Computer Games con Python , que parece un libro muy bueno, le compré una copia impresa como regalo de Navidad, además sé que su monitor no es enorme, y lo haría sea inconveniente para cambiar constantemente entre el texto y el editor.
¡Creo que debería ir bien!
EDITAR: No quiero implicar que mi elección sea final o que sea correcta. Solo creo que es la mejor opción para esta situación. Creo que cada persona que busca enseñar a alguien más joven debe explorar la selección y encontrar la mejor solución para la persona individual, considerando cosas como la edad, el nivel de habilidad y el interés.
I want a language that can be used to develop really cool stuff that will impress his friends.
Esa sigue siendo mi principal motivación para la programación, después de 25 años en que ...