{"id":276,"date":"2020-11-03T17:27:03","date_gmt":"2020-11-04T01:27:03","guid":{"rendered":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/?p=276"},"modified":"2020-11-03T17:32:43","modified_gmt":"2020-11-04T01:32:43","slug":"teaching-tools-for-computing-in-the-year-2030","status":"publish","type":"post","link":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/teaching-tools-for-computing-in-the-year-2030\/","title":{"rendered":"Teaching Tools for Computing in the Year 2030"},"content":{"rendered":"<p><span style=\"font-family: verdana, geneva, sans-serif\">This blog post is an expansion on my previous post <a href=\"https:\/\/malat-webspace.royalroads.ca\/rru0165\/ideas-on-the-future-of-ed-tech\/\">Ideas on the Future of Ed Tech<\/a>. <\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">In this post, I will discuss my prediction of the future of Ed Tech in post-secondary computer programming educational programs. Based on the creation and adoption of Ed Tech in other fields and the emergence of several technologies for computer programming, I believe that, by the year 2030, mastery-based learning will become mainstream in numerous post-secondary introductory computer programming and database courses.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Before looking into the future, it is often important to look at the past and present for existing and current trends (Brown et al., 2020; Mishra et al., 2009; Molebash, 1999). In recent years, we have seen the creation of numerous mastery-based learning platforms in K-12 education and first-year, post-secondary introductory science and math courses in North America. For example, Khan Academy, which started as online high school tutorials, has evolved into a mastery-based K-12 platform that is freely accessible to the general public. Students can learn topics and then do mastery tests to both develop their understanding and assess their learning (Khan Academy, n.d.). A unique advantage that math-based content has, is that there is an infinite number of possible assignment questions, simply by randomly generating numbers for the input. Students are forced to demonstrate ability to solve problems sets because the learning platform generates new questions for each exam or assignment.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Currently, mastery-based learning platforms are under-developed in computer science, but there is high potential and need for these education tools. Computer programming and technology skills are becoming among the most important skills for the future job market, as many predict the need for trained employees with digital competence and computer programming skills (Kazakoff &amp; Bers, 2012; Moreno-Le\u00f3n &amp; Robles, 2015). As far as supply and demand are concerned, there is now sufficient justification for the expense and time necessary to develop mastery platforms for introductory programming courses.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">One of the reasons that mastery learning platforms have not yet been well developed for the field of computer programming, is that computer programming is generally more complex than other fields that have already adopted it, such as introductory mathematics and science courses. However, with the recent development of web-based code compiling and checking tools, that have emerged for professional\/industrial practice, the issue of complexity can now be overcome. In the last 10 years, there has been an explosion of sites for computer programming, compiling and evaluating code online, in a variety of languages: .NetFiddle is an online compiler for C# and VB languages at <a href=\"https:\/\/dotnetfiddle.net\/\">https:\/\/dotnetfiddle.net\/<\/a>; Programiz for compiling Python and Java languages at <a href=\"https:\/\/www.programiz.com\/python-programming\/online-compiler\/\">https:\/\/www.programiz.com\/<\/a>; Tutorials Point has compilers for over 75 Programming languages at <a href=\"https:\/\/www.tutorialspoint.com\/codingground.htm\">https:\/\/www.tutorialspoint.com\/codingground.htm<\/a>; Repl.it has over 50 supported programming languages at <a href=\"https:\/\/repl.it\/languages\">https:\/\/repl.it\/languages<\/a>; and many more. For learning relational database design and SQL language, many sites exist with interactive tutorials including: SQLBolt at <a href=\"http:\/\/sqlbolt.com\">http:\/\/sqlbolt.com<\/a> and SQLZOO at <a href=\"http:\/\/sqlzoo.com\">http:\/\/sqlzoo.com<\/a>. The appearance and popularity of these sites is likely due to the advancement of Web technologies such as responsive websites (Ciolacu &amp; Beer, 2016; Nayak et al., 2013) and the ease of hosting using cloud computing (Ledyayev &amp; Richter, 2014; Rahimi et al., 2014; Zhang et al., 2010). If tools similar to these were created and integrated into a mastery-based learning platform, it would be possible to automatically generate student assignments.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">There are several reasons to justify mastery-based learning platforms. Recent research has indicated several the benefits of mastery learning when used for teaching programming courses (Jazayeri, 2015; McCane et al., 2017). Automatic graders are also ideal because &#8220;programming assignment grading can be time-consuming and error-prone if done manually&#8221; (Liu et al., 2019) and this means that teachers can &#8220;focus on teaching and giving feedback with [tools like] CodeGrade&#8217;s time saving and automation tools&#8221; (CodeGrade BV, n.d.). However, there are several more important reasons for which mastery-based learning platforms should be implemented in post-secondary computer programming courses, beyond simply easing the workload of an instructor. Creating computer programming assignments using automatic graders is a process that is labour intensive (Cheon &amp; Leavens, 2002) and results in only a few unique assignment sets. This leads to problems with plagiarism. Once a student has completed the assignment and given a satisfactory score, the answers can be posted on a public forum or chat, which is now open for anyone to copy the answers (Joy &amp; Luck, 1999). Indeed, a recent study by Kyrilov and Noelle (2015), has strong indications that receiving immediate evaluation through automated assessment (particularly with binary feedback) can lead to an increase of plagiarism. Perhaps this could be mitigated, with the use of plagiarism checkers, in situations where the solution is of substantial length and includes some natural variability (Bowyer &amp; Hall, 1999; Joy &amp; Luck, 1999). However, many database assignment solutions are extremely short and have little deviation from other student solutions and thus pose a potential for triggering false positives in plagiarism checkers.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">It is technically possible to create algorithms that can both automatically generate new assignment datasets and answers that can be automatically graded and give students instant feedback. Using an analogy of the game of sudoku, the Web Sudoku website, <a href=\"http:\/\/websudoku.com\">http:\/\/websudoku.com<\/a>, has pre-generated billions of sudoku puzzles which can be picked at random (Greenspan, n.d.). Puzzles, can later be retrieved again and the solution verified, when looked up using the puzzle id provided. Similarly, by giving every student a unique dataset each time, the ability to plagiarize would effectively be eliminated; answers posted on forums become useless and it would motivate the students to better develop the ability to learn the programming process. If two students submit the same solution, it is clear they did not do their own assignment. Furthermore, because &#8220;in mastery learning, assessments are not a one-shot, do-or-die experience&#8221; (Guskey, 2010), having the ability to automatically create assignments would give students the ability to retry assignments and receive immediate feedback as many times as they want, without increasing the workload of the teacher. &#8220;When students get instant, automated feedback on their code, everyone wins&#8221; (TenLab Internet, n.d., Subtitle).<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">In conclusion, with the increased demand for computer programming in post-secondary education and the available tools we have at hand, it is possible for mastery-based learning platforms to be created and launched in the coming future. I predict the creation and adoption of auto-generated assignments, as a form of mastery learning, being incorporated into Learning Management Systems and standalone websites by the year 2030. Automatically generated assignments could be an answer to the rapid increase of Massively Online Open Courseware and the increasing demands on teachers from having to create and mark the required programming assignments for these courses (Srikant &amp; Aggarwal, 2013). John Baker, CEO of Desire to Learn (D2L), and founder of Brightspace, one of the leading Learning Management Systems, commented that &#8220;Looking forward, I think technology could also be leveraged in new ways to support mastery related tactics \u2026 I predict mastery models will be a big component of how we will all learn in 2030&#8221; (Baker, 2019). Computer programming faculty have an even higher probability of favoring technology-based learning, as by their very nature they are more tech savvy. This is a field in which programming professionals are seeking to find automated solutions to improve efficiency and overcome challenges commonly faced by society. Even for myself, tools for teaching computer programming are a huge interest of mine \u2013 they combine two of my passions (teaching and computer programming). As a computer programmer instructor, I plan on contributing to these developments by creating and incorporating mastery-based learning platforms into my own classes and further promoting them among my colleagues.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif;font-size: 12pt\">References<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Baker, J. (2019). What can mastery learning teachers do now that they couldn\u2019t do before? <em>Desire to Learn (D2L)<\/em>. <a href=\"https:\/\/www.d2l.com\/blog\/learning2030-mastery-learning\/\">https:\/\/www.d2l.com\/blog\/learning2030-mastery-learning\/<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Bowyer, K. W., &amp; Hall, L. O. (1999). <em>Experience using &#8220;MOSS&#8221; to detect cheating on programming assignments<\/em> [Paper presentation]. FIE&#8217;99 Frontiers in Education. 29th Annual Frontiers in Education Conference. Designing the Future of Science and Engineering Education. (IEEE Cat. No. 99CH37011), San Juan, Puerto Rico, USA. <a href=\"https:\/\/doi.org\/10.1109\/FIE.1999.840376\">https:\/\/doi.org\/10.1109\/FIE.1999.840376<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Brown, M., McCormack, M., Reeves, J., Brook, D. C., Grajek, S., Alexander, B., Bali, M., Bulger, S., Dark, S., &amp; Engelbert, N. (2020). <em>2020 Educause Horizon Report Teaching and Learning Edition<\/em>. EDUCAUSE.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Cheon, Y., &amp; Leavens, G. T. (2002). <em>A simple and practical approach to unit testing: The JML and JUnit way<\/em> [Paper presentation]. European Conference on Object-Oriented Programming, Berlin, Heidelberg. <a href=\"https:\/\/doi.org\/10.1007\/3-540-47993-7_10\">https:\/\/doi.org\/10.1007\/3-540-47993-7_10<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Ciolacu, M., &amp; Beer, R. (2016, 2016, October). <em>Adaptive user interface for higher education based on web technology<\/em> [Paper presentation]. 2016 IEEE 22nd International Symposium for Design and Technology in Electronic Packaging (SIITME), Oradea, Romania. <a href=\"https:\/\/doi.org\/10.1109\/SIITME.2016.7777299\">https:\/\/doi.org\/10.1109\/SIITME.2016.7777299<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">CodeGrade BV. (n.d.). <em>CodeGrade &#8211; Analytics on code assignments<\/em>. Retrieved Oct 20, 2020, from <a href=\"https:\/\/www.codegrade.com\/\">https:\/\/www.codegrade.com\/<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Greenspan, G. L., Rachel. (n.d.). <em>Web Sudoku &#8211; Billions of free sudoku puzzles to play online<\/em>. Retrieved Oct 30, 2020, from <a href=\"https:\/\/www.websudoku.com\/?select=1&amp;level=1\">https:\/\/www.websudoku.com\/?select=1&amp;level=1<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Guskey, T. R. (2010). Lessons of mastery learning. <em>Educational leadership, 68<\/em>(2), 52.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Jazayeri, M. (2015). <em>Combining mastery learning with project-based learning in a first programming course: An experience report<\/em> [Paper presentation]. 2015 IEEE\/ACM 37th IEEE International Conference on Software Engineering, Florence, Italy. <a href=\"https:\/\/doi.org\/10.1109\/ICSE.2015.163\">https:\/\/doi.org\/10.1109\/ICSE.2015.163<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Joy, M., &amp; Luck, M. (1999). Plagiarism in programming assignments. <em>IEEE Transactions on education, 42<\/em>(2), 129-133. <a href=\"https:\/\/doi.org\/10.1109\/13.762946\">https:\/\/doi.org\/10.1109\/13.762946<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Kazakoff, E., &amp; Bers, M. (2012). Programming in a robotics context in the kindergarten classroom: The impact on sequencing skills. <em>Journal of Educational Multimedia and Hypermedia, 21<\/em>(4), 371-391.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Khan Academy. (n.d.). <em>Addition, subtraction, and estimation &#8211; 4th grade &#8211; Math &#8211; Khan Academy<\/em>. Retrieved Oct 30, 2020, from <a href=\"https:\/\/www.khanacademy.org\/math\/cc-fourth-grade-math\/imp-addition-and-subtraction-2\/quiz\/imp-addition-and-subtraction-2-quiz-2?modal=1\">https:\/\/www.khanacademy.org\/math\/cc-fourth-grade-math\/imp-addition-and-subtraction-2\/quiz\/imp-addition-and-subtraction-2-quiz-2?modal=1<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Kyrilov, A., &amp; Noelle, D. C. (2015). <em>Binary instant feedback on programming exercises can reduce student engagement and promote cheating<\/em> [Paper presentation]. 15th Koli Calling Conference on Computing Education Research, Koli, Finland. <a href=\"https:\/\/doi.org\/10.1145\/2828959.2828968\">https:\/\/doi.org\/10.1145\/2828959.2828968<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Ledyayev, R., &amp; Richter, H. (2014). High performance computing in a cloud using openstack. <em>Cloud Computing<\/em>, 108-113.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Liu, X., Wang, S., Wang, P., &amp; Wu, D. (2019). <em>Automatic grading of programming assignments: An approach based on formal semantics<\/em> [Paper presentation]. 2019 IEEE\/ACM 41st International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET), Montreal, QC, Canada. <a href=\"https:\/\/doi.org\/10.1109\/ICSE-SEET.2019.00022\">https:\/\/doi.org\/10.1109\/ICSE-SEET.2019.00022<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">McCane, B., Ott, C., Meek, N., &amp; Robins, A. (2017). <em>Mastery learning in introductory programming<\/em> [Paper presentation]. Proceedings of the Nineteenth Australasian Computing Education Conference, New York, NY, United States. <a href=\"https:\/\/doi.org\/10.1145\/3013499.3013501\">https:\/\/doi.org\/10.1145\/3013499.3013501<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Mishra, P., Koehler, M. J., &amp; Kereluik, K. (2009). Looking back to the future of educational technology. <em>TechTrends, 53<\/em>(5), 49.<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Molebash, P. (1999). Technology and education: Current and future trends. <em>Journal of IT, 6<\/em>(1).<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Moreno-Le\u00f3n, J., &amp; Robles, G. (2015, March). <em>Computer programming as an educational tool in the English classroom a preliminary study.<\/em> [Paper presentation]. 2015 IEEE Global Engineering Education Conference (EDUCON), Tallinn, Estonia. <a href=\"https:\/\/doi.org\/10.1109\/EDUCON.2015.7096089\">https:\/\/doi.org\/10.1109\/EDUCON.2015.7096089<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Nayak, R., Senellart, P., Suchanek, F. M., &amp; Varde, A. S. (2013). Discovering interesting information with advances in web technology. <em>SIGKDD Explor. Newsl., 14<\/em>(2), 63\u201381. <a href=\"https:\/\/doi.org\/10.1145\/2481244.2481255\">https:\/\/doi.org\/10.1145\/2481244.2481255<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Rahimi, M. R., Ren, J., Liu, C. H., Vasilakos, A. V., &amp; Venkatasubramanian, N. (2014). Mobile cloud computing: A survey, state of art and future directions. <em>Mobile Networks and Applications, 19<\/em>(2), 133-143. <a href=\"https:\/\/doi.org\/10.1007\/s11036-013-0477-4\">https:\/\/doi.org\/10.1007\/s11036-013-0477-4<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Srikant, S., &amp; Aggarwal, V. (2013). Automatic grading of computer programs: A machine learning approach. 2013 12th International Conference on Machine Learning and Applications,<\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">TenLab Internet. (n.d.). <em>Autogradr &#8211; Automatically grade programming assignments.<\/em> Retrieved Oct 26, 2020, from <a href=\"https:\/\/www.autogradr.com\/\">https:\/\/www.autogradr.com\/<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif\">Zhang, S., Zhang, S., Chen, X., &amp; Huo, X. (2010). <em>Cloud computing research and development trend<\/em> [Paper presentation]. 2010 Second international conference on future networks, Sanya, China. <a href=\"https:\/\/doi.org\/10.1109\/ICFN.2010.58\">https:\/\/doi.org\/10.1109\/ICFN.2010.58<\/a><\/span><\/p>\n<p><span style=\"font-family: verdana, geneva, sans-serif;font-size: 8pt\">Featured Image: <\/span><span style=\"font-family: verdana, geneva, sans-serif;font-size: 8pt\">&#8220;<a class=\"external text\" href=\"https:\/\/thenounproject.com\/search\/?q=future&amp;i=3085003\" rel=\"nofollow\">Future<\/a>&#8221;\u00a0is licensed under\u00a0<a class=\"external text\" href=\"https:\/\/creativecommons.org\/publicdomain\/zero\/1.0\/\" rel=\"nofollow\">CC BY<\/a> by <a href=\"https:\/\/thenounproject.com\/joonjoonzaa\">Sumit Saengthong, TH<\/a>\u00a0at <a href=\"http:\/\/thenounproject.com\">thenounproject.com<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog post is an expansion on my previous post Ideas on the Future of Ed Tech. In this post, I will discuss my prediction of the future of Ed Tech in post-secondary computer programming educational programs. Based on the creation and adoption of Ed Tech in other fields and the emergence of several technologies [&hellip;]<\/p>\n","protected":false},"author":187,"featured_media":277,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[35,23,33,34,36,26],"class_list":["post-276","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-lrnt523","tag-computer-programming","tag-ed-tech","tag-futures","tag-prediction","tag-teaching","tag-trends"],"_links":{"self":[{"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/posts\/276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/users\/187"}],"replies":[{"embeddable":true,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/comments?post=276"}],"version-history":[{"count":4,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/posts\/276\/revisions"}],"predecessor-version":[{"id":281,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/posts\/276\/revisions\/281"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/media\/277"}],"wp:attachment":[{"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/media?parent=276"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/categories?post=276"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/malat-webspace.royalroads.ca\/rru0165\/wp-json\/wp\/v2\/tags?post=276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}