Cómo desarrollar el pensamiento lógico al aprender a programar

Cómo desarrollar el pensamiento lógico al aprender a programar

Hoy vamos a desvelar las dos herramientas fundamentales que deberías utilizar para desarrollar el tan necesario pensamiento lógico en tu etapa inicial al aprender a programar.

Desde que iniciamos nuestra andadura con esta Escuela de Informáticos (acabamos de cumplir un añito ya!!), sois muchas las personas que me habéis escrito para comentarme el que parece ser un obstáculo común para muchos de vosotros: cómo desarrollar el pensamiento lógico.

Y no os quiero engañar, es cierto que es algo muy necesario para conseguir aprender a programar. De hecho, diría que es imprescindible.

No obstante, no os asustéis porque es algo que cualquier persona puede conseguir; y lo menos que podía hacer yo (después de llevar un año defendiendo la idea de que cualquier persona puede aprender a programar) es explicaros de qué forma puede lograrse muy fácilmente.

Así que, comencemos!

Qué es esto del Pensamiento Lógico

Bueno, pues si recurrimos al origen etimológico de las palabras que dan forma al término “pensamiento lógico”, descubrimos que “pensamiento” proviene del latín: del verbo “pensare” que es sinónimo de “pensar”.

Lógico”, sin embargo, proviene del griego: del vocablo “logos”, que puede traducirse como “razón” (o “lógica”).

Ya sabemos todos que el acto de pensar es aquel que pone en funcionamiento el cerebro humano para permitirle imaginar, conocer, abstraer, analizar o comparar el mundo que nos rodea (…o divagar con nuestras fantasías ;-))

El pensamiento lógico es aquel que se desprende de las relaciones entre los objetos, y proviene de la propia elaboración del individuo. Surge a través de la coordinación de las relaciones que éste previamente ha creado entre los objetos.

Este tipo de pensamiento se empieza a desarrollar en la edad escolar. Antes de ello, los niños sólo poseen pensamientos concretos: sólo son capaces de entender lo que ven. Es por ello que para comprender, por ejemplo, que dos más dos son 4, es necesario mostrarles dos objetos y luego añadir los otros dos ante su atenta mirada.

El pensamiento lógico pone sobretodo en juego la capacidad de abstracción del individuo (Ay, qué importante que es esto para aprender a programar…!).

El pensamiento lógico es indispensable para encontrar soluciones a los problemas cotidianos, y para el avance de la ciencia y la tecnología, pues supone sacar conclusiones del propio análisis. Y cómo no, es también un ingrediente indispensable a la hora de aprender a programar.

¿Y cuál es el problema entonces?

El principal problema del pensamiento lógico, y su desarrollo a la hora de aprender a programar, es que al tratarse de relaciones entre objetos (relaciones que el propio individuo crea en su cerebro), es algo que no puede enseñarse de forma directa.

Es más bien algo que es necesario desarrollar mientras interactuamos y experimentamos con el entorno concreto.

Es por eso que desde la Escuela de Informáticos hemos querido desarrollar un Método, desde el punto de vista pedagógico, en el que siempre ponemos el foco en la importancia de proporcionar experiencias, ejemplos, ejercicios, proyectos… que permitan a nuestros alumnos desarrollar su pensamiento lógico mediante la observación, la exploración, la comparación y la clasificación de los elementos (lo que nos gusta llamar: las “piezas de nuestro juego de construcción”).

¿Y cuál es la mejor manera de conseguirlo?

La mejor manera para conseguir desarrollar el pensamiento lógico, estoy convencido que es tratando de imaginar las cosas (tiene gracia, para desarrollar el pensamiento lógico y analítico necesario para la programación, es necesario tener capacidad de imaginación. Va a ser verdad esto que siempre defendemos de que programar tiene una parte de ciencia y otra de arte…).

Y es que ya lo dijo Albert Einstein: “La imaginación es más importante que el conocimiento.

Albert Einstein Imaginación - pensamiento lógico

¿Y cuál es la mejor forma de imaginar algo? Exacto, ser capaz de visualizarlo.

Las dos herramientas fundamentales para un enfoque visual

Sinceramente, no concibo una mejor manera de visualizar algo (un concepto) que dibujándolo. Estoy convencido de que se trata de una de las mejores maneras de entender las cosas.

En mis cursos me gusta siempre presentar los nuevos conceptos de una forma muy visual, con bocetos, dibujos, animaciones, etc.

Tiene gracia porque cuando algunos alumnos me escriben para decirme que están intentando hacer algo pero que “no consiguen verlo”, siempre les recomiendo lo mismo: “coge un lápiz y un papel e intenta dibujarlo”. Muchos parece que se sientan decepcionados en ese momento, como si sintieran que no les estuviera tomando en serio, o esperasen recibir una respuesta exacta y concisa a modo de oráculo…

Pero es que ya hemos dicho que el pensamiento lógico no es algo que pueda enseñarse; que es necesario desarrollarlo por uno mismo. Y si no eres capaz de “ver algo” (como muchos me decís), quizás tengáis que buscar una manera de imaginarlo y visualizarlo en vuestra mente.

