programación creativa

79
Programación Creativa M-Learning Lab ITCH Enero 2015 Alberto Pacheco [email protected]

Upload: alberto-pacheco

Post on 26-Jul-2015

280 views

Category:

Education


2 download

TRANSCRIPT

ProgramaciónC r e a t i v a

M-Learning Lab ITCH Enero 2015

Alberto [email protected]

ProgramaciónC r e a t i v a

plan

Visual & Game Programming

Creative & Generative Programming

Prototype & Peer Coding

Embedded & Mobile Programming

Real-time & Live Coding

A. ANTECEDENTES

B. BENEFICIOS & RETOS

C. CONTENIDOS & OBJETIVOS

D. DIDÁCTICA: ESTRATEGIAS & INFRA

E. EVIDENCIAS & MONITOREO

aprender a programar

A.ntecedentes 0

Cursos

Lenguajes

Conceptos

Software

Equipo Cómputo

B.eneficios Tarea

10 slides

3 Razones & Beneficios 2 Frases Motivacionales 2 Estadísticas & Tendencias Oportunidades Casos de éxito

C. OBJETIVOAPRENDER A

PROGRAMAR

Demostrar capacidad de

resolver problemas propios

de las Ingenierías

Cerrados

Abiertos

Hardware Software Algoritmos Análisis y Diseño Lenguajes Datos simples

Operadores Estructura Datos Control Flujo Funciones y clases

C. Temas

Pair Programming Visualization Gamification Worked Examples Cognitive Noise ePortafolios Flipped classroom 2-

hour lab Study cases, PBL Bloom Taxonomy eCompetences Learning Styles

D.idáctica

Diverse domains Collaborative Situated learning Diverse & trendy Creative & challenge Pragmatic Engage narratives

Open-ended Learn by doing Platform neutral All trades included Modularized

D.idácticaWorked Examples

UNICO

D.idácticaNúmero de Lenguajes

VARIOS ✓

D.idácticaGeneración del Lenguaje

Antigua ✓ Moderna ✓

D.idáctica & EstrategiasTendencias del Mercado

Indeed Job TrendsJanuary 2015

http://goo.gl/btI5W3

D.idácticaAnálisis Comparativo

D.idácticadel Lenguaje

Confuso Apto para aprender ✓

D.idácticaMetodologías

Cascada Espiral ✓

D.idácticaTipo de Software

Propietario Open ✓

D.idácticaPlataforma

Unica Diversa ✓

Caos

Estructura • Prog. Estructurada

Módulo • Prog. Modular

Clase • Prog. Objetos

NIVELESPARADIGM

AS

DE

PROGRAMACIÓN

PARADIGMAS

DE

PROGRAMACIÓN

D.idácticaTraductores

Interprete ✓ Compilador ✓

Evolución

D.idácticaEvolución

Fortran

C

Perl

Cobol

Algol

BASIC

Pascal

Pioneros Clásicos Modernos

D.idácticaEntornos

iPython NotebooksSwift Playgrounds

Ruido Cognitivo

Ruido Cognitivo

Pythonprint "Hola Mundo!"

Swiftprintln("Hola Mundo!")

C | C++ | Java | JS

if ( edad < 18 ) {printf("Rechazar");

} else if( edad <= 30 ) {printf("Aspirante");

} else {printf("Revisar caso");

}

C | C++ | Java | JS

if ( edad < 15 ){printf("Rechazar");

} else if (edad>=18 && edad<=30){printf("Aspirante");

} else {printf("Revisar caso");

}

Ruby

if edad < 18puts "Rechazar"

elsif edad <= 30puts "Aspirante"

elseputs "Revisar caso"

end

Ruby

if edad < 18puts "Rechazar"

elsif edad in (18..30)puts "Aspirante"

elseputs "Revisar caso"

end

Ruby

if edad < 15puts "Rechazar"

elsif edad in (18..30)puts "Aspirante"

elseputs "Revisar caso"

end

Python

if edad < 18:print "Rechazar"

elif edad <= 30:print "Aspirante"

else:print "Revisar caso"

Python

if edad < 18:print "Rechazar"

elif edad in range(18,31):print "Aspirante"

else:print "Revisar caso"

Python

if edad < 18:print "Rechazar"

elif 18 <= edad <= 30:print "Aspirante"

else:print "Revisar caso"

Python

if edad < 15:print "Rechazar"

elif 18 <= edad <= 30:print "Aspirante"

else:print "Revisar caso"

PHP

switch($edad) {case $edad < 18:

echo("Rechazar"); break;case $edad <= 30:

echo("Aspirante"); break;default:

echo("Revisar caso"); break;}

PHP

switch($edad) {case $edad < 15:

echo("Rechazar"); break;case $edad>=18 AND $edad<=30:

echo("Aspirante"); break;default:

echo("Revisar caso"); break;}

Swift

switch edad {case _ where edad < 18:

println("Rechazar")case _ where edad <= 30:

println("Aspirante")default:

println("Revisar caso")}

Swift

switch edad {case _ where edad < 18:

println("Rechazar")case 18...30:

println("Aspirante")default:

println("Revisar caso")}

Swift

switch edad {case _ where edad < 15:

println("Rechazar")case 18...30:

println("Aspirante")default:

println("Revisar caso")}

Ruido Cognitivo

