Material Detail

Computer Science Circles

Computer Science Circles

CS Circles is a free, interactive online course for beginners that teaches Python programming. It offers over 100 exercises across 30 lessons, with special features to assist teachers in supporting their students.

Quality

  • User Rating
  • Comments  (1) Comments
  • Learning Exercises
  • Bookmark Collections
  • Course ePortfolios
  • Accessibility Info

More about this material

Comments

Log in to participate in the discussions or sign up if you are not already a MERLOT member.
Ang Ye
Ang Ye (Student)
51 weeks ago
EVALUACIÓN DE LA CALIDAD DEL RECURSO COMO MATERIAL DE APRENDIZAJE EN LOS ESTUDIOS DE GRADO DE INGENIERÍA INFORMÁTICA DE LA UPM. Description: o Overview: "Computer Science Circle" es un recurso educativo interactivo que enseña fundamentos de programación y ciencias de la computación desde cero. Está dirigido a estudiantes principiantes y educadores, cubriendo temas como algoritmos, lógica de programación y estructuras de datos. o Tema: Introducción a la programación en Python. o Tipos de formato de materiales: - Images/graphics - Quizzes (with immediate feedback?) - Other Interactivity - Links to related material o Type of Material: - Online Course o Technical Requirements: Que tengas un dispositivo donde puedas utilizar el navegador web, además de tener conexión a internet o Learning Goal(s): -Sintaxis básica (variables, operadores, tipos de datos). -Estructuras de control (condicionales if-else, bucles for/while). -Funciones y modularización de código. -Manejo de entrada/salida básica (input/print). -Diseño de algoritmos simples. -Resolución de problemas mediante programación. -Pensamiento computacional (descomposición, patrones, abstracción). -Listas, tuplas y diccionarios. -Operaciones con cadenas de texto (strings). -Conceptos iniciales sobre eficiencia algorítmica. -Depuración de errores (sintaxis y lógica). -Práctica con ejercicios interactivos autocorregibles. -Adaptabilidad a entornos de programación web. -Razonamiento lógico-matemático. -Aprendizaje autodirigido y autonomía. -Capacidad para aplicar conceptos a problemas reales. o Recommended Use(s): Computer Science Circles es un recurso ideal para apoyar la asignatura de Introducción a la Programación, permitiendo a los estudiantes desarrollar competencias básicas en Python mediante ejercicios interactivos que cubren desde sintaxis fundamental hasta estructuras de control y manejo de datos. Los docentes pueden utilizarlo como material complementario para explicar conceptos teóricos, asignar prácticas autodirigidas con retroalimentación inmediata, o implementar evaluaciones formativas a través de sus problemas autocorregibles. Además, sirve como base para nivelar conocimientos en cursos iniciales y preparar a los alumnos para temas más avanzados como algoritmos y estructuras de datos, fomentando tanto el aprendizaje autónomo como el trabajo guiado en modalidades presenciales o virtuales. o Target Student Population: El recurso Computer Science Circles está dirigido principalmente a estudiantes de nivel medio superior (preparatoria/bachillerato) que cursan materias introductorias de informática, así como a universitarios de primeros semestres en carreras relacionadas con computación, ingenierías o tecnologías de la información que necesitan fundamentos de programación. También resulta valioso para adultos autodidactas sin experiencia previa que buscan aprender Python desde cero, y puede ser utilizado como material de apoyo por docentes en sus clases de programación básica, adaptándose tanto a entornos escolares como de educación no formal. o Prerequisite Knowledge: No se requiere ninguna experiencia previa en programación, ya que este recurso esta diseñado para principiantes. Pero, seria recomendable que el estudiante tenga competencias básicas en el uso del ordenador, como manejar un navegador web, escribir con fluidez y comprender instrucciones en inglés. También seria recomendable tener nociones lógicas ya que así facilitaría la comprensión de los conceptos clave. Evaluations and Observations o Quality of Content: • Lista Fortalezas de la calidad del contenido: ✔ Rigor académico Desarrollado por la Universidad de Waterloo (CEMC), institución líder en ciencias de la computación. Contenido técnicamente preciso y libre de errores. ✔ Actualizado y relevante Enseña Python 3 (versión vigente) y conceptos fundamentales atemporales. Cubre lo esencial para cursos introductorios en cualquier plan de estudios moderno. ✔ Enfoque pedagógico efectivo Explicaciones claras y progresivas (de básico a intermedio). Combina teoría con ejercicios interactivos autocorregibles. ✔ Valor educativo transversal Enseña pensamiento algorítmico, base para cualquier área de la programación. Ideal como prerrequisito para temas avanzados (estructuras de datos, algoritmos, POO). ✔ Interactividad integrada Entorno de programación en el navegador (no requiere instalación). Feedback inmediato en ejercicios, facilitando el aprendizaje autónomo. ✔ Accesibilidad y diseño inclusivo Totalmente gratuito y sin publicidad. Compatible con dispositivos móviles y equipos básicos. ✔ Recursos complementarios útiles Incluye ejemplos prácticos y enlaces a documentación oficial de Python cuando es necesario. • Lista Preocupaciones de la calidad del contenido: ✘ Falta de actualización en temas avanzados No cubre características modernas de Python (ej.: type hints, f-strings avanzadas, asyncio). Omite temas relevantes para el desarrollo actual (APIs, POO, manejo de bases de datos). ✘ Limitaciones en interactividad Los ejercicios interactivos son básicos y no permiten proyectos integradores. Carece de herramientas avanzadas como debugger integrado o visualización de algoritmos. ✘ Enfoque teórico-práctico desbalanceado Más orientado a sintaxis que a resolución de problemas complejos. Pocos ejemplos de aplicaciones reales (ej.: análisis de datos, automatización). ✘ Ausencia de evaluación formativa profunda No hay evaluaciones por módulo o retroalimentación personalizada. Limitado a corrección automática de ejercicios (sin explicaciones detalladas de errores). ✘ Recursos complementarios insuficientes No incluye videos, tutoriales paso a paso o foros de discusión. Enlaces externos son mínimos (solo documentación básica de Python). ✘ Adaptabilidad a contextos diversos Diseñado principalmente para el sistema educativo canadiense (puede no alinearse con planes de estudio de otros países). Ejemplos poco culturalmente inclusivos (contextos académicos genéricos). ✘ Falta de soporte para educadores No ofrece guías docentes, rúbricas o planes de lecciones estructuradas. Difícil integrarlo en plataformas LMS (Moodle, Canvas). o Potential Effectiveness as a Teaching/Learning Tool: • Lista Fortalezas: ✔ Enfoque en aprendizaje activo Combina teoría con ejercicios interactivos en tiempo real, lo que facilita la aplicación inmediata de conceptos. Entorno de programación integrado en el navegador, eliminando barreras de instalación. ✔ Progresión pedagógica bien estructurada Organizado en módulos que van de lo simple a lo complejo (variables → funciones → estructuras de datos). Cada concepto se introduce con ejemplos claros antes de pasar a la práctica. ✔ Retroalimentación instantánea Sistema de autocorrección que identifica errores de sintaxis y lógica en los ejercicios. Mensajes de error descriptivos (aunque básicos) que guían al estudiante. ✔ Adaptabilidad a ritmos individuales Permite el aprendizaje autónomo (el estudiante avanza a su propio ritmo). Ideal para reforzar temas específicos donde el alumno tenga dificultades. ✔ Desarrollo de pensamiento computacional Ejercicios diseñados para resolver problemas paso a paso, no solo memorizar sintaxis. Incluye desafíos que fomentan la lógica algorítmica y la creatividad. ✔ Accesibilidad universal Funciona en cualquier dispositivo con navegador (PC, tablet, móvil). Interfaz intuitiva y sin distracciones (sin anuncios ni contenido superfluo). ✔ Integración con planes de estudio formales Puede usarse como material complementario para cursos introductorios de programación. Se alinea con objetivos de aprendizaje estándar (ej.: ACM/IEEE para CS1). ✔ Motivación mediante logros Ejercicios cortos y alcanzables que generan sensación de progreso. Sección de "problemas desafío" para estudiantes que avanzan más rápido. • Lista Preocupaciones: ✘ Limitada personalización del aprendizaje No adapta automáticamente la dificultad según el desempeño del estudiante Falta de rutas alternativas para diferentes estilos de aprendizaje ✘ Retroalimentación insuficiente en ejercicios complejos Mensajes de error genéricos que no siempre guían hacia la solución Carece de explicaciones detalladas cuando el código falla en lógica (no solo sintaxis) ✘ Falta de proyectos integradores Ejercicios aislados que no muestran cómo combinar conceptos en aplicaciones reales No incluye mini-proyectos que simulen desafíos de programación del mundo real ✘ Evaluación formativa limitada No ofrece evaluaciones acumulativas por módulo o unidad Carece de métricas de progreso detalladas para estudiantes y docentes ✘ Poca interacción social/collaborativa No incluye foros o espacios para discusión entre usuarios Falta de opciones para trabajo en parejas/grupos ✘ Motivación a largo plazo Sistema de recompensas/gamificación muy básico No muestra claramente el progreso global del estudiante ✘ Brecha teoría-práctica aplicada Ejemplos demasiado académicos, con poca conexión a casos reales No muestra aplicaciones laborales de los conceptos enseñados ✘ Soporte docente insuficiente No ofrece dashboards para que profesores monitoreen el progreso del grupo Carece de sugerencias para adaptar el contenido a diferentes contextos educativos o Ease of Use: • Lista Fortalezas: ✔ Interfaz intuitiva y limpia Diseño minimalista sin elementos distractores Navegación clara con menús bien organizados Iconografía y colores que facilitan la orientación ✔ Configuración cero No requiere instalación de software adicional Funciona directamente en el navegador web Compatible con los principales navegadores (Chrome, Firefox, Edge, Safari) ✔ Acceso inmediato al contenido No exige registro obligatorio para usar las funciones básicas Carga rápida de lecciones y ejercicios Sin pasos complicados de configuración inicial ✔ Entorno integrado completo Editor de código y consola incorporados en la misma pantalla Botones claros para ejecutar código y reiniciar ejercicios Sintaxis destacada (syntax highlighting) automática ✔ Diseño responsivo Se adapta a diferentes tamaños de pantalla Funciona en dispositivos móviles (aunque con algunas limitaciones) Distribución flexible del espacio para código y consola ✔ Progresión lineal clara Indicadores visuales del avance en las lecciones Mapa de contenidos fácil de entender Secciones bien delimitadas por temas ✔ Ayuda contextual accesible Recordatorios de sintaxis disponibles durante los ejercicios Explicaciones emergentes para conceptos clave Enlaces rápidos a documentación relevante ✔ Sistema de guardado automático Preserva el progreso sin requerir acciones del usuario Recuperación del último estado al volver a la plataforma Indicadores visuales del trabajo guardado • Lista Preocupaciones: ✘ Experiencia móvil limitada Interfaz no optimizada completamente para pantallas pequeñas Teclado virtual dificulta la escritura de código en smartphones Algunos ejercicios requieren zoom constante ✘ Falta de atajos de teclado No soporta shortcuts comunes (ej: Ctrl+Enter para ejecutar) Requiere uso constante del ratón para acciones repetitivas Menos eficiente para usuarios avanzados ✘ Editor de código básico Carece de autocompletado inteligente Sin funciones avanzadas (refactorización, múltiples cursores) Limitado resaltado de errores en tiempo real ✘ Gestión de progreso poco clara No muestra porcentaje completo del curso Dificultad para reencontrar ejercicios anteriores Sistema de guardado no es explícito ✘ Problemas de accesibilidad Contraste de colores no óptimo para usuarios con discapacidad visual Falta soporte para lectores de pantalla Tamaño de fuente no ajustable en todas las secciones ✘ Navegación rígida Obliga a seguir secuencia lineal estricta Dificulta saltar a temas específicos No permite marcar lecciones como completadas manualmente ✘ Feedback visual insuficiente Indicadores de éxito/error poco destacados Sin animaciones o transiciones que guíen al usuario Mensajes del sistema a veces aparecen en áreas poco visibles ✘ Requerimientos técnicos ocultos No advierte sobre necesidad de JavaScript Problemas ocasionales con navegadores antiguos Sin mensajes claros cuando falla la ejecución de código