Programar es, según la RAE, elaborar programas para la resolución de problemas mediante ordenadores. Donde programas son una serie de instrucciones debidamente elaboradas para dicho ordenador. Visto de otra manera, el programador escribe un mensaje, el código fuente, que el ordenador recibe, entiende y ejecuta luego de una serie de traducciones. Así se establece un tipo muy especial de interacción hombre-máquina, que comienza en la mente del programador y termina en los registros del CPU.

La programación es ciencia y arte. Por un lado, como programadores, tenemos que hacernos de una buena colección de algoritmos y estructuras de datos para resolver problemas con cierta eficiencia. Aquí está la ciencia. Por el otro lado, debemos adquirir el oficio de programar con alguna herramienta, que va desde el lenguaje de programación hasta el entorno de desarrollo, sin mencionar técnicas de ingeniería de software para gestionar proyectos complejos y donde las preferencias-obsesiones personales entran en juego, incluso podemos hablar de estilos de programación. Aquí está el arte. Un programador experimentado sabe equilibrar esas dos fuerzas.
¿Cómo enseñar programación a un niño? Digamos a alguien entre 8 y 15 años de edad. No creo tener la mejor respuesta en términos pedagógicos, sin embargo, sí puedo recomendar alguna de las siguientes herramientas diseñadas especialmente para que los niños aprendan a programar, sin las complejidades teórico-prácticas de la programación profesional, con diferentes paradigmas a escoger.
No soy padre, pero si lo fuera creo que la experiencia de enseñarle a tu hijo a programar será la próxima versión de enseñarle a andar en bicicleta. Si tú lo has hecho, por favor cuentanos tu experiencia en los comentarios.
1. Alice
Código abierto. Inglés.
Ambiente de programación creado en Carnegie Mellon University, donde los niños pueden contar historias animadas con bloques 3D: "para la próxima generación de científicos de la programación.
2. Doma de Serpientes para Niños
Código abierto. Inglés y español.
Basado en el famoso "Snake Wrangling for Kids", es un libro electrónico para enseñar programación a niños mayores de 8 años mediante el lenguaje de programación Python, disponible en cualquier sistemas operativo. Éste lenguaje, cabe mencionar, es sencillo, flexible y poderoso: soy un acérrimo fan.
3. Kids with Ruby
Código abierto. Inglés.
Es un software interactivo para aprender programación con el lenguaje Ruby: unos de los más bellos lenguajes, si me permiten decirlo, que podrán encontrar. Como dijo Yukihiro Matsumoto, creador de Ruby, "espero ayudar a que cada programador en el mundo sea productivo, disfrute y sea feliz programando. Este es el principal propósito del lenguaje Ruby".
4. Kodu
Comercial. Inglés.
Con Kodu lo niños pueden crear juegos de manera visual desde la PC y XBox. Fue diseñado para enseñar a programar con tres conceptos eje: creatividad, resolución de problemas y narrativa.
5. LEGO MindStorms NXT
Comercial. Inglés, español.
Son robots programables, ya sea con el NXT Intelligent Brick para programas relativamente sencillos, o con alguno de entre cincuenta lenguajes de programación disponibles.
6. Hackety Hack
Código abierto. Inglés.
Sin experiencia previa en programación, por supuesto, Hackety Hack es un software ya clásico para enseñar a programar con Ruby, una lección a la vez. Creado por el no menos famoso hacker _why, Hackety Hack incluso obedece a un manifesto que en una de sus últimas líneas dice que "es libre y se mantendrá así en adelante".
7. Petit Computer
Comercial. Inglés.
Si sentarse a programar no es opción, tal vez sí lo sea usar un Nintendo 3DS o DSi con Petit Computer, que permite crear programas en BASIC. No es que BASIC sea la mejor opción, sin embargo puede ser atractivo hacerlo desde la consola portátil.
8. Raspberry Pi
Comercial/Código abierto. Inglés.
Este ha sido uno de los mayores éxitos de la comunidad del software y hardware libres en los últimos años. Se trata de una pequeña placa que puede costar entre 25 y 35 dólares, donde cabe Linux, y está diseñado expresamente para la enseñanza de programación básica. Además de ser un gadget fabuloso para un hacker, su portabilidad y precio permiten montar talleres móviles de programación para niños con poco acceso a la tecnología.
9. RoboMind
Gratuito. Inglés.
Tenemos ante nosotros un proyecto similar a LEGO Mindstorms, pero en software: un ambiente de programación básica aplicada a un robot virtual, con la posibilidad de profundizar en temas de robótica e inteligencia artificial. Utiliza su propio lenguaje, ROBO, diseñado con una sintaxis simple.
10. Scratch
Código abierto (salvo algunas partes). Inglés.
Este proyecto ya es un clásico. Comenzó en el MIT en 2006 y hoy en día tiene una comunidad vibrante de usuarios que comparten proyectos y experiencias. Scratch se conforma de un entorno de programación visual orientada a la creación de juegos y animaciones para iniciar a los niños en los bloques básicos de la programación.
Fotografía: mytoenailcameoff











