Dolores Gallo me envió algunas preguntas sobre la importancia de trabajar la formación en tecnología y enseñar a programar en las escuelas para Revista Nueva, una publicación dominical que se distribuye cada domingo con diez diarios argentinos, y el pasado fin de semana me citó en su artículo titulado «Por una alfabetización digital real» (ver en pdf).
A continuación, el listado completo de preguntas y respuestas que intercambié con Dolores:
P. ¿Creés que todos los niños deberían aprender a programar? ¿Por qué?
R. Creo que todos los niños deberían aprender a programar, del mismo modo que aprenden Física o Matemáticas, no tratando de inculcarles una vocación para que se conviertan en físicos o matemáticos, sino para que aprendan a desenvolverse en un mundo dominado por las reglas de la Física y de la Matemática. Algunos escogerán como objetivo profesional futuro la Física o la Matemática y hasta puede que traten de contribuir al avance de la ciencia en esos campos, pero la amplia mayoría no lo harán, y se limitarán a utilizar determinados conocimientos de Física o de Matemática en su vida cotidiana y profesional. Con la programación, o mejor, con las Ciencias de la Computación, pasa lo mismo: no se trata de intentar que los niños se conviertan en programadores, aunque posiblemente algunos lo hagan y contribuyan al avance de la ciencia en ese ámbito, sino de que sepan manejar las reglas necesarias para vivir en un mundo en el que están cada día más rodeados de objetos programables. Se trata de enseñar a los niños cómo y por qué funciona una computadora, sus reglas básicas, su estructura, cómo comunicarnos con ella, cómo programarla a un cierto nivel, etc., en lugar de centrarnos como hasta ahora en cómo tienen que usar un programa determinado.
P. ¿Es tan importante como para llamarla «la nueva alfabetización»?
R. Es un cambio fundamental y trascendente, que prepara a los niños para un mundo que ya está aquí. No podemos aspirar a tener una sociedad que utiliza máquinas cada vez más complejas en su vida diaria, que las lleva en su bolsillo o sujetas en su propio cuerpo (wearables), pero que no tiene ni idea de cómo actuar sobre ellas más allá de sus funciones básicas, de darle a un botón. Necesitamos una sociedad mucho más hacker, liberando la palabra hacker de sus absurdas connotaciones negativas y entendiéndola como «persona que siente curiosidad ante una puerta cerrada». Tenemos que impulsar el desarrollo de una relación natural con las máquinas, porque forman parte de nuestro día a día y ofrecen muchísimas posibilidades. No se puede plantear que alguien viva de espaldas a ellas, porque la exclusión tecnológica hoy en día es peor que el ostracismo.
P. ¿Qué beneficios tiene saber programar? (para el futuro laboral de los niños pero también en su formación en general y en su vida)
R. Se trata de entender por qué una máquina hace lo que hace, y cómo se consigue que lo haga. Programar es fundamental para el desarrollo de la lógica, pero además, ofrece una gama de posibilidades cada vez mayor que no tienen nada que ver con dedicarse profesionalmente a ello. La continua caída de las barreras de entrada lleva a que los estudiantes de hoy vayan a enfrentarse con máquinas programables de todo tipo en su futuro: tenemos que ampliar la gama de posibilidades que pueden hacer con ellas, no limitarnos a que usen lo que hay y en la manera en la que lo pone en las instrucciones. Dentro de muy poco, nuestros hogares estarán llenos de máquinas que hacen de todo, desde reconocernos cuando entramos hasta gestionar todo tipo de recursos. ¿De verdad vemos normal vivir rodeados de máquinas pero pensar que funcionan, de alguna manera, «por arte de magia»? La persona que dice eso de «yo es que no entiendo nada de tecnología» está confesando una ignorancia que cada día resulta más absurda y más insostenible.
P. ¿Cuándo deberían los niños empezar a programar?
R. Lo antes posible. Hay herramientas que convierten el programar en un juego divertido y que encajan muy bien con las edades tempranas. Hay que aprovechar la flexibilidad de la mente de un niño, que aporta muchísimas ventajas para que convierta en naturales muchos de los esquemas necesarios. Hay una asignatura llamada «conocimiento del medio» que trata de que los niños se integren en el medio que les rodea: pues bien, hoy «el medio» que les rodea está lleno de computadoras, y lo estará cada vez más.
P. ¿Cuál es el panorama en España?
R. Salvo excepciones, desesperante. La mayoría de los colegios entienden una cosa llamada «informática» como poner a los niños delante de una computadora y enseñarles a usar tres herramientas, generalmente creadas por Microsoft, como si con eso fuesen a entender algo mejor. Hoy, nadie necesita realmente «aprender a utilizar» un proceso de textos, una hoja de cálculo o un programa de presentaciones, a eso se aprende con total naturalidad solo, o utilizándolos para hacer otras cosas. Lo que hay que plantear es que los niños aprendan a relacionarse con una máquina, que sepan acceder a su programación, que puedan verla como algo versátil, que la entiendan. En España se sigue aplicando un componente vertical cuando lo que los niños necesitan es un componente horizontal, de integración en todas sus actividades. Una máquina es, por ejemplo, lo que los niños necesitan para acceder a la información, que nunca debería estar en un libro de texto, sino donde vive ya de manera natural: en la red. Pero en lugar de dedicar tiempo y esfuerzo a que los niños aprendan a localizar información, a cualificarla, a verificarla o a separar el grano de la paja, les enseñamos que «el conocimiento es lo que está dentro de un libro», como si eso realmente fuera así o les fuese a aportar algo. Quienes apoyan el libro de texto están apoyando las posibilidades de adoctrinamiento y manipulación que ese formato representa, y dejando de preparar a sus hijos para un futuro en el que lo fundamental es que sepan encontrar en la red la información que necesitan.
P. ¿Y en Europa y EE UU (en términos generales)?
R. El Reino Unido ha considerado las Ciencias de la Computación como la cuarta ciencia junto con la Física, la Química y las Matemáticas, a su mismo nivel, y la ha introducido como una parte fundamental del curriculum en el EBACC, en la educación secundaria. De la importancia que eso tiene de cara a la educación y la competitividad del Reino Unido como país tardaremos seguramente poco en darnos cuenta. En los Estados Unidos, el número de escuelas que incorporan talleres con contenido práctico y que los convierten en un elemento más del proceso educativo está creciendo, como lo hacen los profesores que incorporan internet como una fuente de información básica y fundamental, como la moderna versión de la biblioteca.
P. Por último, qué recursos o herramientas recomendarías para que los niños que no reciben formación en el colegio puedan aprender por su cuenta.
R. Todo está en la red: el conocimiento es abierto, y el hardware lo es cada día más. Herramientas como Scratch, del MIT, acercan la programación a los niveles más básicos, y elementos de hardware abierto como Raspberry Pi o Arduino hacen que un niño pueda manejar un ordenador o una placa programable por pocas decenas de dólares, cuando antes hablábamos de barreras de entrada en precio con algún o algunos ceros más. Para cualquier niño, manejar un Raspberry Pi o enfrentarse a proyectos en Arduino supone poco más que saber buscar información en la red o seguir las instrucciones que aparecen en algunos vídeos de YouTube. Y son elementos que terminarán formando parte del entorno en el que se desarrollan como personas. Crear un programa sencillo, introducirlo en una placa y hacer que esa placa lleve a cabo una serie de acciones puede ser algo tan sencillo como adquirir un kit de veinte o treinta dólares y empezar a seguir lecciones en sitios como Thinkbit u otros, sin mucha más complicación, con páginas claramente explicadas y apoyadas con vídeos. Quien no se pone con ello es porque no quiere, simplemente porque tiene equivocadas sus prioridades.
Cuando yo estudie se consideró que el lenguaje Pascal era el idóneo para aprender pero en el último curso de carrera se apostó por los nuevos paradigmas de moda la programación modular y la orientada a objetos y nos pasaron a Modula2.
En mi modesta opinión el lenguaje con las cualidades didácticas más interesantes es el lenguaje Python. Creo que hay muchos más que pueden servir pero es importante entender que no todo sirve para aprender a programar.
Una cosa está clara. Una vez que sabes programar en un lenguaje de programación ya tienes mucho ganado para aprender a programar en otro lenguaje.
Saber programar te ayuda a comprender las herramientas de cómputo que van a rodearte durante el resto de tu vida y te va a proporcionar una serie de oportunidades para resolver problemas particulares que serían imposible resolver de forma eficiente sin la flexibilidad que te ofrece la programación. Muchas de las cosas que hacemos son automatizables y aunque hay muchas aplicaciones de propósito general es imposible que eso cubra todas tus necesidades futuras.
Yo creo que la calidad de pensamiento de una persona que sabe programar es algo mejor que la no no sabe programar. La programación creo que ayuda a entender la importancia de la lógica porque un ordenador solo hará lo que tu le digas que haga siempre que sigas unas normas precisas. La intransigencia del ordenador con la sintaxis del lenguaje ayuda a entender la importancia de suprimir ambigúedades en la propia forma de razonar. Ayuda a reconocer falacias y otras trampas lógicas del lenguaje y te ayuda a evitar situaciones de autoengaño.
Cuando alguien explica algo a un tercero suele ocurrir que el mismo llega a entender mejor el concepto en cuestión y el ordenador es como sifuera un tonto al que hay que explicarle todo con suma precisión.
La programación es una forma de ejercicio mental muy valioso. Probablemente el ajedrez y un montón de cosas más también sean útiles, pero es que nuestra vida va a estar continuamente rodeada de procesos informáticos y saber entender como funcionan los programas nos permitirá interactuar mejor con ellos.
Cundo programas realizas un esfuerzo de análisis y de síntesis, estructuras los procesos que pretendes utilizar para obtener un resultado (programa), te obligas a pensar en la raíz de aquello que quieres realizar, eso abre los ojos no solo a la tecnología sino al pensamiento analítico y es muy recomendable ese ejercicio, la mente es un músculo más, si no se ejercita se atrofia y la programación es un ejercicio muy recomendable para la mente.
Personalmente me encantaría que mi hijo aprendiese a programar, probablemente yo mismo le enseñe. PERO es un enfoque algo productivista: «Mi hijo es un engranaje y quiero que encaje bien» (exagerando).
Efectivamente vivimos en un mundo donde una parte importante de nuestras vidas están gobernadas por algoritmos.
Pero también estamos gobernados, Y EN MÁS MEDIDA, por ideas y pensamientos, cuya base está en las ciencias políticas o en la filosofía. Y sin embargo no es raro escuchar: ¿Qué sentido tiene estudiar filosofía en la educación secundaria?
Buen blog.
No solo es leer y escribir…..Gracias por el artículo, muy interesante!!!
Hombre asmpredator #002, por fin alguien dice lo único que realmente importa y por lo que se enseña computación en otros países.
Todo eso de que vivimos en un mundo rodeados de ordenadores y debemos saber cómo funcionan y boa, boa, bla, son [soberanas] tonterías, y tienen tanta importancia como lo que se aprende de mecánica en la autoescuela: algo que se se estudia y se luego se olvida tras aprobar el examen.
No, no se estudia computación por eso, se estudia porque es una herramienta importantísima para ordenar los procesos mentales del cerebro, en fin, que asmpredator lo ha definido perfectamente.
Como programador suelo participar en foros especializados, y se me ponen los [pocos] pelos de punta viendo cómo algunos jóvenes presentan una duda: 15 o 20 líneas sin puntos ni comas ni interrogantes ni nada, deslavazado y, en resumen, totalmente incomprensible en cuanto a qué tienen y qué quieren conseguir. Si esos jóvenes no son capaces de ordenar sus ideas y expresarlas de forma comprensible ¿cómo pretenden luego hacer que un ordenador siga un conjunto de reglas estrictas?
{modo humor on}Estrictamente hablando esto no es nuevo, los más viejunos del lugar recordarán aquél programa llamado «Un globo, dos globos, tres globos» y el juego con el monstruo Luis Ricardo (http://es.wikipedia.org/wiki/El_monstruo_de_Sanchezstein) al cual los niños debían dirigir con órdenes precisas para conseguir el objetivo… cosa no tan sencilla como podía parecer.{modo humor off}
Más útil sería saber todos mecánica, y no todo el mundo la sabe, o primeros auxilios, pero habrá niños que no soportan ver sangre… No se pude pedir saber programación a todo el mundo igual que matemáticas.
Enrique, ¿puedes indicarme alguna de las herramientas para que los niños aprendan? Si no se lo enseñan en el colegio podemos intentarlo en casa. Gracias. Por todo.
felipe, aunque no te lo creas es mucho más fácil aprender a programar que aprender matemáticas. El lenguaje es lo de menos – obviamente uno sintácticamente sencillo, claro, como el ya clásico LOGO http://es.wikipedia.org/wiki/Logo_(lenguaje_de_programación) – porque de lo que se trata es de aprender a estructurar el pensamiento, no de que todos acabemos trabajando como desarrolladores de software. Es más, incluso veo la computación como un buen acompañante en el estudio de las matemáticas.
En cuanto a los primeros auxilios, hombre, en niños no, pero en adolescentes no estaría mal.
Y en lo que a mecánica de coches se refiere, tu coche tiene más de 10 años, ¿no? porque hoy en día lo único que le puedes cambiar a un motor es el agua de los limpias. Hoy en día los motores son ante todo electrónica. Si quieres tunear tu motor empieza por conseguir el software adecuado y conecta el ordenador a la centralita. Y para todo lo demás necesitas herramientas tan especiales que se alejan claramente del destornillador multiusos que tenemos en casa… y no, no te recomiendo cambiar el tubo de escape apoyando el coche en cuatro pilas de ladrillos.
En mi bachillerato, hacia los catorce años, estudiábamos (poca) filosofía. Uno de los capítulos hababa de la Lógica y sus reglas, (reducción al absurdo, condicinonales, falacias, etc.) Los antiguos griegos. no lo sabían, usaban la para resolver teoremas, pero en realidad estaban programando, con solo que hubieran añadido algo de Álgebra Boole, (que se da en dos días). Se podría sustituir estos capítulos, con el aprendizaje del Basic o Logo o cualquier otro lenguaje de programación para niños, con los mismos resultados intelectuales, y aseguro que es mucho más entretenido programar la forma de pintar un exágono regular en Logo. que estudiar la Lógica que yo estudiba.
Dicho esto, creo que una cosa es tener nociones de programación, como yo las tuve de Lógica, y que puede ser interesante por lo que dice #002 asmpredator (que yo firmo), pero otra es hacer informáticos. Es como si en vez de aprender mis nociones de Filosofía, me hubieran empeñado en hacerme filósofo.
Hay a muchas personas que por naturaleza, este tipo de estudios le son terriblemente áridos. Igual que hay, quien le divierte resolver Sudokus y quien no le gusta absolutamente nada. Yo no pondría una asignatura de programación obligatoria al nivel que que tienen las matematicas o la física, pero si la pondría como optativa.
Lo que ha visto uno es que en los 80s la chavaleria jugaba con esos ordenadores caros, durisimos porque todavia funcionan esos que iban con MSDOS, al ensamblador, luego vinieron los Windows y lo que se veia era el PHP y similares, y hoy dia si quieres te pones una tienda con Oscommerce sin escribir una linea de nada. Tambien hoy hace un videojuego 3d sin saber ni remota idea de programacion. Osea programa muy muy poca gente, y está en EEUU mas que nada y poco mas. Imaginate que si una fabrica con pocos cientos de operarios en Korea o Japon sacan cientos de millones de pantallas al año de estas que tenemos delante, pues en programacion se necesita menos gente produciendo mas. Hoy no se ve programacion por ningun lado, el que quiera programas consulta al despreciable Softonic y despues se sale para bajarse el programa gratis de Emule y ahi se acaba la historia. Hay gente haciendo programas para que los aviones despeguen y aterricen solos pero son de perfil doctorado en física o similar, recordemos el escaso perfil academico de los Gates o Jobs, la cosa es estar cerca de empresas como IBM o Toshiba, (fue todo el merito de estos dos anteriores), o Google y de España y Europa estan muy lejos, aqui nos empeñamos en dar becas y suvbencionar a talentos para que sirvan a estas y una vez formados y gastado el dinero en educacion esas Macroempresas ( metamultinacionales ya no multinacionales ) se nos lo lleven ( despues de tanto dinero gastado en educacion estatal ) y nos dejen con la fresa y la uva como siempre …. recordemos que el pais con mas ingenieros fue URSS ( hoy Rusia un pais tercermundista, eso dice cualquiera que lo visite)y estos rusos hasta ingenieros nucleares en los 90s todo lo que hacian era contratos de aprendizaje del ladrillo o aprendizaje a vender zapatos en España, y el pasado de URSS es nuestro futuro, colonizado por supermegaempresas del futuro americano y asiatico, asi va a ser la cosa
#007 Jose Manuel
Para enseñar a un niño programación aconsejaba siempre el apredizaje de Logo pues es un lenguaje tecnológicemente muy sencillo (lenguaje que no necesita compilación ) y ademas muy gratificante pues es eminentemente gráfico. Yo hoy en dia dudo , si no es más interesante enseñarles Arduino, pues igualmente tien un Software muy sencillo de utilizar pero este permite realizar artefactos que hagan cosas, como chises domóticos y roboticos, lo cual tien su gancho.
Si los niños m son muy pequeños entre 5 i 12 años, probablemente tendras que hacer tu de moniror, (tambbien a ti te puede resultar muy divertido si tienes genes de progarmador), si el niño tiene mas edad conque le des unos manuales (Bajados de Internet) y lugares como foros donde pueda consultar aprenden solos.
Para Logo necesitas solo un ordenador para Arduino necesitas añadir algo de hardware ,que puede costar en conjunto 50€, que es lo que vale un kit amplio de tarjeta Ardunino Uno, mas sensores y actuadores basicos, luces, pulsadores, zumbadores algun motor eléctrico, pilas etc. (50€ para empezar, lo que gaste después, solo dependerá de lo que se proponga hacer, si desea hacer por ejemplo es una triciotosa robotizada, pues bastante mas, como 600€ http://felixmaocho.wordpress.com/2014/04/21/arudino-una-tricotosa-cnc-para-hacerte-la-ropa-a-medida-en-casa/ ).
#007 Jose Manuel. antes yo siempre aconsejaba a quien quiera enseñar programación a niños utilizar Logo http://felixmaocho.wordpress.com/2008/07/28/programas-gratuitos-utiles-%E2%80%93-progamacion-en-logo/ , pero desde hace algún tiempo me entra la duda de si será mejor enseñarles Arduino http://felixmaocho.wordpress.com/2013/11/23/curso-de-arduino-la-utilidad-de-saber-arduino/
En mi opinión en niños entre 5 y 12 años, tanto con uno, como otro, necesitaran de unadulto como monitor, (si no sabes, aprende con él, empezando tu tres clases antes para poder hacer de monitor con tu hijo. pues si tienes el gen progarmador. tambien te divertirá mucho, aun que es posible que pronto tu hijo te de sopas con honda, (Si no lo tienes gen programador, prueba a ver si los tiene tu mujer, no es ningún gen ligado al sexo).
Ambos medios son muy sencillos y sin complicaciones técnicas, y con el incentivo que el Logo es fundamentalmente gráfico, con lo que tiene el plus de ver que los programas responden en el monitor a lo que tu has mandado hacer, mientras que Ardunino contola hardware, con lo que puedes construir aparatos domóticos y robóticos.
El Logo es mas econónomico solo necesita un PC, Arduino aparte del PC, necesitas de partida un Kit de componentes, fundamentalmente la tarjeta Arduino UNO, diodos, pulsadores, sensores , motores, etc que en una cantidad razonable para empezar vale menos de 50€, (Para empezar, pues si al cabo de un tiempo, quiere construir una Impresora 3D, un control de movimiento de un telescopio casero, o una tricotosa robotizada y el gasto se puede disparar a unos 600 € pero al menos le habrás tenido entretenido un año más o menos. http://felixmaocho.wordpress.com/2014/04/21/arudino-una-tricotosa-cnc-para-hacerte-la-ropa-a-medida-en-casa/
Cuando estudiaba lo hacía porque al final tendría unos ingresos.
De haber sabido lo difícil que es tener un trabajo digno, no hubiera ido a la universidad.
«Cuando los pobres no tengan culo la mierda valdrá dinero» Gabriel Garcia Marquez
Modelo Neoliberal del PPSOE: «Cuando los pobres no tengan carrera, los universitarios tendrán trabajo».
El empresario solo ve el mérito en si mismo. La meritocracia queda en papel mojado si no hay exámenes objetivos.
Quien tiene que estudiar programación son los hijos de papa que heredarán el puesto en la empresa, y no la mayoría que tiene como techo de cristal los puestos intermedios.
Muy interesante
Hola.
Estoy de acuerdo con lo expresado en la entrevista, sin embargo, querría mostrar una de esas excepciones. Soy profesor de informática y, este año, en el colegio, hemos creado un videojuego totalmente desde cero, involucrando a seis cursos de educación secundaria obligatoria y a uno de bachillerato.
Nos ha costado un triunfo pero hemos publicado ya el juego que, afortunadamente, ha tenido buena acogida entre la afición y la prensa.
Le dejo el enlace donde explicamos cómo ha sido el nacimiento y la evolución de todo este enorme y apasionante proyecto que ha requerido del enorme esfuerzo y tesón de los alumnos durante casi cinco meses.
http://www.magarciaguerra.com/2014/02/monsters-are-back/
Espero que le guste.
#013 Pedro Torres
¡Vaya chasco!. Estudiar únicamente por prepararte para trabajar para otro y que no te den trabajo. Que suerte tuve yo, que estudiaba por el afán de saber.
#007 Jose Manuel
Para enseñar a un niño programación aconsejaba siempre el aprendizaje de Logo
Logo apareció en 1967 y no ha triunfado pese a ser de los primeros lenguajes que aparecieron y que en teoría era muy fácil de entender para mentes infantiles (Incluso pueden usarlo los niños de 4 años).
Puede que hacer a los niños alguna demostración a esa edad sea útil, pero a es edad no merece la pena insistir. Yo creo que Logo está tan limitado que termina aburriendo. Los niños se cansan de una estúpida tortuguita que hace cuatro cositas.
Lo cierto es que la edad para iniciarse en la programación es un tema crítico. Yo creo que enseñar programación a un chaval antes de digamos los 9 años resulta algo prematuro pero a eso de los 12 ya son capaces de sacar partido a cosas complejas tipo robótica como LEGO MindStorms.
En cualquier caso, yo creo que enseñar a programar con herramientas de programación visuales o muy orientadas a los niños no es buena idea. Han aparecido muchas de ese tipo y ninguna ha triunfado.
Crep que es mejor elegir un auténtico lenguaje de programación desde el principio, porque existe el riesgo de que cuando abandone la herramienta debido a sus limitaciones, también abandone la programación prejuzgándola como algo muy poco útil.
En ese sentido, yo creo que Python tiene muchas virtudes como lenguaje de programación completo y apto para aprender las bases de la programación.
Creo que el lenguaje Python debería enseñarse en las escuelas a una edad entorno a los 9 años.
Por mucho que os pese, eso que dice Enrique de «aprender a localizar información, a cualificarla, a verificarla o a separar el grano de la paja» lo enseñan las Humanidades, no la programación en tal o cual lenguaje. La programación enseña a pensar en términos comprensibles para la máquina, que es bastante ineficiente a la hora de separar el grano de la paja.
Por otra parte, eso de que «quienes apoyan el libro de texto están apoyando las posibilidades de adoctrinamiento y manipulación que ese formato representa» no hay por donde cogerlo. La manipulación y el adoctrinamiento son independientes del formato, aunque hay que decir que el formato electrónico favorece la manipulación como ningún otro, especialmente si va acompañado de contenidos multimedia.
#018 Julio2
aunque hay que decir que el formato electrónico favorece la manipulación como ningún otro, especialmente si va acompañado de contenidos multimedia.
¿Te basas en algún estudio, o es tu apreciación personal?
En mi apreciación personal, pero también hay estudios.
Cada vez más se esta encaminando la sociedad, y con eso también la educación, hacia el mundo de las nuevas tecnologías. Ahora ya es un hecho que con todas las facilidades que nos da internet, podemos sacar tanta información como queramos de la temática que más te guste. Muchas veces se tiene que contrastar bien, pero no deja de ser una gran fuente de conocimiento que cada vez se expandirá más.
Alqvimista, soy ingeniero técnico en informática de gestión desde el 93, anteriormente estudié bup y luego fp II también en la rama de informática de gestión, y ejerzo desde el 93 y antes estuve de becario, que no considero ejercer, me encanta la programación y el mundo linux, pero sigo sin ver la necesidad de que todos los niños sepan programación.
Muy buen artículo. Un tema muy interesante y en el que estoy totalmente de acuerdo con Enrique. Saber programar es fundamental
Saludos
Hola Enrique, gracias por compartir el artículo! saludos, dolores