⚠️ Nota de Veracidad: Esta malla es un producto derivado (compilación temporal enriquecida) de la secuencia anual modular
SECUENCIA-TEC-C4.md. Los contenidos se organizan a partir del Orientador [[ORI-TEC-C4-02]] de la Guía 30 (MEN, 2008) — Unidad 2 "Programación en Python: Del Bloque al Texto" — adaptados al nivel de desarrollo de adolescentes de 13-14 años (etapa Operaciones Formales I — verbos: analiza, cuestiona, evalúa, contrasta fuentes).⚠️ Criterio de Reparto de Ciclo: Esta malla corresponde al Grado 8° y desarrolla la Unidad 2 completa (programación en Python, semanas 14-25) de la secuencia del Ciclo 4 (Grados 8-9), según el Plan de Estudios de KREADU School. El Grado 9° desarrollará las Unidades 3 y 4.
Malla Curricular — Tecnología e Informática | Grado 8° | Ciclo 4 (8-9) | Periodo 2
Información General
| Campo | Valor |
|---|---|
| Área | Tecnología e Informática |
| Grado | 8° (Octavo) |
| Ciclo EBC | Ciclo 4 (Grados 8–9) — Básica Secundaria |
| Enfoque del ciclo | Evaluación de sistemas tecnológicos, programación textual y prototipado |
| Componente MEN del periodo | Programación en Python: del bloque al texto (U2) |
| Intensidad horaria semanal | 2.0 horas semanales |
| Docente responsable | Docente de Área |
| Año lectivo | 2026 |
| Eje Integrador del grado+periodo | [[EJE-INTEGRADOR-G08-P2]] — "Salón de la Crítica Joven" |
| Nivel de Bloom predominante | ANALIZAR y APLICAR (Bloom niveles 4–3) |
| Etapa de desarrollo | Operaciones Formales I (verbos: analiza, cuestiona, evalúa, contrasta fuentes) |
Propósito de Formación del Área
En el grado 8°, Tecnología e Informática lleva al estudiante de la programación visual por bloques (Scratch, trabajada en el Ciclo 3) a la programación textual en Python. Este salto cognitivo exige mayor precisión sintáctica, capacidad de depuración y comprensión de conceptos abstractos como funciones, listas y manejo de archivos. Desde la Formación Integral 2026, la [[DIM-COGNITIVA]] se ancla en el pensamiento computacional y la depuración sistemática. La [[DIM-COMUNICATIVA-CREATIVA]] se activa al escribir código con convenciones de estilo (PEP 8 básico), comentar funciones y elegir nombres descriptivos: programar es también escribir con estructura y respeto por quien lee.
El periodo se articula con el Eje Integrador "Salón de la Crítica Joven": los estudiantes desarrollan un programa Python funcional que genera el catálogo digital del evento (maquetación, tipografía y publicación responsable), integrando la competencia técnica con el producto compartido del grado.
Articulación Vertical
Viene del Periodo 1 (grado 8°): Los estudiantes trabajaron la Unidad 1 "Convergencia e IoT" (evaluación de sistemas tecnológicos complejos, arquitectura IoT, sensores, ciclo de vida del producto). Llegan con capacidad de evaluar sistemas tecnológicos con criterios técnicos, económicos y ambientales. Consultar: [[SECUENCIA-TEC-C4]] y [[_indice-TEC]].
Proyecta al Periodo 3 (grado 8°): Los estudiantes abordarán la Unidad 3 "Prototipado Físico con Arduino" y la Unidad 4 "Ética Digital y Propiedad Intelectual", integrando la programación Python aprendida aquí con el hardware físico y la reflexión ética. Consultar: [[SECUENCIA-TEC-C4]] y [[EBC-TEC-C4]].
Periodo 2
Unidad 2: "Programación en Python: Del Bloque al Texto"
Eje Integrador
Este periodo se articula con [[EJE-INTEGRADOR-G08-P2]] — "Salón de la Crítica Joven", evento público donde el grado octavo ejerce su voz crítica ante la comunidad escolar. El aporte específico de Tecnología e Informática es el diseño digital del catálogo del Salón (semanas 23-25): los estudiantes programan en Python un sistema que genera el catálogo de obras reseñadas, con maquetación tipográfica, procesamiento de listas de obras y publicación responsable. Las semanas 14-22 desarrollan las competencias de programación; las semanas 23-25 convergen en el producto compartido del Eje.
Unidades Didácticas Articuladas:
- Unidad 2: "Programación en Python: Del Bloque al Texto" — semanas 14 a 25
Dimensiones de Formación Integral (FI-2026):
- Ancla: [[DIM-COGNITIVA]] — La transición de la programación por bloques (Scratch) a la programación textual (Python) es uno de los saltos cognitivos más significativos del bachillerato técnico. Requiere mayor precisión sintáctica, capacidad de depuración textual y comprensión de conceptos abstractos como funciones, módulos y manejo de errores.
- Transversal: [[DIM-COMUNICATIVA-CREATIVA]] — Escribir código en Python es también escritura: tiene estructura, estilo, convenciones de nomenclatura y documentación. Aprender a comentar el código, elegir nombres de variables significativos y estructurar funciones legibles son habilidades de comunicación técnica.
Derechos Básicos de Aprendizaje / Orientadores a trabajar:
- [[ORI-TEC-C4-02]]: Programa soluciones a problemas concretos usando un lenguaje textual introductorio (Python), aplicando variables, estructuras de control, funciones básicas y manejo de archivos; comprende la arquitectura básica de redes y el rol del hardware en el procesamiento.
Planeación y Desglose Semanal de Clases
Semana 14: Del bloque al texto: equivalencias Scratch-Python
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Migración de la programación visual por bloques a la programación textual.
🧠 Aprendizaje (Objetivo Macro): Traducir un programa sencillo de Scratch a Python identificando las equivalencias entre bloques visuales y sintaxis textual (si-sino → if/else, repetir → for, variable → variable), produciendo un primer script funcional de al menos 10 líneas.
📖 Concepto Teórico (Estructuración):
* Scratch usa bloques encajables que representan instrucciones; Python usa texto con sintaxis estricta (indentación, paréntesis, dos puntos).
* Equivalencias directas: si-sino → if/else, repetir N veces → for i in range(N), variable → asignación con =, decir → print().
* Diferencia fundamental: en Scratch el entorno es visual y tolerante; en Python un espacio o un paréntesis mal ubicado genera error de sintaxis.
* La indentación en Python no es estética: es estructural. Define qué bloque de código pertenece a qué estructura de control.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia): "Traducción en Pareja" (25 minutos): el docente proyecta un programa de Scratch hecho en séptimo grado (un quiz sobre historia de Popayán con 3 preguntas). En pareja, los estudiantes lo traducen línea por línea a Python en Thonny, comparando bloque por bloque. Al final, ejecutan el programa y verifican que funcione igual que en Scratch.
✅ Evaluación (Valoración): Ticket de salida: escribir en la bitácora tres diferencias entre programar en Scratch y en Python que descubrieron al traducir el programa.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: De Scratch a Python — introducción (YouTube) * Video: Python para principiantes — primer programa (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: entregar una tabla impresa de equivalencias Scratch-Python con los bloques de un lado y su equivalente textual del otro, para consulta durante la traducción. * Acción y expresión: permitir que la traducción se haga en papel (escribir el código a mano) antes de digitarlo, si el estudiante necesita procesar la sintaxis sin la presión del teclado. * Implicación: el quiz de Popayán se ancla al territorio: las preguntas son sobre el Templo de la Merced, el Puente del Humilladero y la Casa de la Moneda.
Semana 15: Ambiente de desarrollo: Thonny y Replit
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Configuración del entorno de desarrollo y exploración del IDE.
🧠 Aprendizaje (Objetivo Macro): Configurar y explorar el entorno de desarrollo Thonny (o Replit en línea), identificando las zonas del IDE (editor, consola, explorador de archivos) y ejecutando programas de prueba con entrada y salida de datos.
📖 Concepto Teórico (Estructuración):
* IDE (Entorno de Desarrollo Integrado): software que combina editor de código, intérprete y herramientas de depuración en una sola interfaz.
* Thonny: IDE diseñado para principiantes en Python, con resaltado de sintaxis, ejecución paso a paso y consola interactiva integrada.
* Replit: alternativa en línea que no requiere instalación — útil en equipos con limitaciones de software.
* Zonas del IDE: (1) Editor de código (donde se escribe el script), (2) Consola/Shell (donde se ve la salida), (3) Explorador de archivos (donde se gestionan los archivos del proyecto).
* Flujo básico: escribir código → guardar como .py → ejecutar → leer la consola → corregir errores.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Mi Tarjeta de Presentación en Python" (25 minutos): cada estudiante programa un script que imprime en consola una tarjeta de presentación con su nombre, grado, colegio y una frase sobre tecnología, usando print() con saltos de línea (\n) y caracteres decorativos. Luego exploran el modo "step through" de Thonny para ver cómo Python ejecuta línea por línea.
✅ Evaluación (Valoración): Ticket de salida: capturar la salida de consola de su tarjeta de presentación y pegarla en la bitácora, explicando qué hace cada línea del código.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Thonny IDE — tutorial para principiantes (YouTube) * Video: Replit — programar en línea sin instalar nada (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: entregar una guía impresa con capturas de pantalla del IDE y flechas que señalan cada zona (editor, consola, explorador). * Acción y expresión: si Thonny no está disponible, usar Replit en línea; si no hay internet, usar la consola interactiva de Python (modo REPL) directamente. * Implicación: la tarjeta de presentación incluye una frase personal sobre qué significa la tecnología para el estudiante — conexión con la identidad digital.
Semana 16: Tipos de datos en Python: entero, flotante, cadena, booleano
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Tipos de datos fundamentales y conversiones explícitas.
🧠 Aprendizaje (Objetivo Macro):
Identificar y aplicar los cuatro tipos de datos básicos de Python (int, float, str, bool), realizando conversiones explícitas entre ellos y comprendiendo por qué Python distingue entre "5" (cadena) y 5 (entero).
📖 Concepto Teórico (Estructuración):
* int (entero): números sin decimales — edad = 14, grados = 8.
* float (flotante): números con decimales — promedio = 4.2, pi = 3.14159.
* str (cadena): texto entre comillas — nombre = "Popayán", area = "Tecnología".
* bool (booleano): solo dos valores — True o False.
* Conversiones explícitas: int("5") → 5, str(42) → "42", float("3.14") → 3.14, bool(0) → False.
* Error común: intentar sumar un entero con una cadena → TypeError. Python es fuertemente tipado: no convierte implícitamente.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Calculadora de Promedios del Salón" (25 minutos): el docente proporciona una lista de 5 notas ficticias de un estudiante de octavo. Los estudiantes escriben un programa que: (1) almacena las notas como floats, (2) calcula el promedio, (3) imprime el promedio con un mensaje tipo "Tu promedio es 4.2 — Aprobaste". Deben usar conversiones: pedir una nota con input() (que devuelve str) y convertirla a float.
✅ Evaluación (Valoración):
Ticket de salida: escribir un ejemplo de TypeError que podrían cometer al mezclar tipos de datos y explicar por qué ocurre.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Tipos de datos en Python explicados (YouTube) * Video: Conversión de tipos en Python — int, float, str (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: entregar una infografía impresa con los 4 tipos de datos, sus íconos y ejemplos cotidianos (edad=int, precio=float, nombre=str, aprobado=bool). * Acción y expresión: permitir que el programa de calculadora se haga en papel primero (escribir el código a mano) antes de ejecutarlo en el IDE. * Implicación: las notas ficticias son de asignaturas reales del grado 8° (Matemáticas, Español, Sociales, Naturales, Artística).
Semana 17: Operadores aritméticos, relacionales y lógicos
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Operadores para calcular, comparar y combinar condiciones.
🧠 Aprendizaje (Objetivo Macro):
Aplicar operadores aritméticos (+, -, *, /, //, %, **), relacionales (==, !=, >, <, >=, <=) y lógicos (and, or, not) para resolver problemas que requieren cálculos y toma de decisiones.
📖 Concepto Teórico (Estructuración):
* Aritméticos: + suma, - resta, * multiplicación, / división (devuelve float), // división entera, % módulo (residuo), ** potencia.
* Relacionales: comparan dos valores y devuelven True o False — == igualdad, != diferencia, > mayor que, < menor que.
* Lógicos: combinan condiciones — and (ambas verdaderas), or (al menos una verdadera), not (invierte el valor).
* Precedencia: ** → *, /, //, % → +, - → relacionales → not → and → or. Usar paréntesis para mayor claridad.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Retos de Popayán" (25 minutos): tres retos progresivos. (1) Calcular el área del Parque Caldas (120m × 80m) e imprimir el resultado. (2) Determinar si la temperatura actual de Popayán (18°C) está en el rango confortable (15-25°C) usando operadores relacionales y and. (3) Verificar si un estudiante aprobó: nota >= 3.0 and asistencia >= 80%.
✅ Evaluación (Valoración):
Ticket de salida: escribir una expresión Python que determine si un número es par (usando el operador %) y explicar cómo funciona.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Operadores en Python — aritméticos, relacionales, lógicos (YouTube) * Video: Operador módulo en Python explicado (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: entregar una tabla impresa de operadores con símbolo, nombre, ejemplo y resultado (como una "hoja de fórmulas"). * Acción y expresión: los tres retos pueden resolverse en papel o en el IDE; lo importante es la lógica, no la sintaxis perfecta. * Implicación: los retos usan datos reales de Popayán (Parque Caldas, temperatura promedio, notas del colegio).
Semana 18: Estructuras de control: if / elif / else
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Condicionales para tomar decisiones en el programa.
🧠 Aprendizaje (Objetivo Macro):
Estructurar programas con condicionales if, elif y else para que el programa ejecute diferentes bloques de código según se cumplan o no condiciones específicas, aplicando indentación correcta.
📖 Concepto Teórico (Estructuración):
* if: ejecuta un bloque solo si la condición es True.
* elif: evalúa una condición adicional solo si las anteriores fueron False.
* else: ejecuta un bloque si ninguna condición anterior fue True.
* Indentación: en Python, el bloque dentro de un if se identifica por estar indentado (4 espacios). Sin indentación correcta → IndentationError.
* Anidamiento: un if puede contener otro if dentro (condicionales anidados), pero se recomienda no exceder 3 niveles de anidamiento para mantener la legibilidad.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Clasificador de Obras de Arte del Salón" (25 minutos): los estudiantes programan un clasificador que recibe el año de creación de una obra de arte latinoamericano e imprime a qué movimiento pertenece: "Si es antes de 1920 → Arte Académico / Costumbrismo", "Si es entre 1920 y 1950 → Muralismo Mexicano / Indigenismo", "Si es entre 1951 y 1980 → Arte Concreto / Geométrico", "Si es después de 1980 → Arte Contemporáneo". Usan if/elif/elif/else con al menos 4 ramas.
✅ Evaluación (Valoración):
Ticket de salida: escribir un condicional if/elif/else que clasifique la nota de un estudiante en "Superior" (≥4.5), "Alto" (≥4.0), "Básico" (≥3.0) o "Bajo" (<3.0).
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Condicionales if elif else en Python (YouTube) * Video: Errores de indentación en Python (YouTube)
🧩 Ajustes Razonables (DUA):
* Representación: entregar un diagrama de flujo impreso del clasificador de obras antes de programarlo, para que el estudiante visualice la lógica antes de traducirla a código.
* Acción y expresión: permitir que el clasificador se pruebe con valores de ejemplo pre-definidos (no requiere input() del usuario si eso añade complejidad).
* Implicación: las obras clasificadas son del Salón de la Crítica Joven — conexión directa con el producto compartido del Eje.
Semana 19: Ciclo for con range()
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Repetición con número conocido de iteraciones.
🧠 Aprendizaje (Objetivo Macro):
Utilizar el ciclo for con range() para repetir bloques de código un número determinado de veces, generando secuencias de datos y patrones numéricos.
📖 Concepto Teórico (Estructuración):
* for ... in range(N): repite un bloque N veces. for i in range(5) → i toma valores 0, 1, 2, 3, 4.
* range(inicio, fin): genera desde inicio hasta fin-1. range(1, 6) → 1, 2, 3, 4, 5.
* range(inicio, fin, paso): salta de paso en paso. range(0, 10, 2) → 0, 2, 4, 6, 8.
* El ciclo for es ideal cuando se sabe cuántas veces se debe repetir algo. Cuando no se sabe, se usa while.
* Acumulador: variable que se actualiza en cada iteración (ej: sumar notas para calcular promedio).
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Generador de Catálogo de Obras" (25 minutos): los estudiantes programan un script que genera automáticamente las etiquetas de un catálogo de exposición. Usando for y range(), imprimen 10 etiquetas con formato: "Obra #1 — Título: [nombre] — Autor: [artista] — Año: [año]". Los datos los proporcionan en listas simples (introducción anticipada al concepto de lista).
✅ Evaluación (Valoración):
Ticket de salida: escribir un ciclo for que imprima los números del 10 al 1 en orden descendente (usando range(10, 0, -1)).
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Ciclo for en Python con range() (YouTube) * Video: Patrones con for en Python (YouTube)
🧩 Ajustes Razonables (DUA):
* Representación: entregar una tabla impresa con los tres usos de range() (1, 2 y 3 argumentos) con ejemplos de salida para cada uno.
* Acción y expresión: el generador de catálogo puede producir la salida en consola o en un archivo de texto; ambas formas son válidas.
* Implicación: el catálogo generado es el inicio del producto tecnológico para el Salón de la Crítica Joven.
Semana 20: Ciclo while con condición de parada
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Repetición con condición: cuando no se sabe cuántas veces se repite.
🧠 Aprendizaje (Objetivo Macro):
Utilizar el ciclo while para repetir bloques de código mientras se cumpla una condición, identificando el riesgo de bucles infinitos y aplicando estrategias de parada segura.
📖 Concepto Teórico (Estructuración):
* while condición: repite el bloque mientras la condición sea True. Cuando la condición se vuelve False, el ciclo termina.
* Bucle infinito: si la condición nunca cambia a False, el programa se ejecuta para siempre. Solución: asegurar que algo dentro del ciclo modifique la condición.
* Contador: variable que se incrementa en cada iteración para controlar cuántas veces se repite el ciclo.
* Centinela: valor especial que indica el fin de la entrada de datos (ej: "escriba 'salir' para terminar").
* Diferencia con for: usar while cuando no se sabe cuántas iteraciones se necesitan; usar for cuando se conoce el número de iteraciones.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Sistema de Registro de Asistencia del Salón" (25 minutos): los estudiantes programan un sistema que pide nombres de estudiantes con input() uno por uno y los cuenta. El ciclo se detiene cuando el usuario escribe "fin". Al final, imprime: "Se registraron N asistentes para el Salón de la Crítica Joven". Deben incluir un contador y la condición de parada con centinela.
✅ Evaluación (Valoración):
Ticket de salida: explicar con sus propias palabras la diferencia entre for y while, y dar un ejemplo de cuándo usar cada uno.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Ciclo while en Python — tutorial (YouTube) * Video: Bucles infinitos en Python — cómo evitarlos (YouTube)
🧩 Ajustes Razonables (DUA):
* Representación: entregar un diagrama de flujo impreso del ciclo while con el centinela, señalando dónde cambia la condición.
* Acción y expresión: si el estudiante tiene dificultades con input(), permitir que los datos de entrada estén predefinidos en una lista y el while los recorra con un índice.
* Implicación: el sistema de registro es funcional para el Salón de la Crítica Joven — los estudiantes ven la utilidad real de su código.
Semana 21: Funciones: definir con def y parámetros
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Reutilización de código mediante funciones con parámetros y retorno.
🧠 Aprendizaje (Objetivo Macro):
Definir y utilizar funciones propias con def, parámetros y return, comprendiendo la diferencia entre definir una función y llamarla, y reconociendo las ventajas de la reutilización de código.
📖 Concepto Teórico (Estructuración):
* def nombre_funcion(parametros): define una función. El cuerpo va indentado.
* Parámetros: datos de entrada que la función recibe entre paréntesis.
* return: la función devuelve un valor al lugar donde fue llamada.
* Llamar una función: se escribe su nombre seguido de paréntesis con los argumentos: resultado = calcular_promedio(notas).
* Ventajas: (1) No repetir código, (2) hacer el programa más legible, (3) facilitar la depuración (si una función falla, se corrige en un solo lugar).
* Ámbito (scope): las variables creadas dentro de una función solo existen dentro de ella.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Biblioteca de Funciones del Salón" (25 minutos): los estudiantes crean un archivo funciones_salon.py con al menos 4 funciones reutilizables: (1) calcular_promedio(lista_notas) → devuelve el promedio, (2) clasificar_obra(anio) → devuelve el movimiento artístico, (3) generar_etiqueta(titulo, autor, anio) → devuelve un string formateado, (4) determinar_aprobacion(nota) → devuelve "Aprobado" o "Reprobado". Luego importan las funciones en otro script y las usan.
✅ Evaluación (Valoración):
Ticket de salida: escribir la definición de una función saludar(nombre) que imprima "¡Hola, [nombre]! Bienvenido al Salón de la Crítica Joven" y mostrar cómo llamarla.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Funciones en Python con def y return (YouTube) * Video: Parámetros y argumentos en Python (YouTube)
🧩 Ajustes Razonables (DUA):
* Representación: entregar una plantilla impresa de función con los espacios en blanco para completar: def ______(______): \n ______ = ______ \n return ______.
* Acción y expresión: las funciones pueden probarse individualmente en la consola interactiva de Thonny antes de integrarlas en un script.
* Implicación: las funciones resuelven tareas reales del catálogo del Salón (clasificar obras, generar etiquetas, calcular promedios de votación).
Semana 22: Listas: crear, acceder, recorrer
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Almacenamiento y manipulación de colecciones de datos.
🧠 Aprendizaje (Objetivo Macro):
Crear listas en Python, acceder a elementos por índice, recorrerlas con for, y aplicar métodos básicos (append, remove, len) para manipular colecciones de datos.
📖 Concepto Teórico (Estructuración):
* Lista: colección ordenada y mutable de elementos — obras = ["Grito", "Guernica", "Monalisa"].
* Índice: posición del elemento, empezando desde 0 — obras[0] → "Grito".
* Índice negativo: cuenta desde el final — obras[-1] → último elemento.
* Métodos básicos: append(x) agrega al final, remove(x) elimina la primera ocurrencia, len(lista) devuelve la cantidad de elementos.
* Recorrer con for: for obra in obras: itera por cada elemento. También: for i in range(len(obras)): si se necesita el índice.
* Slicing: obras[1:3] → sublista desde el índice 1 hasta el 2 (sin incluir el 3).
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Catálogo Dinámico de Obras" (25 minutos): los estudiantes crean una lista de al menos 6 obras de arte latinoamericano (título, autor, año como tuplas simples o diccionarios básicos). Luego: (1) imprimen el catálogo completo con for, (2) agregan una obra nueva con append(), (3) eliminan una obra con remove(), (4) imprimen la cantidad total con len(), (5) muestran las primeras 3 obras con slicing.
✅ Evaluación (Valoración): Ticket de salida: escribir un código que recorra una lista de notas y cuente cuántas son mayores o iguales a 3.0 (aprobadas).
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Listas en Python — tutorial completo (YouTube) * Video: Recorrer listas con for en Python (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: entregar una lista impresa de obras con los índices visibles (0, 1, 2, 3...) para que el estudiante visualice el acceso por posición. * Acción y expresión: el catálogo puede representarse como lista de strings simples (solo títulos) si las tuplas/diccionarios resultan muy abstractos. * Implicación: las obras del catálogo son las mismas que Artística G08 trabaja para el Salón de la Crítica Joven.
Semana 23: Manejo básico de archivos de texto
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Leer y escribir archivos de texto con Python.
🧠 Aprendizaje (Objetivo Macro):
Abrir, leer, escribir y cerrar archivos de texto con Python, comprendiendo la diferencia entre modos de apertura (r, w, a) y aplicando la estructura with open() para manejo seguro de archivos.
📖 Concepto Teórico (Estructuración):
* open(nombre, modo): abre un archivo. Modos: r (lectura), w (escritura — sobreescribe), a (agregar al final).
* with open(...) as archivo: forma segura de abrir archivos — cierra automáticamente al terminar el bloque.
* Leer: archivo.read() lee todo el contenido; archivo.readlines() devuelve una lista de líneas.
* Escribir: archivo.write("texto\n") escribe una línea.
* Rutas: archivo en la misma carpeta ("catalogo.txt") o con ruta relativa ("datos/catalogo.txt").
* Error común: intentar leer un archivo que no existe → FileNotFoundError. Solución: verificar que el archivo existe o usar try/except (introducción conceptual).
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia):
"Generador de Catálogo en Archivo" (25 minutos): los estudiantes crean un programa que: (1) tiene una lista de obras (de la semana anterior), (2) recorre la lista con for, (3) genera una línea formateada por cada obra usando la función generar_etiqueta() (de la semana 21), (4) escribe todas las líneas en un archivo catalogo_salon.txt. Luego abren el archivo en el editor de texto para verificar el resultado.
✅ Evaluación (Valoración):
Ticket de salida: explicar la diferencia entre abrir un archivo en modo w y en modo a, y qué ocurre si se abre en w un archivo que ya tiene contenido.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Manejo de archivos en Python — open, read, write (YouTube) * Video: With open en Python — manejo seguro de archivos (YouTube)
🧩 Ajustes Razonables (DUA):
* Representación: entregar un diagrama impreso del flujo: lista de obras → función formateadora → escritura en archivo, con flechas que muestren el flujo de datos.
* Acción y expresión: el archivo generado puede ser .txt o .csv (ambos son texto plano); si el estudiante avanza rápido, introducir el formato CSV como puente a hojas de cálculo.
* Implicación: el archivo catalogo_salon.txt es el producto real que se usará en el Salón de la Crítica Joven.
Semana 24: Code review entre pares + diseño del catálogo digital
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Revisión de código entre pares y maquetación del catálogo final.
🧠 Aprendizaje (Objetivo Macro): Practicar la revisión de código entre pares usando una guía estructurada de revisión, y aplicar las funciones y el manejo de archivos aprendidos para generar el catálogo digital final del Salón de la Crítica Joven con maquetación tipográfica básica.
📖 Concepto Teórico (Estructuración):
* Code review: práctica profesional donde otro programador revisa tu código buscando: (1) errores de lógica, (2) nombres poco descriptivos, (3) funciones sin comentarios, (4) código repetido que podría ser una función.
* Guía de revisión estructurada: ¿Los nombres de variables son descriptivos? ¿Hay comentarios en las funciones? ¿El código hace lo que dice que hace? ¿Hay código repetido innecesariamente?
* Maquetación tipográfica en texto plano: usar saltos de línea, separadores (---, ===), sangrías y mayúsculas para dar estructura visual a un archivo de texto.
* Publicación responsable: antes de compartir un archivo digital, verificar que no contenga datos personales sensibles, que la información sea precisa y que el formato sea legible.
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia): "Code Review y Catálogo Final" (40 minutos): (1) Intercambio de código con un compañero (10 min): cada estudiante revisa el programa del compañero usando la guía de revisión y escribe 3 comentarios constructivos. (2) Integración del catálogo final (20 min): los estudiantes ensamblan su versión definitiva del catálogo del Salón, integrando todas las funciones creadas (clasificar, generar etiqueta, escribir archivo). (3) El catálogo debe incluir: portada con título del evento, lista de obras con título/autor/año/movimiento, y pie de página con créditos.
✅ Evaluación (Valoración): Evaluación formativa: (1) Calidad de los comentarios de code review al compañero (específicos, constructivos, con sugerencias). (2) Catálogo digital generado: completeness, maquetación, uso de funciones.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Code review — buenas prácticas para principiantes (YouTube) * Video: PEP 8 — guía de estilo para Python (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: la guía de code review se entrega impresa con casillas de verificación (checklist) para que el estudiante marque cada criterio revisado. * Acción y expresión: el code review puede hacerse oralmente (los compañeros se sientan juntos y discuten el código) si la escritura de comentarios resulta barrera. * Implicación: el catálogo final del Salón se imprime y se exhibe físicamente en el evento — los estudiantes ven su código convertido en un producto real para la comunidad.
Semana 25: Cierre — Proyecto Python final y presentación en el Salón de la Crítica Joven
- Horas sugeridas: 2 horas semanales.
- Tema de la clase: Presentación del proyecto Python final y contribución al Salón de la Crítica Joven.
🧠 Aprendizaje (Objetivo Macro): Presentar públicamente el catálogo digital generado con Python ante la comunidad del Salón de la Crítica Joven, explicando la lógica del programa, las decisiones de diseño y los aprendizajes del periodo.
📖 Concepto Teórico (Estructuración): * Presentación técnica: explicar un programa de computadora ante un público no técnico requiere traducir conceptos (función, variable, ciclo) a lenguaje cotidiano. * Demostración en vivo: ejecutar el programa ante el público, mostrando cómo el catálogo se genera automáticamente a partir de los datos. * Reflexión metacognitiva: ¿Qué aprendí? ¿Qué fue lo más difícil? ¿Qué haría diferente? ¿Cómo se conecta lo que aprendí con otras áreas? * Cierre del Ciclo 4 — Unidad 2: la programación en Python es una herramienta que se articula con todas las áreas: Matemáticas (cálculos), Español (escritura técnica), Artística (catálogo del Salón), Ciencias (simulaciones).
🚀 Espacio Creador / Momento Creador (Práctica y Transferencia): "Salón de la Crítica Joven — Estación Tecnológica" (40 minutos): (1) Montaje del catálogo impreso en la estación de TEC del Salón (5 min). (2) Demostración en vivo del programa Python ante el público: los estudiantes explican cómo el catálogo se genera automáticamente (10 min). (3) Recorrido del público por las demás estaciones del Salón (15 min). (4) Reflexión de cierre del periodo: cada estudiante escribe en su bitácora "3 cosas que aprendí, 2 que me sorprendieron, 1 que quiero seguir explorando" (10 min).
✅ Evaluación (Valoración): Evaluación sumativa del periodo: (1) Programa Python funcional del catálogo (con funciones, listas, manejo de archivos, condicionales y ciclos) — 30%. (2) Code review constructivo al compañero — 15%. (3) Presentación pública del catálogo en el Salón — 20%. (4) Bitácora de las semanas 14-24 — 20%. (5) Autoevaluación escrita del aprendizaje — 15%.
🔗 Enlaces Externos y Caja de Herramientas: * 🖥️ Abrir Presentación de la Clase (HTML) * Video: Cómo presentar un proyecto de programación (YouTube)
🧩 Ajustes Razonables (DUA): * Representación: el catálogo impreso puede tener un código QR que lleve a una versión digital (archivo de texto o video de la demostración). * Acción y expresión: el estudiante que prefiera no presentar en público puede grabar un video de la demostración y reproducirlo en la estación. * Implicación: invitar a un programador/a local de Popayán (desarrollador de software, diseñador web, ingeniero de sistemas) como "revisor invitado" que comente los catálogos desde la perspectiva profesional.
Contexto y Aplicabilidad Real (Comunitaria/Familiar)
Contexto del plantel: KREADU School, Popayán, Cauca. Municipio patrimonio histórico con acceso a laboratorios de informática básicos. Los estudiantes tienen familiaridad con Scratch del Ciclo 3 pero es su primera experiencia con programación textual. El Salón de la Crítica Joven (Eje Integrador G08-P2) provee un escenario real y público donde el catálogo digital generado con Python se exhibe físicamente ante familias y la comunidad. La pertinencia territorial se ancla en que las obras del catálogo son de arte latinoamericano y caucano, y los datos procesados (promedios, asistencia, clasificación) son del contexto escolar real.
Estrategias Didácticas Sugeridas
- Migración Scratch → Python en clase con comparación bloque a bloque.
- Reto de depuración diaria: al inicio de cada sesión, proyectar un fragmento con error intencional.
- Programación en pareja progresiva: primeras 4 semanas en pareja con roles fijos; después individual con consulta entre pares.
- Code review entre pares con guía de revisión estructurada (checklist impreso).
- Proyecto integrador: el catálogo digital del Salón de la Crítica Joven como producto real con público real.
Criterios de Evaluación (Saber / Saber Hacer / Ser)
| Dimensión | Saber | Saber Hacer | Ser |
|---|---|---|---|
| Ancla: [[DIM-COGNITIVA]] | Explica la diferencia entre tipos de datos, describe el flujo de un programa con funciones e identifica los errores más comunes de Python por su mensaje. | Escribe un programa Python funcional de al menos 60 líneas con variables, condicionales, ciclos, funciones y manejo de archivos; depura errores de sintaxis y lógica con autonomía. | Aborda la programación con rigor y paciencia; aprende de los mensajes de error en lugar de frustrarse con ellos. |
| Transversal: [[DIM-COMUNICATIVA-CREATIVA]] | Reconoce las convenciones de nomenclatura y documentación de Python (PEP 8 básico) como estándar de comunicación técnica. | Comenta sus funciones con docstrings básicos, elige nombres de variables descriptivos y estructura su código para que sea legible por un compañero. | Valora el código bien documentado como forma de respeto hacia los colaboradores actuales y futuros del proyecto. |
Conexiones Horizontales
- Educación Artística: El catálogo digital que TEC genera con Python documenta y difunde la mini-exposición curada de arte latinoamericano que ART organiza para el Salón de la Crítica Joven. TEC aporta la automatización de la maquetación tipográfica; ART aporta el contenido curatorial. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Español: Las reseñas argumentadas que Español produce para el Salón son el contenido textual que TEC procesa y formatea en el catálogo digital. La escritura de código con comentarios y docstrings es también escritura técnica que se articula con la competencia expositiva de Español. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Ciencias Sociales: La clasificación de obras por movimiento artístico (Semana 18) conecta con las revoluciones modernas y la independencia de Colombia que Sociales trabaja. Los datos históricos que Sociales investiga alimentan el catálogo. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Ciencias Naturales: El pensamiento computacional que TEC desarrolla (algoritmos, depuración) es el mismo que Naturales aplica al método experimental. Programar simulaciones de fenómenos físicos conecta con los contenidos del Ciclo 4. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Ética y Valores: La autonomía del juicio crítico que Ética construye es paralela a la autonomía del pensamiento computacional: en ambos casos el estudiante aprende a argumentar su postura con evidencias. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Matemáticas: La programación de funciones (promedio, máximo, mínimo) y el trabajo con listas de datos conectan directamente con el pensamiento algebraico y estadístico de Matemáticas G08. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Inglés: Las reseñas críticas en inglés sobre artistas latinoamericanos pueden integrarse al catálogo como versión bilingüe, ampliando el vocabulario descriptivo y técnico. (Eje: [[EJE-INTEGRADOR-G08-P2]])
- Educación Física: El juicio crítico en el deporte (decisiones arbitrales, fair play) es un ejercicio paralelo de construcción de criterios fundamentados, como el juicio tecnológico que TEC desarrolla. (Eje: [[EJE-INTEGRADOR-G08-P2]])
Nota de Inclusión (Decreto 1421/2017)
- Múltiples formas de representación: Thonny con lector de pantalla y tema de alto contraste; guías impresas con capturas de pantalla y diagramas de flujo; videos de referencia con subtítulos.
- Múltiples formas de acción y expresión: el catálogo puede generarse como archivo de texto, CSV o video de demostración; el code review puede hacerse por escrito u oralmente; la presentación pública puede ser en vivo o en video pre-grabado.
- Múltiples formas de implicación: libertad para elegir el tema del proyecto Python final (catálogo del Salón, calculadora de promedios, sistema de asistencia, quiz educativo); conexión permanente con el territorio de Popayán y el Cauca.
Trazabilidad Normativa
- ORI Cubierto: [[ORI-TEC-C4-02]] (programación en lenguaje textual introductorio con variables, estructuras de control, funciones y manejo de archivos).
- Fuente oficial: Guía 30 — Orientaciones generales para la educación en Tecnología (MEN, 2008), componente "Apropiación y uso de la tecnología", Ciclo 4.
- Decreto 1290 (SIEE): Evaluación cualitativa por pilares (Cognitivo, Personal, Social). Instrumentos: programa Python funcional, code review, bitácora de aprendizaje, presentación pública, autoevaluación.
- Decreto 1421 (Inclusión): Diseño Universal para el Aprendizaje (DUA) integrado en cada semana: múltiples formas de representación, acción/expresión e implicación. Ajustes razonables específicos documentados.