Está en la página 1de 7

Pensamiento Computacional: Qu y Por Qu?

Jeannette M. Wing
17 de noviembre 20101

En mi artculo en el CACM de marzo de 2006 utilic el trmino "pensamiento computacional" para


articular una visin sobre cmo todos no slo a aquellos que se especializan en ciencias de la
computacin pueden beneficiarse de pensar como lo hace un cientfico de la computacin [Wing06].
Entonces, qu es el pensamiento computacional? He aqu una definicin que Jan Cuny de la National
Science Foundation, Larry Snyder de la Universidad de Washington y yo utilizamos; est inspirada en
un intercambio de correo electrnico que tuve con Al Aho de la Universidad de Columbia:
Pensamiento Computacional son los procesos de pensamiento involucrados en la formulacin de
problemas y sus soluciones, de modo que tales soluciones se representen en una forma que pueda
ejecutar eficazmente un agente de procesamiento de informacin [CunySnyderWing10]
Informalmente, el pensamiento computacional describe la actividad mental de formular un problema
para que admita una solucin computacional. La solucin puede llevarla a cabo un ser humano, una
mquina o, de manera ms general, una combinacin de seres humanos y mquinas.
Cuando uso el trmino pensamiento computacional, mi interpretacin de las palabras "problema" y
"solucin" es amplia y, en particular, no me refiero slo a problemas bien definidos matemticamente,
cuyas soluciones son completamente analizables por ejemplo, una prueba, un algoritmo, o un
programa sino tambin a problemas del mundo real cuya solucin pueda estar en la forma de grandes
y complejos sistemas de software. Por lo tanto, el pensamiento computacional se superpone con el
pensamiento lgico y con el pensamiento sistmico: incluye pensamiento algortmico y pensamiento
paralelo, que a su vez participan de otras formas de procesos de pensamiento, como por ejemplo el
razonamiento por composicin, la coincidencia de patrones, el pensamiento procedimiental y el
pensamiento recursivo.
Interpretado de manera amplia, el pensamiento computacional se utiliza en el anlisis y diseo de los
problemas y sus soluciones. El proceso ms importante y de mayor nivel en el pensamiento
computacional es la abstraccin: se utiliza en la definicin de los patrones, la generalizacin a partir de
instancias y la parametrizacin; para que un objeto represente a muchos; y para capturar caractersticas
esenciales comunes a un conjunto de objetos, mientras se ocultan aquellas diferencias irrelevantes entre
ellos. Por ejemplo, un algoritmo es la abstraccin de un proceso que toma ciertas entradas, ejecuta una
secuencia de pasos y produce salidas para satisfacer un objetivo deseado. Un tipo abstracto de datos
define un conjunto abstracto de valores, y operaciones para manipular dichos valores, ocultando al
usuario del mismo la representacin real de los valores. El diseo de algoritmos eficientes
inherentemente involucra el diseo de tipos abstractos de datos. La abstraccin nos da el poder para
escalar y hacer frente a la complejidad.
Aplicar la abstraccin recursivamente nos permite construir sistemas cada vez ms grandes, siendo el

1 Traduccin: Dr. Jos Enrique Alvarez Estrada (jeae@ucaribe.edu.mx).

1
caso base al menos para la computacin tan slo bits (0 y 1). En computacin, de manera rutinaria
construmos sistemas en trminos de capas de abstraccin, lo que nos permite concentrarnos en una
sola capa a la vez y en las relaciones formales (por ejemplo, "usa", "mejora" o "implementa", "simula")
entre capas adyacentes. Cuando escribimos un programa en un lenguaje de alto nivel, no nos
preocupamos por los detalles del hardware subyacente, el sistema operativo, el sistema de archivos o la
red; es ms, confiamos que el compilador sea una implementacin correcta de la semntica del
lenguaje. Como otro ejemplo, la delicada arquitectura de la Internet, con el protocolo TCP/IP en el
centro, ha permitido que proliferen multitud de aplicaciones imprevistas en la capa ms alta, as como
multitud de plataformas de hardware, medios de comunicacin y dispositivos imprevistos en la capa
ms baja.
El pensamiento computacional se basa tanto en el pensamiento matemtico como en el pensamiento
ingenieril. Pero al contrario que en matemticas, nuestros sistemas informticos estn limitados por la
fsica del agente de procesamiento de informacin subyacente y por su entorno operativo. Y por eso
hay que preocuparse por las condiciones del contorno, las fallas, los agentes maliciosos y la
imprevisibilidad de la vida real. Y a diferencia de otras disciplinas de la ingeniera, gracias al software
(nuestra nica "arma secreta"), en informtica podemos construir mundos virtuales que no sufren las
restricciones de la realidad fsica. Por ello en el ciberespacio nuestra creatividad est limitada tan slo
por la imaginacin.

