Academia.eduAcademia.edu

Outline

The magic of algorithm design and analysis

2014, Proceedings of the 2014 conference on Innovation & technology in computer science education - ITiCSE '14

https://doi.org/10.1145/2591708.2591745

Abstract

We describe our experience using magic card tricks to teach algorithmic skills to first-year Computer Science undergraduates. We illustrate our approach with a detailed discussion on a card trick that is typically presented as a test to the psychic abilities of an audience. We use the trick to discuss concepts like problem decomposition, pre-and post-conditions, and invariants. We discuss pedagogical issues and analyse feedback collected from students. The feedback has been very positive and encouraging.

References (17)

  1. Roland Backhouse. Algorithmic Problem Solving. John Wiley & Sons Ltd., 2010.
  2. Tim Bell, Ian H. Witten, and Mike Fellows. Computer Science Unplugged. 2010. Available at http://csunplugged.org. Last accessed: 17 Mar 2014.
  3. John Biggs and Catherine Tang. Teaching for Quality Learning at University: What the Student does (Society for Research Into Higher Education). Open University Press, 4th edition, 2011.
  4. Paul Curzon and Peter McOwan. Teaching formal methods using magic tricks. In "Fun with formal methods" at the 25th International Conference on Computer Aided Verification (CAV 2013), St Petersburg, Russia, July 2013.
  5. Paul Curzon and Peter W. McOwan. Engaging with computer science through magic shows. In Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE '08, pages 179-183, New York, NY, USA, 2008. ACM.
  6. Nickolas Falkner, Raja Sooriamurthi, and Zbigniew Michalewicz. Puzzle-based learning for engineering and computer science. Computer, 43(4):20-28, 2010.
  7. João F. Ferreira, Alexandra Mendes, Alcino Cunha, Carlos Baquero, Paulo Silva, L.S. Barbosa, and J.N. Oliveira. Logic training through algorithmic problem solving. In Tools for Teaching Logic, volume 6680 of Lecture Notes in Computer Science, pages 62-69. Springer Berlin Heidelberg, 2011.
  8. João F. Ferreira. Principles and Applications of Algorithmic Problem Solving. PhD thesis, School of Computer Science, University of Nottingham, 2010.
  9. Daniel D. Garcia and David Ginat. Demystifying computing with magic. In Proceedings of the 43rd ACM Technical Symposium on Computer Science Education, SIGCSE '12, pages 83-84, New York, NY, USA, 2012. ACM.
  10. Daniel D. Garcia and David Ginat. Demystifying computing with magic, continued. In Proceedings of the 44th ACM Technical Symposium on Computer Science Education, SIGCSE '13, pages 207-208, New York, NY, USA, 2013. ACM.
  11. Gerald Kruse. "Magic numbers" approach to introducing binary number representation in CSO. SIGCSE Bull., 35(3):272-272, 2003.
  12. Anany Levitin and Mary-Angela Papalaskari. Using puzzles in teaching algorithms. SIGCSE Bull., 34(1):292-296, 2002.
  13. P. W. McOwan and P. Curzon. The Magic of Computer Science. 2008. Available from: http://www.cs4fn.org/ magic/downloads/cs4fnmagicbook1.pdf. Last accessed: 17 Mar 2014.
  14. P. W. McOwan, P. Curzon, and J. Black. The Magic of Computer Science II: Now we have your attention. 2009. Available from: http://www.cs4fn.org/magic/ downloads/cs4fnmagicbook2.pdf. Last accessed: 17 Mar 2014.
  15. Z. Michalewicz and M. Michalewicz. Puzzle-based Learning: Introduction to Critical Thinking, Mathematics, and Problem Solving. Hybrid Publishers, 1st edition, 2008.
  16. Paul Ramsden. Learning to Teach in Higher Education. Routledge, 2nd edition, 2003.
  17. Alison Shreeve, Shân Wareing, and Linda Drew. Teaching for Quality Learning at University: What the Student does (Society for Research Into Higher Education), chapter Key aspects of teaching and learning in the visual arts. In [3], 4th edition, 2011.