Skip to main content Accessibility help
×
Hostname: page-component-8448b6f56d-mp689 Total loading time: 0 Render date: 2024-04-23T05:42:03.769Z Has data issue: false hasContentIssue false

20 - New Programming Paradigms

from New Milieux

Published online by Cambridge University Press:  15 February 2019

Sally A. Fincher
Affiliation:
University of Kent, Canterbury
Anthony V. Robins
Affiliation:
University of Otago, New Zealand
Get access

Summary

This chapter examines how changes in prevailing programming paradigms necessitate a fundamental reexamination of what we teach novice programmers and how we go about teaching them. Classical approaches to computation were linear, deterministic, explicitly human-constructed, and local; these properties were well-matched to computing education that emphasized skills like creating algorithms and data structures, and reasoning about sequential execution. However, already widespread or emerging computing paradigms such as machine learning, distributed systems, and quantum computing indicate a need to shift computing education away from the traditional epistemology of computing in computing education. Furthermore, the ubiquity of computing applications in daily life motivates a growth in the curriculum beyond a focus on learning specific skills and facts decoupled from real world applications, towards a utilitarian approach that has students learn computing through the process of building personally meaningful computing artifacts. We exemplify this shift through examples of how these new paradigms can fit within current educational settings.
Type
Chapter
Information
Publisher: Cambridge University Press
Print publication year: 2019

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Aaronson, S. (2002). Quantum Computing for High School Students. Retrieved from www.scottaaronson.com/writings/highschool.htmlGoogle Scholar
Abelson, H., Sussman, G. J., & Sussman, J. (1996). Structure and Interpretation of Computer Programs. Cambridge, MA: MIT Press.Google Scholar
ACM/IEEE–CS Joint Task Force on Computing Curricula (2013). Computer Science Curricula 2013. USA: ACM Press and IEEE Computer Society Press.Google Scholar
Aho, A. V. (2011). Ubiquity symposium: Computation and computational thinking. Ubiquity, January 2011, Article 1 (8 pages). New York, NY: ACM.Google Scholar
Aho, A. V. (2012). Computation and computational thinking. The Computer Journal, 55(7), 832835.CrossRefGoogle Scholar
Arlot, S., & Celisse, A. (2010). A survey of cross-validation procedures for model selection. Statistics Surveys, 4, 4079.Google Scholar
Buechley, L., Peppler, K., Eisenberg, M., & Yasmin, K. (Eds.) (2013). Textile messages: Dispatches from the world of e-textiles and education. In New York: Peter Lang Publishing Group.CrossRefGoogle Scholar
Brennan, K., & Resnick, M. (2013). Imagining, creating, playing, sharing, reflecting: How online community supports young people as designers of interactive media. In C. Mouza & N. Lavigne (Eds.), Emerging Technologies for the Classroom (pp. 253268). New York: Springer.Google Scholar
Brewer, E. A. (2000). Towards robust distributed systems (abstract). In Proceedings of the 19th Annual ACM Symposium on Principles of Distributed Computing (PODC ‘00) (p. 7). New York, NY: ACM.Google Scholar
Carrington, P. J., Scott, J., & Wasserman, S. (Eds.) (2005). Models and Methods in Social Network Analysis. Cambridge: Cambridge University Press.Google Scholar
Chong, F. T., Franklin, D., & Martonosi, M. (2017). Programming languages and compiler design for realistic quantum hardware. Nature, 549, 180187.Google Scholar
Computer Science Teachers Association (2017). K–12 Computer Science Standards. Retrieved from www.csteachers.org/page/standardsGoogle Scholar
Computing at School Working Group (2012). Computer science: A curriculum for schools. sCurric.pdfGoogle Scholar
Cormen, T. H., Leiserson, C., Rivest, R., & Stein, C. (2009). Introduction to Algorithms. Cambridge, MA: MIT press.Google Scholar
Dasgupta, S. (2013). From surveys to collaborative art: Enabling children to program with online data. In Proceedings of the 12th International Conference on Interaction Design and Children (pp. 2835). New York: ACM.Google Scholar
Denning, P. J. (2017). Remaining trouble spots with computational thinking. Communications of the ACM, 60(6), 3339.Google Scholar
Denning, P. J. (1989). A debate on teaching computing science. Communications of the ACM, 32(12), 13971414.CrossRefGoogle Scholar
diSessa, A. A., & Abelson, H. (1986). Boxer: A reconstructible computational medium. Communications of the ACM, 29(9), 859868.Google Scholar
Fails, J. A., & OlsenJr., D. R. (2003). Interactive machine learning. In Proceedings of the 8th International Conference on Intelligent User Interfaces (pp. 3945). New York: ACM.Google Scholar
Felleisen, M., Findler, R. B., Flatt, M., & Krishnamurthi, S. (2014). How to Design Programs, Second Edition. Retrieved from www.ccs.neu.edu/home/matthias/HtDP2e/Google Scholar
Felleisen, M., Findler, R. B., Flatt, M., & Krishnamurthi, S. (2009). A functional I/O system or, fun for freshman kids. ACM SIGPLAN Notices, 44(9), 4758.Google Scholar
Feynman, R. P. (1982). Simulating physics with computers. International Journal of Theoretical Physics, 21(6), 467488.CrossRefGoogle Scholar
Feynman, R. P. (1986). Quantum mechanical computers. Foundations of Physics, 16(6), 507531.Google Scholar
Fiebrink, R., Trueman, D., & Cook, P. R. (2009). A meta-instrument for interactive, on-the-fly machine learning. In Proceedings of NIME 2009 (pp. 280285). International: NIME.Google Scholar
Fiebrink, R., Cook, P. R., & Trueman, D. (2011). Human model evaluation in interactive supervised learning. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (pp. 147156). New York: ACM.Google Scholar
Fischer, M. J., Lynch, N. A., & Paterson, M. S. (1985). Impossibility of distributed consensus with one faulty process. Journal of the ACM, 32(2), 374382.Google Scholar
Flegg, J., Mallet, D., & Lupton, M. (2012). Students’ perceptions of the relevance of mathematics in engineering. International Journal of Mathematical Education in Science and Technology, 43(6), 717732.Google Scholar
Gilbert, S. & Lynch, N. (2002). Brewer’s conjecture and the feasibility of consistent, available, partition-tolerant web services. ACM SIGACT News, 33(2), 5159.Google Scholar
Gruber, H., Holzer, M., & Ruepp, O. (2007). Sorting the slow way: An analysis of perversely awful randomized sorting algorithms. In International Conference on Fun with Algorithms (pp. 183197). Berlin, Germany: Springer.Google Scholar
Harrow, A. W., & Montanaro, A. (2017). Quantum computational supremacy. Nature, 549, 203209.Google Scholar
Hoare, C. A. R. (1978). Communicating sequential processes. In P. B. Hansen (Ed.), The Origin of Concurrent Programming (pp. 413443). New York: Springer.Google Scholar
K–12 Computer Science Framework (2016). K–12 Computer Science Framework. Retrieved from https://k12cs.orgGoogle Scholar
Kay, A. (1993). The early history of smalltalk. ACM SIGPLAN Notices, 28(3), 511598.Google Scholar
Kelly, A., Finch, L., Bolles, M. & Shapiro, R. B. (in press). BlockyTalky: New programmable tools to enable students’ learning networks. International Journal of Child-Computer Interaction. https://doi.org/10.1016/j.ijcci.2018.03.004Google Scholar
Kleppmann, M. (2015). A Critique of the CAP Theorem. Computing Research Repository. Retrieved from https://arxiv.org/pdf/1509.05393.pdfGoogle Scholar
Klopfer, E. (2008) Augmented Learning: Research and Design of Mobile Educational Games. Cambridge, MA: MIT Press.Google Scholar
Knuth, D. E. (1998). The Art of Computer Programming: Sorting and Searching (Vol. 3). London, UK: Pearson Education.Google Scholar
Kohavi, R. (1995). A study of cross-validation and bootstrap for accuracy estimation and model selection. IJCAI, 14(2), 11371145.Google Scholar
Laboratory for Playful Computation (2017). BlockyTalkyBLE. Retrieved from www.playfulcomputation.group/blockytalkyble.htmlGoogle Scholar
Lamport, L. (1978). Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7), 558565.Google Scholar
Lamport, L. (1998). The part-time parliament. ACM Transactions on Computer Systems, 16(2), 133169.Google Scholar
Lamport, L. (2001). Paxos made simple. ACM SIGACT News, 32(4), 1825.Google Scholar
Lewis-Kraus, G. (2016). The great AI awakening. The New York Times Magazine, December 14, 2016. Retrieved from www.nytimes.com/2016/12/14/magazine/the-great-ai-awakening.htmlGoogle Scholar
Levy, S. T., & Wilensky, U. (2009). Students’ learning with the Connected Chemistry (CC1) curriculum: Navigating the complexities of the particulate world. Journal of Science Education and Technology, 18(3), 243254.Google Scholar
Mahendran, A., & Vedaldi, A. (2015). Understanding deep image representations by inverting them. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 51885196). New York: IEEE.Google Scholar
Metodi, T. S., Faruque, A. I., & Chong, F. T. (2011). Quantum computing for computer architects, second edition. In M. D. Hill (Ed.), Synthesis Lectures on Computer Architecture (pp. 1203). San Rafael, CA: Morgan & Claypool Publishers.Google Scholar
Mohseni, M., Read, P., Neven, H., Boixo, S., Denchev, V., Babbush, R., Fowler, A., Smelyanskiy, V., & Martinis, J. (2017). Commercialize quantum technologies in five years. Nature News, 543(7644), 171175.CrossRefGoogle ScholarPubMed
Morazán, M. (2018). Infusing an HtDP-based CS1 with distributed programming using functional video games. Journal of Functional Programming, 28, e5.Google Scholar
Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System. Retrieved from https://bitcoin.org/bitcoin.pdfGoogle Scholar
Nielsen, M. A., & Chuang, I. (2010). Quantum Computation and Quantum Information: 10th Anniversary Edition. Cambridge, UK: Cambridge University Press.Google Scholar
Papert, S. (1980). Mindstorms: Children, Computers, and Powerful Ideas. New York: Basic Books, Inc.Google Scholar
Papert, S. (2000). What’s the big idea? Toward a pedagogy of idea power. IBM Systems Journal, 39(3–4), 720729.Google Scholar
Repenning, A., Webb, D., & Ioannidou, A. (2010). Scalable game design and the development of a checklist for getting computational thinking into public schools. In Proceedings of the 41st ACM Technical Symposium on Computer Science Education (pp. 265–269). New York, NY: ACM.Google Scholar
Sengupta, P., & Wilensky, U. (2009). Learning electricity with NIELS: Thinking with electrons and thinking in levels. International Journal of Computers for Mathematical Learning, 14(1), 2150.Google Scholar
Shaffer, D. W., & Resnick, M. (1999). “Thick” authenticity: New media and authentic learning. Journal of Interactive Learning Research, 10(2), 1.52.6.Google Scholar
Shapiro, R. B., Kelly, A., Ahrens, M., Johnson, B., Politi, H., & Fiebrink, R. (2017). Tangible distributed computer music for youth. The Computer Music Journal, 41(2), 5268.CrossRefGoogle Scholar
Shor, P. W. (1994). Algorithms for quantum computation: Discrete logarithms and factoring. In Foundations of Computer Science, 1994 Proceedings (pp. 124134). Chicago, IL: IEEE.Google Scholar
Sipser, M. (2012). Introduction to the Theory of Computation. Boston, MA: Cengage Learning.Google Scholar
Stieff, M., & Wilensky, U. (2003). Connected chemistry – Incorporating interactive simulations into the chemistry classroom. Journal of Science Education and Technology, 12(3), 285302.Google Scholar
Tanenbaum, A. S., & Van Steen, M. (2007). Distributed Systems: Principles and Paradigms. Upper Saddle River, NJ: Prentice-Hall.Google Scholar
The College Board (2014). Computer Science A: Course Description. New York: The College Board.Google Scholar
The College Board (2017). AP Computer Science Principles. New York: The College Board.Google Scholar
The Royal Society (2017). Machine learning: The power and promise of computers that learn by example. Retrieved from http://royalsociety.org/machine-learningGoogle Scholar
Tichy, W. (2017). Is quantum computing for real? An interview with Catherine McGeoch of D-Wave Systems. Ubiquity, 2007, 2.Google Scholar
Tissenbaum, M., Sheldon, J., Seop, L., Lee, C. H., & Lao, N. (2017). Critical computational empowerment: Engaging youth as shapers of the digital future. In Global Engineering Education Conference (EDUCON), 2017 IEEE (pp. 17051708). New York: IEEE.Google Scholar
Tissenbaum, M., Sheldon, J., & Abelson, H. (in press). From Computational Thinking to Computational Action. To appear in Communications of the ACM.Google Scholar
Turkle, S., & Papert, S. (1992). Epistemological pluralism and the revaluation of the concrete. Journal of Mathematical Behavior, 11(1), 333.Google Scholar
Reader, R. (2015). Code Girl documentary perfectly sums up why more girls don’t code. VentureBeat. Retrieved from https://venturebeat.com/2015/11/04/code-girl-documentary-perfectly-sums-up-why-more-girls-dont-code/Google Scholar
Vandin, F., Upfal, E., & Raphael, B. J. (2011). Algorithms for detecting significantly mutated pathways in cancer. Journal of Computational Biology, 18(3), 507522.Google Scholar
Vogels, W. (2009). Eventually consistent. Communications of the ACM, 52(1), 4044.Google Scholar
Wilensky, U., & Resnick, M. (1999). Thinking in levels: A dynamic systems approach to making sense of the world. Journal of Science Education and Technology, 8(1), 319.Google Scholar
Wilkerson-Jerde, M., Wagh, A., & Wilensky, U. (2015). Balancing curricular and pedagogical needs in computational construction kits: Lessons from the DeltaTick project. Science Education, 99(3), 465499.CrossRefGoogle Scholar
Williams, C., Stanisstreet, M., Spall, K., Boyes, E., & Dickson, D. (2003). Why aren’t secondary students interested in physics? Physics Education, 38(4), 324.Google Scholar
Williamson, D. P., & Shmoys, D. B. (2011). The Design of Approximation Algorithms. Cambridge, UK: Cambridge University Press.Google Scholar
Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 3335.Google Scholar
Wing, J. M. (2008). Computational thinking and thinking about computing. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences, 366(1881), 37173725.Google Scholar
Wing, J. (2011). Research notebook: Computational thinking—What and why? The Link Magazine, Spring. Retrieved from www.cs.cmu.edu/link/research-notebook-computational-thinking-what-and-why.Google Scholar

Save book to Kindle

To save this book to your Kindle, first ensure coreplatform@cambridge.org is added to your Approved Personal Document E-mail List under your Personal Document Settings on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part of your Kindle email address below. Find out more about saving to your Kindle.

Note you can select to save to either the @free.kindle.com or @kindle.com variations. ‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi. ‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.

Find out more about the Kindle Personal Document Service.

Available formats
×

Save book to Dropbox

To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Dropbox.

Available formats
×

Save book to Google Drive

To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Google Drive.

Available formats
×