Test 1

Pay Notebook Creator: Tristan Tham0
Set Container: Numerical CPU with TINY Memory for 10 Minutes 0


Promote effective techniques for lifelong learning.


Pedagogical Techniques for Lifelong Learning Inside and Outside the Classroom


Lifelong learning is especially important in rapidly changing fields like computer science. However, when providing technical instruction, showing participants how to teach themselves is a critical skill that is often overlooked.

Our goal in this workshop is to practice a structure that instills habits for lifelong learning by writing journals, completing small projects and teaching others.

The motivation to learn starts from within, and we believe the best way to personalize that motivation is to have participants keep a journal of their goals and lessons. Next, we will work on designing exercises that build confidence in completing small projects and building useful tools. Finally, we will rehearse techniques for teaching each other.




This workshop is intended for computer science instructors teaching in high school, university or continuing education. Exercises will be in Python using Jupyter Notebook with the open source CrossCompute extensions.



  • Show a specific exercise that participants can do while they are waiting for the class to begin: Ask your neighbor to show you something they know about Python.

Objectives (1 minute)

  1. Practice writing journals.
  2. Practice finishing projects.
  3. Practice teaching others.

Relevance (1 minute)

The ability to teach oneself is a skill that can be taught but is often overlooked in computer science courses.

Direct Instruction: Write Journals (3 minutes)

  • Keeping a journal involves asking and answering your own questions to get what you want.
  • We have prepared templates for running experiments, completing missions and teaching lessons.
  • Open mission to teach your neighbor something they do not know about Python.

Guided Practice: Write Journals (5 minutes)

  • Write what you would like to have done by the end of this session.
  • Interview your neighbor to learn what they want to know about Python.
  • Write your answers.

Direct Instruction: Finish Projects (15 minutes)

  • Finishing a project is an excellent way to practice a skill.
  • Select a tutorial that is interesting to you.

Guided Practice: Finish Projects (15 minutes)

  • Work through the tutorial.

Direct Instruction: Teach Others (5 minutes)

  • Teaching helps you consolidate what you already know.
  • Give three options on what you can teach.
  • Type on your own machine but do not type on your neighbor's machine.

Guided Practice: Teach Others (15 minutes)

  • Teach your neighbor something they do not know.

Independent Practice

  • Find more tutorials that others have written.
  • Write your own tutorial.

Closure (5 minutes)

  • Discuss how you could have taught the other person more effectively.

Assessment (10 minutes)

  • What did you teach your neighbor?
  • How could you have taught your neighbor more effectively?
  • What did you learn that you did not know before?
  • How could you have taught yourself more effectively?
  • What tutorials would you like to see in the future?


20170923-2030 - 20170923-2130: 60 minutes

+ Add vision
+ Add title
+ Add description from SIG CSE 2018 proposal
+ Add presenter
+ Add audience
+ Add checklist
+ Add objectives
+ Add relevance
+ Add direct instruction: write journals
+ Add guided practice: write journals

20170924-0530 - 20170924-0630: 60 minutes

+ Add direct instruction: finish projects
+ Add guided instruction: finish projects
+ Add direct instruction: teach others
+ Add guided instruction: teach others
+ Add independent practice
+ Add closure
+ Add assessment

20170924-0730 - 20170924-0800: 30 minutes

+ Draft mission to teach your friend something they do not know