Pensamiento Computacional y Otras Disciplinas


El pensamiento computacional ya ha influido en la agenda de investigacin de todas las disciplinas de
las ciencias y las ingenieras. Desde el inicio hace dcadas en el uso de modelos computacionales y
de simulacin, hasta desembocar hoy en el empleo de la minera de datos y el aprendizaje automtico
para analizar cantidades masivas de datos, la informtica es reconocida como el tercer pilar de la
ciencia, junto con la teora y la experimentacin [PITAC 2005]. La secuenciacin acelerada del genoma
humano a travs del algoritmo de escopeta despert el inters de la comunidad de bilogos en los
mtodos de cmputo, y no slo en los artefactos computacionales (computadoras y redes). El volumen
y la velocidad a la que los cientficos y los ingenieros estn ahora recopilando y produciendo datos a
travs de instrumentos, experimentos, y simulaciones a su vez exige avances en el anlisis,
almacenamiento, recuperacin y visualizacin de datos. El Programa de Descubrimiento e Innovacin
Ciber-Habilitado (CDI, Cyber-enabled Discovery and Innovation program ) de la National Science
Foundation (NSF), con una duracin de cinco aos y un presupuesto asignado de US$100 millones por
ao fiscal, es en pocas palabras "pensamiento computacional para la ciencia y la ingeniera. Cada
direccin y oficina cientficas de la NSF participa en el CDI.
El pensamiento computacional tambin ha comenzado a influir en disciplinas y profesiones ms all de
la ciencia y la ingeniera. Por ejemplo, entre las reas de estudio activo se encuentran la medicina
algortmica, la arqueologa computacional, economa computacional, finanzas computacionales,
computacin y periodismo, legislacin computacional, ciencias sociales computacionales y las
humanidades digitales. El anlisis de datos se utiliza en el entrenamiento de los reclutas del Ejrcito, la
deteccin de spam y de fraudes en tarjetas de crdito, los servicios de recomendacin y reputacin, y
los cupones personalizados del supermercado.
En la Universidad Carnegie Mellon el pensamiento computacional est en todas partes. Tenemos

2
programas de pregrado y grado, as como trayectorias de "Computacin X", donde la X se aplica al
aprendizaje de las matemticas, la biologa, la qumica, el diseo, la economa, las finanzas, la
lingstica, la neurociencia, la mecnica, la fsica y la estadstica. Incluso tenemos un curso de
fotografa computacional. Contamos con programas de Msica Computacional y de Computacin,
Organizaciones y Sociedad. Tenemos programas conjuntos entre ciencias de la computacin y otras
disciplinas: por ejemplo Algoritmos y Optimizacin Combinatoria (computacin, matemticas y
negocios); Ciencias de la Computacin y Artes; Tecnologa de Entretenimiento (computacin y
drama); Interaccin Humano-Computadora (computacin, diseo y psicologa); Tecnologas del
Lenguaje (computacin y lingstica); Lgica y Computacin (computacin y filosofa); Lgica Pura y
Aplicada (computacin, matemticas y filosofa); y Robtica (computacin, ingeniera elctrica e
ingeniera mecnica).

Pensamiento Computacional en la Vida Diaria


