RAGE: Agile Education Research

XA: Extreme Apprenticeship

At the Department of Computer Science, we have organized several different programming courses and data structure courses using extreme apprenticeship (XA, "tehostettu kisällioppiminen" in Finnish). In addition, XA has been transferred to the Department of Mathematics and Statistics, where it has been used in logic, algebra  and in linear algebra courses (starting 2011 and after). Moreover, visitors from the Freie Universität Bozen-Bolzano in Italy took XA to their home university and have started (Sep 2011) a course on Operating Systems using XA.

XA is not a tool; instead, it is a comprehensive approach to organize education in formal context. Key points of XA are that it emphasizes doing over everything else, questions the utility of lecturing, and focuses on active teacher-student collaboration. To be more specific, there are two core values that are stressed in all course activities: 

  • The craft can only be mastered by actually practicing it, as long as it is necessary. “Thinking” and “planning” (etc.) are also crafts as they should be practised if one hopes to better them.
  • Bi-directional continuous feedback makes the learning process meaningful and effective. It is vastly more efficient if a learner receives even small signals that tell her that she is progressing and into the correct direction. In order to give out those signals to the learner, the advisor must be aware of the successes and challenges of the learner. In other words, the advisor must be aware of the student's activities.

The results of applying XA have been impressive in the context of our university, as the drop-out rate, pass rate and grade distribution have improved beyond our initial hopes. Personal XA-based advising sees to it that every individual student practices with tens of simple exercises already during the first week of the course, enforces active participation, and seeks to disable students' ability to procrastinate until the eve of the exam. Learning achievements become visible to the student and internal motivation goes up.

 

Teaching

Computer Science

  • Introduction to Programming (XA method), Spring 2013
  • Advanced Course in Programming (XA method), Spring 2013
  • Software Factory, Spring 2013
  • Introduction to Programming (XA method), Fall 2012
  • Advanced Course in Programming (XA method), Fall 2012
  • Programming in C (basic XA with a new teacher), Fall 2012
  • Computer as a tool (standard XA), Fall 2012
  • Software Factory, Fall 2012
  • Introduction to Programming  (XA method), Summer 2012
  • Advanced Course in Programming (XA method), Summer 2012
  • Software Factory, Summer 2012
  • Software Engineering, Spring 2012
  • Introduction to Programming (XA method), Spring 2012
  • Advanced Course in Programming (XA method), Spring 2012
  • Data Structures (XA method, Spring 2012)
  • Web Application Development ("version Java") (XA method), Spring 2012
  • Software Factory, Spring 2012
  • Digital Media Techniques (XA with premium-XA sessions and Extreme "Pistari"), Fall 2011
  • Linux Fundamentals (reduced-advising XA), Fall 2011
  • Software modelling, (exercises partially with XA method, XA tailored to work with teacher student ratio 1/30) Fall 2011
  • Introduction to Programming (XA with Test My Code server introduced), Fall 2011
  • Advanced Course in Programming (XA with Test My Code server), Fall 2011
  • Programming in C (basic XA with a new teacher), Fall 2011
  • Computer as a tool (standard XA), Fall 2011
  • Software Factory, Summer 2011
  • Web Application Development (XA conducted solo), Summer 2011
  • Introduction to Programming (XA with alot of volunteer apprentices), Summer 2011
  • Advanced Course in Programming (XA with alot of volunteer apprentices), Summer 2011
  • Software Factory, Spring 2011
  • Introduction to Programming (XA method), Spring 2011
  • Advanced Course in Programming (XA method), Spring 2011
  • Data Structures (major support with XA method, Spring 2011)
  • Clojure Programming (XA method), Spring 2011
  • Introduction to Programming (XA method scaled up), Fall 2010
  • Advanced Course in Programming (XA method scaled up), Fall 2010
  • Software Factory, Fall 2010
  • Introduction to Programming (XA method introduced), Spring 2010 
  • Advanced Course in Programming  (XA method introduced), Spring 2010 

Mathematics and Statistics

  • Introduction to University Mathematics, Fall 2012
  • Linear algebra and matrices I&II (XA with 400 students), Fall 2012
  • Logic I, Spring 2011, 2012
  • Algebra I, Spring 2012
  • Linear algebra and matrices I&II (XA with 400 students), Fall 2011

 Computer Science at Freie Universität Bozen-Bolzano

  • Operating Systems (blended approach to XA), Fall 2011
24.01.2013 - 00:17 Jaakko E Kurhila
08.03.2011 - 15:53 Thomas J Vikberg