Cuando yo aprendí a programar (hace ya la tira de años… :-(), recuerdo que siempre estaba haciendo dibujos de todo. Y te confieso que a día de hoy, todavía muchas veces lo hago. Recuerda que lo que hacemos al programar es diseñar e implementar soluciones; y como en muchos otros procesos de diseño, suele ser necesario hacer algún que otro boceto…

Dicho esto, vamos al lío!

En tu etapa de aprender a programar, deberás ser capaz de visualizar (lease, dibujar) dos tipos elementos:

  • Las estructuras de datos
  • El flujo de un programa

Todos los programas manejan datos (si no, no tendrían mucha utilidad…). Estos datos pueden ser de diferentes tipos, algunos más simples, otros más complejos, pero internamente se almacenan en algún tipo de estructura de datos.

Pues bien, lo que debemos hacer es ser capaz de dibujar (para poder luego visualizar e imaginar fácilmente) cada una de estas estructuras de datos.

Por ponerte un ejemplo, en nuestros cursos recomendamos a nuestros alumnos representar las variables de tipos de datos simples (números, valores lógicos, etc) como una “cajetita” con una etiqueta, en la que en su interior representaremos el valor almacenado en la variable.

Dibujo de variable - EscuelaDeInformaticos

Del mismo modo, para las listas (un tipo de datos algo más complejo), recomendamos a nuestros alumnos representarlas (y dibujarlas) como una especie de casillero, una secuencia numerada en la que en cada posición se almacenará un valor determinado.

Dibujo de lista - EscuelaDeInformaticos

Este tipo de dibujos (a lápiz y papel) nos permitirán después ir repasando las instrucciones de nuestro programa y entender de una manera muy visual qué datos se están manejando, a qué posiciones se está accediendo, qué cambios se están realizando, etc.

El otro tipo de elemento que deberás ser capaz de dibujar en tu primera etapa al aprender a programar, será el flujo de un programa.

Para ello, existen los denominados Diagramas de Flujo; una excelente herramienta (y brillante por su extrema sencillez) que de una manera muy fácil, nos va a permitir representar cómo se ejecuta nuestro código (es decir, representar el flujo de ejecución de un programa).

Los diagramas de flujo nos muestran como se van ejecutando las instrucciones del programa en función de las comprobaciones que se van haciendo en determinados puntos.

En función de si se cumplen o no estas condiciones, el flujo del programa continuará por un camino u otro.

Son muy útiles y se pueden utilizar para “dibujar” nuestro programa. Es decir, para poder visualizar y comprender mejor, de una manera visual, qué es lo que hará nuestro código.

Para construir este tipo de diagramas, básicamente podemos utilizar estos cuatro elementos (o símbolos). Cómo ves es algo súper sencillo!

Elementos de un diagrama de flujo - EscuelaDeInformaticos

Así que, combinando estos cuatro símbolos, podemos representar el flujo de nuestro programa. Para que veas un ejemplo, aquí tienes la representación (en forma de diagrama de flujo) del algoritmo para cocinar un huevo:

Ejemplo de un diagrama de flujo - EscuelaDeInformaticos

Te dejo aquí también (en clave de humor) otro ejemplo de este tipo de diagramas… ¿Ya sabes cómo consigue dormirse un programador, verdad? 😉

Diagrama de flujo de un informático para conseguir dormirse

Así que ya sabes, ya no tienes excusas para no comenzar a desarrollar tu pensamiento lógico… y mucho menos para aprender a programar!!! 🙂

¿Te ha gustado el artículo? Entonces compártelo con alguien a quien también le pueda gustar.

Opt In Image
¿Te gustaría Aprender a Programar pero no sabes por dónde empezar?
Esto te interesa...

¡Ya está disponible nuestro Curso Online GRATUITO!

4 Comentarios. Leave new

Josué Botella Aguado
24 Noviembre, 2015 10:17 pm

Muy bueno Julio!! Siempre que mejor que una explicación gráfica del tema ayuda a comprender conceptos!

Responder

Hola Josué!
Exacto. Esa es la idea: visualizar la solución para poder imaginarla y hacernos nuestra composición mental. Llegar a esta esta solución puede ser en muchas ocasiones tan sencillo como dibujar alguna aproximación, para que nuestro cerebro sea capaz de hacerse su composición y “buscarle la lógica”.

Cómo se nota que tú ya has tenido que “pelearte” con estas cosas! 😉
Un abrazo!

Julio.-

Responder
juan luis silva
30 Noviembre, 2015 2:27 pm

Interesante julio, lo encuentro positivo.

Responder

Hola Juan Luís!
Celebro que el contenido de este artículo te haya resultado interesante y que lo encuentres de utilidad. Te seguro que es algo mucho más importante de lo que la mayoría de las personas que se inician en esto piensan…
Un saludo!

Julio.-

Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *