Cómo enseñar a programar online

By Yanina Bellini Saibene, Paola Corrales, Mariela Rajngewerc, Nicolás Palopoli, Violeta Roizman para MetaDocencia in Community Education Español R

January 10, 2021

Español - Cómo enseñar a programar online

Objetivos

Introducir técnicas y buenas prácticas para diseñar tus cursos de programación y evaluar a tus estudiantes.

Durante este taller remoto:

  • Mostraremos cómo diseñar tus cursos de programación de una manera eficiente y productiva.

  • Hablaremos de la utilidad de la revisión entre pares y la importancia de recibir feedback. Discutiremos cómo implementar estas prácticas.

  • Presentaremos diferentes tipos de evaluación posibles. Por ejemplo: problemas de Parsons, Fill in the blanks, etc.

  • Haremos un recorrido por las buenas prácticas de programación y las formas de promover su uso entre tus estudiantes.

  • Presentaremos la práctica de Live Coding. Veremos ejemplos prácticos que ayudarán a reconocer detalles a tener en cuenta a la hora de llevarla a cabo.

Durante todo el taller ilustraremos los conceptos presentados usando ejemplos de uso de los lenguajes de programación R y Python.

¿Para quién?

Esperamos que tengas conocimiento de algún lenguaje de programación que enseñes o quieras/necesites enseñar. En particular en este curso nos centramos en los lenguajes R y Python.

Pensamos en Aurora, Patricio y René como personas tipo al diseñar los contenidos de este taller.

  • Aurora es docente universitaria, sin formación formal en programación pero que tiene que enseñar conceptos de programación en sus materias.

  • Patricio programa en Python profesionalmente desde hace quince años. Este año empezará capacitaciones internas para su empresa, sumado a las clases de programación que dicta en un instituto terciario privado.

  • René aprendió hace muchos años un lenguaje que usa día a día en su trabajo haciendo análisis de datos. Muy recientemente tuvo que aprender a usar R para poder empezar a dar clases porque en la institución donde trabaja decidieron que a partir de ese momento iban a usar R como lenguaje de programación en todas las materias.

Qué no incluye este taller

Este taller NO es un curso de programación (es un taller sobre cómo enseñar programación).

Entre otras cosas, quedan fuera del alcance del taller:

  • Entrenamiento en técnicas de programación
  • Desarrollo en profundidad y práctica extensiva de las técnicas mencionadas
  • Contenidos teóricos sobre pedagogía

Duración

El taller tiene una duración de 3 horas con intervalos de aproximadamente 5 minutos cada 50 minutos de contenidos.

Cronograma tentativo

Duración (min) Actividad
5 Tiempo previo para conectarse y asegurarse que anda bien tu conexión de audio y video (si no tienes camarita no importa, pero si la tienes ayuda)
15 Presentación del curso
30 Diseño de cursos
20 Peer review & Feedback
25 Tipos de Evaluación
15 Promueve buenas prácticas de programación
10 Enseña a buscar ayuda
30 Live Coding
10 Cierre del curso: resumen y devolución

Materiales

English - How to teach programming online

Objectives

To introduce techniques and good practices to design your programming courses and evaluate students.

During this online workshop:

  • We will show you how to design your programming courses in an efficient and productive way.

  • We will talk about the utility of peer-review and the importance of feedback. We will discuss how to implement these practices.

  • We will present different types of evaluations. For example, fill-in the blanks, faded examples, etc.

  • We will recap good programming practices and how to promote them among your students.

  • We will present the Live Coding practice. We will see examples that will help you to recognize details to take into account.

During this workshop, we will illustrate the concepts using examples written in R and Python.

Intended public of this course

In order to take this workshop, we expect you to be proficient in some programming language that you teach or that you have/want to teach. In particular, in this course we focus on R and Python.

When we designed this workshop, we had in mind Aurora, Patricio, and René as our learner personas.

  • Aurora is a university professor. She doesn’t have formal training in programming but has to teach programming concepts for her courses.

  • Patricio has been a professional Python developer for 15 years. This year he will start to deliver training courses for his company. Besides, he teaches programming at a private academy.

  • René learned many years ago a programming language that uses everyday for her data analysis job. recently, she had to learn R in order to start teaching courses because all the courses in the institution where she works switched to R.

Not included in this workshop

This is NOT a programming course (this is a course about how to teach programming). Since we only have 3 hours, a lot of things will be out of reach of the workshop. Among other things, we will not learn:

  • Programming techniques
  • Theory of pedagogy

Duration

This is a 3-hour workshop with intervals (ideally away from any screen) of approximately 5 minutes for every 50 minutes of content.

Sample schedule

Duration (min) Activity
5 Time to connect and make sure your audio and video connection is good (if you don’t have a camera it doesn’t matter, but if you do, it helps)
15 Introduction to the course
30 Course design
20 Peer review & Feedback
25 Type of evaluations
15 Promote good programming practices
10 Teach to get help
30 Live Coding
10 End of the workshop: summary and feedback

Course materials

Do you want to re-use any of our contents? Please, be our guest!

Our materials are available for free under this license. You can reuse or edit any material that appears here, the only thing we ask in return is that when you reuse our materials you include a reference to this website.