El pensamiento computacional se puede aplicar en la vida diaria. El Departamento de Ciencias de la
Facultad de Informtica de Carnegie Mellon me proporcion las siguientes historias:
Canalizacin (pipelining). Randy Bryant, Decano de la Facultad de Ciencias de la Computacin,
estaba pensando cmo acelerar la ceremonia de graduacin de la Escuela Dominical. Dise un flujo
eficiente mediante la adecuada ubicacin de las personas de pie, de modo que cuando Mark Stehlik lee
el nombre de cada graduado, ste puede recibir su diploma, darle un apretn de manos o un abrazo y
tomarse una foto con l. Esta canalizacin permite un flujo constante de estudiantes a travs del
escenario (a menudo los atascos en el flujo ocurran cuando se les caa el birrete a los graduados
mientras le daban el abrazo a Mark.)
Seth Goldstein observ: "En los buffets por qu siempre ponen el aderezo antes que la ensalada? Y la
salsa antes del plato principal? Por qu la cubertera est al inicio? Necesitan un poco de
canalizacin."
Dispersin (hashing). Tras una charla acerca de mi visin del pensamiento computacional en una
reunin de profesores de mi departamento, Danny Sleator se acerc a decirme que en su casa utilizan
una funcin de dispersin particular para almacenar las piezas de Lego. Segn Sleator, ellos usan
dispersin en estas categoras: bloques rectangulares gruesos; otros bloques gruesos (no rectangulares);
bloques delgados (de cualquier forma); ejes, remaches y espaciadores; amarres a ejes, bolas y zcalos;
y varios. Incluso tienen reglas para clasificar piezas que podran encajar en ms de una categora. Dijo
que "a pesar de que este mtodo parece bastante burdo, disminuye en un factor de 10 el tiempo de
bsqueda de una pieza." Avrim Blum escuchaba mientras Danny me platicaba esta historia e intervino
para decir: "En nuestra casa utilizamos una funcin de dispersin diferente".
Ordenacin (sorting). La siguiente historia la tom literalmente de un correo electrnico enviado por
Roger Dannenberg, un trompetista y cientfico de la computacin profesional. "Me integr a una
orquesta, y el director nos distribuy carpetas con unas 200 partituras desordenadas y una lista con
unos 40 ttulos, cuando estbamos a punto de dar un concierto. Todo el mundo empez a buscar a
travs de la pila, sacando las partituras una por una. Decid ordenar alfabticamente las 200 partituras
O (N log (N)) para luego irlas insertando O(M log (N)). Todava estaba ordenndolas mientras los
otros miembros de la orquesta apenas iban a la mitad, y empec a recibir algunas miradas de burla, pero
al final termin en primer lugar. Eso es pensamiento computacional."

3
Beneficios del Pensamiento Computacional
El pensamiento computacional es la nueva alfabetizacin del siglo XXI. Nos permite adaptar la
computacin a nuestras necesidades. Que por qu todo el mundo debe aprender un poco de
pensamiento computacional? Cuny, Snyder y yo defendemos los siguientes beneficios
[CunySnyderWing10]:
El pensamiento computacional para todos significa ser capaz de:
Comprender qu aspectos de un problema son susceptibles de resolverse mediante cmputo
Evaluar qu tan adecuadas son las herramientas y tcnicas computacionales para un problema
Entender las limitaciones y el poder de las herramientas y tcnicas computacionales
Aplicar o adaptar una herramienta o tcnica computacional a un nuevo uso
Reconocer una oportunidad de utilizar el cmputo de nuevas maneras
Aplicar estrategias computacionales como divide y vencers en cualquier dominio
Para cientficos, ingenieros y otros profesionales, el pensamiento computacional significa, adems, ser
capaz de:
Aplicar nuevos mtodos computacionales a los problemas
Reformular problemas, de modo que sean susceptibles de aplicarles estrategias computacionales
Descubrir "ciencia" nueva, a travs del anlisis de grandes volmenes de datos
Formular preguntas nuevas, que no se haban atrevido a considerar o preguntar por su escala, de
forma fcil mediante cmputo
Explicar los problemas y soluciones en trminos computacionales.

Pensamiento Computacional en la Educacin