C/Java (edad>=18 && edad<=30)PHP $edad>=18 AND $edad<=30Python edad in range(18,31)Ruby edad in (18..30)Python 18 <= edad <= 30Swift 18...30

D.idácticaEstilos de Aprendizaje

Visual Processing

Kinestésico Narrativas (animación)

Auditivo – Intel. Musical Sonic PI

D.idácticaEstilos de Aprendizaje

Visual Processing

Kinestésico Narrativas (animación)

Auditivo – Intel. Musical Sonic PI

D.idácticaPlataformas

BASIC C

Perl

PC Web Móvil

D.idácticaPlataformas

BASIC C

Perl

PC Web Móvil

Created by Ben Fry and Casey Reas from MIT

Media Lab in 2001 to teach computer

programming fundamentals within a visual

context.

Free & open source, +100 libraries available for

learning, prototyping & production.

Processing

For GNU/Linux, Mac OS X & Windows.

Well documented, with many books available.

Run Modes: Java, Javascript, Python,

Android, Arduino.

Processing

D.idácticaEstilos de Aprendizaje

Visual Processing

Kinestésico Narrativas

(animación)

Auditivo – Intel. Musical Sonic PI

Encuesta VARK

Kinesthesic

Verbal

Reading

Visual

0 50 100 150 200 250 300

Encuesta VARK (verano 2014)

• Encuesta 33 de 42 alumnos

•39% kinestésico

•24% auditivo

•21% lecto-escritor

•15% visual

Encuesta VARK

Formas discursivas

Dis

curs

o Descriptivo

Argumentativo

Narrativo

Polifu

ncio

nal

Tabla comparativa: formas discursivas

53

FormaDiscursiva

Descriptiva, Argumentativa

DiscursoNarrativo

Información objetiva, cuantitativa subjetiva, cualitativa

Razonamiento lógico, deductivo intuitivo, inductivo

Habilidad cognitiva observación imaginación, persuación

Validación verídico, real verosímil, ficción

Plano racional, científico moral, social, emocional

Peña Timón (2001), Herman (2003), Burgess (2009), Friesen (2009)

PLATAFORMA EPISTEMIOLÓGICA

“La inteligencia narrativa esun artefacto cognitivo,

una competencia dela inteligencia humana”

D. Herman (2003)

El Arte como unaCompetencia Adaptativa

Desde una perspectiva bio-culturalel arte es un comportamiento adaptativo: promueve una mente flexible y hábilpara reconocer patrones.

Zunshine (2006)

55

El Arte como unaCompetencia Adaptativa

La inteligencia narrativa es un juego cognitivo ancestral útil para resolver el problema de interpretar y predecir el comportamiento de los demás

teoría de la mente, niveles interreferenciales, auto-consciencia

Boyd (2010) 56

Podcast Media PlayeriPhone - iOS

http://tiny.cc/mplay3

EpisodiumiOS

http://tiny.cc/mplay5

Marionetas

NARRATIVAS DIGITALES 59

AndySerkis

Marionetas para Aprender?

Para narrar historias…un medio

interesante para el

aprendizaje

Problemática• Alumnos “hiper-activos” en temas abstractos.• Animaciones: proceso laborioso y tardado.• Actuar en frente de una cámara.

Hipótesis #1

Diseño de actividad de aprendizaje abarcando

diversos estilos de aprendizaje

Hipótesis #2

Clima emocional positivo y participativo

Hipótesis #3

El efecto máscarapositivo al representar

personajes usando MDs

Marionetas para Aprender?

Un medio lúdico, artístico y elocuente para explorar y demostrar lo aprendido

Marionetas para Aprender?

Diversas habilidades:• Trabajo en equipo• Investigar• Lluvia de ideas• Actuar• Habilidades comunicativas• Destrezas digitales

El uso de marionetas es un medio elocuente, ludico y flexible para

explorar y demostrar lo aprendido [3, 4]

Marionetas Teotihuacán, 100-600 DCUniversal

Processing + Depth Camera = Motion Capture

Resultados

Clima emocional positivo Abarca diversos estilos de aprendizaje

Videos: http://tiny.cc/videotec

D.idácticaEstilos de Aprendizaje

Visual Processing

Kinestésico Narrativas (animación)

Auditivo – Intel. Musical Sonic PI

Audible Computing Live Coding

Free Download Videos

D.idáctica, Estrategias &E.videncias

E.videncias

E.videncias

E.videncias

E.videnciasEvernote

Publicacioneshttp://tiny.cc/pubRG

http://tiny.cc/acadPUB

http://tiny.cc/videotec

@beto0303

Cursos Abiertos: Khan Academy, Coursera, iTunesU, MIT OCW, edX, Udacity, Udemy, Code.org

Tutoriales: Hello Processing, Flappy Bird, Fun Programming, PythonTutor, Electronics, CodeAcademy

Descargas: Python, iPython, Processing, ProcessingJS, P5*js, Sonic-Pi, Ruby, Java,

Visual Studio Interpretes en línea:

Repl.it, CodingGround, CodeTable, Codepad, OpenProcessing, Sketchpad, OnlineJS, Java, Logo, QuiteBASIC

Visualizadores: Algomation, PythonTutor, Data Struct, VisuAlgo, Sorting, Using Vision to Think

Referencias: Python, Java, Processing, ProcessingJS