Me parece excelente este artículo, mi hermano tiene 11 años y por fin encuentro una manera de "impulsar" el uso de la lógica con estas herramientas.
Repito, excelente artículo.
Solo para que se pueda actualizar, el software para Mindstorms NXT también está en español :) Los manuales para armar el robot no vienen en ningún idioma para que cualquiera lo pueda armar.
Actualizado!, gracias Memo.
....Donde se ponga un Spectrum con su Basic....
Pues si funciona bienvenido, pero creo que en el ambiente educativo publico demandaria muchos recursos y personal muy calificado para atender algun problema.pero creo que es simple evolucion, lo que hoy nos parece dificultuoso en el mañana sera anecdotico
andres636
Cuando asistia a la secundaria nos enseñaron a programar con visual basic, hicimos varios programitas sencillos pero bien hechos. Tenia unos 12-13 años y era algo interesante.
En la escuela nseñan muxas estupidecs, y hoy en día lo pragmático d verdad es enseñarle a los chavales que pueden crear y construir aquello q se les ocurra. El resto lo aprenderán bajo la necesdad
si te enseñaron a escribir así, deberías demandarlos
Escribiendo así, seguro harás porquerías intentando programar. Jala para otro lado.
Por lo que he visto esto son programas que en cierto modo "programan" por ti, no te enseñan a programar como tal sino que con estos puedes programar sin saber nada en cierto modo, ¿Tengo razon?
no tienes razon
Ojala en las escuelas primarias y secundarias enseñaran programacion e informatica aqui en venezuela. Uno tiene que estar en 4to semestre de cualquier carrera tecnologica universitaria para poder saber que es programacion.
¿Me permitis un poco de publicidad?
Estamos organizando dos jornadas para que los niños puedan iniciarse con la programacion con Scratch. Una en Palencia y otra en Segovia. Serán en Octubre y ya hemos abierto las inscripciones:
http://formacion.funge.uva.es/cursos/i-dia-del-scratch-en-segovia/ https://formacion.funge.uva.es/cursos/i-dia-del-scratch-en-palencia/
Un saludo y gracias Alan por el recopilatorio!
Esta muy bien el articulo, pero veo que pones a Raspberry Pi y te olvidas de Arduino, el cual lleva muchisimo mas tiempo en el mercado y ya tienen miles de desarrollos y aplicaciones en funcionamiento
y... y... y squeak?
Excelente artículo, muy interesante http://www.kalcos.es
Excelente artículo, muy interesante, genial http://www.kalcos.es
me caeria bien un LEGO MindStorms NXT... lastima que no habia en mi epoca de chibolo
me caeria bien un LEGO MindStorms NXT... lastima que no habia en mi epoca de niñez
Scartch no esta en inglés, o más correctamente, puede ser configurado en muchos idiomas entre ellos español.
De todos es mi opción para niños de 8 a 14. Incluso de 6.
Hace tiempo filme un curso de 10 capítulos para enseñar Scratch a niños. Es licencia Creative Commons y puede encontrarse aquí:
http://tejedor1967.blogspot.com.es/2011/05/curso-de-scratch-videos-en-hd.html
Ha sido seguido por mucha gente, mucha de Colombia y el resto de America y lo impartí también de forma presencial dentro del Scratch Day 2011 en Madrid.
Se me olvidó mencionar que para niños más mayores y aprovechando el tirón de los teléfonos android esta el AppInventor anteriormente de Google y ahora del MIT.
http://appinventor.mit.edu/
¡Y que hay del viejo y amado LOGO???? _ / \ ) ( _ .""". _ /
/_\ /\\ "|_> _ <_|" |/\ /\_| /\_-'-/\ //)\_\ "" ""No salió la tortuga en ASCII, ¡qué mala pata! :(
Me gustó mucho este artícula, soy docente y mamá, mi hijo tiene 10 y quiero ayudarlo con su pasión y sueño de programar juegos, me resulta muy valiosa la nformación!