Las universidades en Estados Unidos y el extranjero estn revisando sus planes de estudio de
licenciatura en ciencias de la computacin. Muchas estn cambiando su primer curso de ciencias de la
computacin para cubrir principios y conceptos fundamentales, no (slo) programacin. Por ejemplo,
en la Carnegie Mellon recientemente hemos revisado nuestros cursos de pregrado de primer ao para
promover el pensamiento computacional entre aquellos que no son especialistas [Link10].
Por otra parte, el inters y la emocin que rodea al pensamiento computacional ha crecido ms all de
la investigacin y la educacin de pregrado. El potencial de propagar el pensamiento computacional
ampliamente en toda la poblacin, ha motivado varios proyectos recientes que esbozar a continuacin.
La mayora se centran en la primaria y la secundaria. Los promotores visitan organizaciones
profesionales, gubernamentales, acadmicas e industriales. El pensamiento computacional tambin se
ha extendido a nivel internacional.
La Asociacin de Universidades, con el apoyo de la NSF, est diseando un nuevo curso de
Orientacin Vocacional Avanzada (AP) que cubre los conceptos fundamentales de computacin y el
pensamiento computacional (http://csprinciples.org). Este ao cinco universidades estn

4
experimentando con versiones de este curso de: la Universidad de Carolina del Norte en Charlotte, la
UC en Berkeley, el Metropolitan Sate College de Denver, la UC en San Diego y la Universidad de
Washington. El plan es extenderlo para que participen ms escuelas, secundarias, colegios comunitarios
y universidades el ao que viene.
La Junta Nacional de Academias de Ciencias de la Computacin y Telecomunicaciones celebr una
serie de talleres titulados Pensamiento Computacional para Todos, enfocados en la identificacin de
los conceptos fundamentales de las ciencias de la computacin que se puedan ensear a los estudiantes
de primaria y secundaria. El primer informe del taller [NRC10] proporciona mltiples perspectivas del
pensamiento computacional.
El 29 de mayo de 2009, en un evento en The Hill patrocinado por ACM, CRA, CSTA, IEEE,
Microsoft, NCWIT, NSF, y SWE, se pidi agregar la "C" (computacin) en el STEM2. La Cmara de
Representantes de los Estados Unidos design a la primera semana de diciembre como la Semana de la
Educacin en Ciencias de la Computacin o CSEdWeek (http://www.csedweek.org/), que patrocinan
ABI, ACM, BHEF, CRA, CSTA, Dot Diva, Google, Globaloria, Intel, Microsoft, NCWIT, NSF, SAS, y
Upsilon Pi Epsilon . El 30 de julio 2010 el congresista del 2 Distrito de Colorado, Jared Polis, present
el Acta para la Educacin en Ciencias de la Computacin (HR5929) para fortalecer la educacin
computacional en primaria y secundaria.
En septiembre de 2010 la NSF arranc el programa Educacin en Computacin para el Siglo XXI
(CE21) dirigido a desarrollar competencias de pensamiento computacional en estudiantes y profesores
de primaria a pregrado. El CE21 se basa en los xitos del programa Rutas para Revitalizar la
Educacin en Computacin de Pregrado CISE (CPATH) de la NSF y del programa de Ampliacin de
la participacin en Computacin (BPC). CE21 hace un nfasis especial en las actividades que apoyan
el proyecto CS10K, una iniciativa puesta en marcha por la NSF a travs de BPC y que tiene como
objetivo catalizar una revisin del plan de estudios de la secundaria, proponiendo un nuevo curso AP
como pieza central, as como preparar a 10,000 profesores para la enseanza de los nuevos cursos en
10,000 escuelas secundarias para el ao 2015.
En agosto de 2010, la Royal Society Britnica anunci que est liderando un proyecto de 18 meses para
revisar "la forma en que se ensea la computacin en las escuelas, con el apoyo de 24 organizaciones
de toda la comunidad informtica, incluyendo las sociedades cientficas, colegios profesionales,
universidades, y la industria" (http://royalsociety.org/Education-Policy/Projects/). Uno de los
participantes es Computacin en la Escuela (CAS), una coalicin dirigida por la Sociedad de la
Computacin Britnica con el patrocinio de Microsoft Research y otros socios de la industria.
Desde 2006, con la ayuda primero de Google y despus de Microsoft, Carnegie Mellon ha celebrado
talleres de verano CS4HS dirigidos a maestros de secundaria, para quitar la percepcin de que hay ms
en la ciencias de la computacin que la programacin de computadoras. El programa CS4HS se
extendi en 2007 a la UCLA y la Universidad de Washington. Para el ao 2010, bajo los auspicios de
Google, CS4HS se extendi a 20 escuelas en los Estados Unidos y 14 en Europa, Oriente Medio y
frica.
Desde 2007, Microsoft Research ha financiado el Centro para el Pensamiento Computational de
Carnegie Mellon: http://www.cs.cmu.edu/~CompThink/. El Centro apoya tanto la investigacin como
2 Acrnimo de Science (ciencia), Technology (tecnologa), Engineering (ingeniera) y Matemticas (matemtica). Vase
http://en.wikipedia.org/wiki/STEM_fields

5
la divulgacin de proyectos educativos.
En octubre de 2010, Google lanz el sitio web Exploracin del Pensamiento Computacional
(http://www.google.com/edu/computational-thinking/index.html), que tiene una gran cantidad de
enlaces a ms recursos web, incluyendo planes de lecciones para maestros de primaria y secundaria en
ciencias y matemticas.
Computer Science Unplugged, http://csunplugged.org/, web creada por Tim Bell, Mike Fellows, y Ian
Witten, ensea computacin sin necesidad de utilizar computadoras. Es especialmente apropiada para
nios de primaria y secundaria. Varias decenas de personas trabajando en muchos pases, incluyendo
Nueva Zelanda, Estados Unidos, Suecia, Australia, China, Corea, Taiwn y Canad, contribuyen a este
sitio web muy popular.
Adems, los paneles y discusiones sobre el pensamiento computacional han sido abundantes en lugares
como SIGCSE y el Consejo Educativo de la ACM. La CRA-E present un libro blanco [CRA-E10] en
la conferencia Snowbird CRA de julio del 2010, que incluye recomendaciones para cursos de
pensamiento computacional. CSTA produce y difunde el Conjunto de Recursos sobre Pensamiento
Computacional: una Herramienta de Solucin de Problemas para cada Saln de Clases
(http://www.csta.acm.org/).

Comentarios Finales
El pensamiento computacional no trata slo acerca de computacin. Los beneficios educativos de ser
capaz de pensar computacionalmente se transfieren a cualquier otro dominio, mejorando y reforzando
las habilidades intelectuales.
Los cientficos en computacin ven el valor de pensar en abstracto, a varios niveles de abstraccin, de
abstraer para manejar la complejidad y para lidiar con la escala, etc. Conocemos el valor de estas
capacidades. Nuestra tarea inmediata es explicar mejor a quienes no son expertos lo que entendemos
por pensamiento computacional, y los beneficios de ser capaz de pensar computacionalmente. Por
favor nanse a m para ayudar a difundir la palabra!

Bibliografa
[CRA-E10] Asociacin de Investigacin en Computacin, Creacin de Ambientes para la Educacin
de Investigadores Computacionales, 9 de agosto de 2010.
http://www.cra.org/uploads/documents/resources/rissues/CRA-E-Researcher-Education.pdf
[CunySnyderWing10] Jan Cuny, Larry Snyder, y Jeannette M. Wing, Desmitificando el Pensamiento
Computacional para No Expertos, trabajo en progreso, 2010.
[NRC10] National Research Council, Informe de un taller sobre el alcance y naturaleza del
Pensamiento Computacional, 2010
http://www8.nationalacademies.org/cp/projectview.aspx?key=48969
[Link10] La perspectiva de un Decano, The Link, septiembre de 2010.
[PITAC05] El presidente del Consejo Asesor de Tecnologa de la Informacin, Ciencias de la

6
Computacin: Garantizar la competitividad de Estados Unidos, Informe al Presidente, junio de 2005.
[Wing06] Jeannette M. Wing, Pensamiento Computacional, Communications of the ACM, el MCCA
vol. 49, no. 3, marzo 2006, pginas 33-35.

Siglas:
ABI: Anita Borg Institute for Women and Technology
ACM: Association for Computing Machinery
BHEF: Business-Higher Education Forum
CISE: Computer and Information Science and Engineering
CRA: Computing Research Association
CRA-E: Computing Research Association-Education
CSTA: Computer Science Teachers Association
CSTB: Computer Science and Telecommunications Board
IEEE: Institute for Electrical and Electronic Engineers
NCWIT: National Center for Women and Information Technology
NSF: National Science Foundation
SIGCSE: ACM Special Interest Group on Computer Science Education
SWE: Society for Women Engineers

También podría gustarte