¿Cómo es el pensamiento computacional?
La aplicación del pensamiento computacional. El pensamiento computacional es una habilidad básica para todos, no sólo para los informáticos. Deberíamos preparar a cada niño para que domine no sólo la lectura, la escritura y la aritmética (las 3 R), sino también el pensamiento computacional, mientras desarrolla habilidades analíticas. Así como la imprenta y la publicación promovieron la popularización de las 3R, la informática y los ordenadores también promovieron la difusión del pensamiento computacional con una retroalimentación positiva similar.
El pensamiento computacional es el uso de conceptos fundamentales de la informática para resolver problemas, diseñar sistemas y comprender el comportamiento humano. Incluye una serie de actividades de pensamiento que cubren la amplitud de la informática. Cuando tenemos que resolver un problema específico, primero nos preguntamos: ¿Qué tan difícil es resolver este problema? ¿Cuál es la mejor solución? La informática responde con precisión a estas preguntas basándose en una base teórica sólida. Expresar la dificultad de un problema es una capacidad básica de la herramienta, y los factores que deben considerarse incluyen el sistema de instrucción de la máquina, las limitaciones de recursos y el entorno operativo.
Para resolver un problema de manera eficiente, podríamos preguntarnos además si una solución aproximada es suficiente, si se puede utilizar la aleatorización y si se permiten falsos positivos y falsos negativos. El pensamiento computacional consiste en reinterpretar un problema aparentemente difícil en un problema que sabemos cómo resolver mediante reducción, incorporación, transformación, simulación y otros medios.
El pensamiento computacional es un tipo de pensamiento recursivo y procesamiento paralelo. Traduce código en datos y datos en código. Esta es la verificación de tipos mediante análisis dimensional generalizado. Conoce tanto las ventajas de los alias como las desventajas de dar múltiples nombres a personas y cosas. Para los métodos de direccionamiento indirecto y llamada de programa, conoce sus capacidades y costos. Al evaluar un programa, no sólo debemos considerar su precisión y eficiencia, sino también su estética. La simplicidad y la elegancia también deben considerarse en el diseño del sistema.
Abstraer y descomponer para afrontar tareas complejas o diseñar sistemas grandes y complejos. Es separación de preocupaciones (método SOC). Se trata de elegir una manera apropiada de plantear un problema, o de elegir una manera apropiada de modelar aspectos relevantes de un problema para hacerlo manejable. Utiliza invariantes para describir el comportamiento de un sistema de forma concisa y expresiva. Nos permite utilizar, adaptar e influir de forma segura en la información de un sistema grande y complejo sin conocer todos los detalles. Precarga y almacena en caché en anticipación de futuras aplicaciones. El pensamiento computacional es un pensamiento basado en prevenir, proteger y recuperarse de los peores escenarios mediante la redundancia, la tolerancia a errores y la corrección de errores. Llama al bloqueo "punto muerto" y a los contratos "interfaces". El pensamiento computacional consiste en aprender cómo evitar las "condiciones de carrera" (también conocidas como "condiciones de carrera") cuando se produce un encuentro de sincronización.
El pensamiento computacional utiliza el razonamiento heurístico para encontrar soluciones, es decir, planificar, aprender y programar bajo incertidumbre. Simplemente busque, busque, busque de nuevo y el resultado será una serie de páginas web, una estrategia ganadora o un contraejemplo. El pensamiento computacional utiliza cantidades masivas de datos para acelerar los cálculos, haciendo concesiones entre tiempo y espacio, potencia de procesamiento y capacidad de almacenamiento.
Considere los siguientes ejemplos de la vida diaria: su hija va a la escuela por la mañana y guarda las cosas que necesita para el día en su mochila. La mochila está preparada y guardada cuando su hijo pierde sus guantes; le aconsejas que siguiera el camino que había tomado y fue un retroceso; ¿cuándo deberías dejar de alquilar esquís y comprarte uno? Este es un algoritmo en línea; ¿en qué línea debes pararte al pagar en el supermercado? Este es un modelo de rendimiento de un sistema multiservidor; ¿por qué su teléfono sigue funcionando cuando no tiene batería? Es la irrelevancia lo que falla y la redundancia por diseño; ¿cómo distingue la popular prueba de Turing, totalmente automatizada, a las computadoras de los humanos, el CAPTCHA [¿Cómo reconoce un programa a un humano? Se trata de aprovechar la dificultad de resolver problemas de inteligencia artificial para derrotar a los agentes computacionales.
El pensamiento computacional penetrará en la vida de todos. Para entonces, palabras como algoritmos y requisitos previos pasarán a formar parte del lenguaje diario de todos. La comprensión de las palabras "incertidumbre" y "recolección de basura" estará cerca del significado en informática, y el árbol a menudo se dibuja hacia abajo.
Ya estamos siendo testigos del impacto del pensamiento computacional en otras disciplinas. Por ejemplo, el aprendizaje automático ha cambiado las estadísticas.
En términos y dimensiones matemáticas, el aprendizaje estadístico se está utilizando en una variedad de problemas a una escala que habría sido inimaginable hace apenas unos años. Los departamentos de estadística de varias organizaciones emplean informáticos. La Facultad de Ciencias de la Computación (Departamento) se está fusionando con el Departamento de Estadística existente o recientemente creado.
Los científicos informáticos están cada vez más interesados en las ciencias biológicas debido a su creencia de que los biólogos pueden beneficiarse del pensamiento computacional. La contribución de la informática a la biología va más allá de la capacidad de buscar patrones en cantidades masivas de datos de secuencias. La esperanza final es que las estructuras de datos y los algoritmos (nuestras propias abstracciones y métodos computacionales) puedan representar la estructura de una proteína de una manera que refleje su propia función. La biología computacional está cambiando la forma de pensar de los biólogos. Del mismo modo, la teoría de juegos computacionales está cambiando la forma de pensar de los economistas, la nanocomputación está cambiando la forma de pensar de los químicos y la computación cuántica está cambiando la forma de pensar de los físicos.
Este tipo de pensamiento se convertirá en parte del conjunto de habilidades de todos, no sólo de los científicos. La computación omnipresente es hoy lo que el pensamiento computacional será mañana. La computación ubicua es el sueño de ayer convertido en realidad de hoy, y el pensamiento computacional es la realidad de mañana.