Current Trends in Online Programming Languages Learning Tools: A Systematic Literature Review

Abstract

Students face difficulties in programming languages learning (PLL) which encourages many scholars to investigate the factors behind that. Although there a number of positive and negative factors found to be effective in PLL procedure, utilising online tools in PLL were recognized as a positive recommended means. This motivates many researchers to provide solutions and proposals which result in a number of choices and options. However, categorising those efforts and showing what has been done, would provide a better and clear image for future studies. Therefore, this paper aims to conduct a systematic literature review to show what studies have been done and then categorise them based on the type of online tools and the aims of the research. The study follows Kitchenham and Charters guidelines for writing SLR (Systematic Literature Review). The search result reached 1390 publications between 2013-09/2018. After the filtration which has been done through selected criteria, 160 publications were found to be adequate to answer the review questions. The main results of this systematic review are categorizing the aims of the studies in online PLL tools, classifying the tools and finding the current trends of the online PLL tools.

Share and Cite:

Alaqsam, A. , Ghabban, F. , Ameerbakhsh, O. , Alfadli, I. and Fayez, A. (2021) Current Trends in Online Programming Languages Learning Tools: A Systematic Literature Review. Journal of Software Engineering and Applications, 14, 277-297. doi: 10.4236/jsea.2021.147017.

1. Introduction

Learning programming languages is one of the crucial knowledge in todays’ education [1] [2]. Although there are difficulties in programming learning [3], online programming learning tools were found to be essential positive factors that enhanced programming teaching and learning [4] [5] [6]. Consequently, many studies attempt to improve the materials and tools utilized in online programming teaching and learning, for instance, [3] [7] [8]. However, there is a need to classify them. While, there are a large number of online materials that are available for programming learning, yet the classification of their types and the aims of the investigations are not categorized. Also, the current trends of the online PLL tools are still mysterious. Therefore, this systematic literature review aims to analyze the studies that were conducted on the online PLL tools between 2013-September 2018, which would guide to better future investigations.

2. Related Work

There are few SLR publications conducted for online learning and online programming learning. For example, the paper [9] provided an SLR to show the advantages and challenges of using open source in computer science education generally. The study [10] conducted a systematic literature review to clarify how to include computational thinking into schools. The study [11] also conducted a SLR to illustrate integrating computational thinking in education procedure. The study [12] employed an SLR to find out the functionalities required to design massive open online practical programming courses. The study [13] showed how the self-regulated learning is addressed in Computer Science online learning tools. The study [14] conducted their systematic review to analyze the outcome of educating programming among children. However, there is a lack of a comprehensive view about the current trends on online programming learning.

3. Review Process

This systematic review follows the guidelines specified in [15]. Thus, the researchers plan the review first, then they conduct it in the second phase, and thirdly they report it. For planning the review phase, the researchers identify the need, select the research questions, decide the procedure and evaluate it. For applying the review, the researchers clarify the research, select studies and show the method of extracting data. Finally, the researchers format the report.

3.1. Research Questions

Two research questions were developed for this review.

Q1. What is the aim of the studies that were conducted for online programming languages learning tools?

Q2. What are the tools that were applied in online programming languages learning?

3.2. Data Sources

Five databases had been searched to be the data source for this paper as following: IEEE Explore, ISI Web of Science, ACM Digital Library, Scopus and ERIC.

3.3. Search Strategies

The research terms that were used are: (programming, online, learning, and “programming language”). The AND and OR Boolean characters were used to manage the search.

3.4. Selection Criteria

- Inclusion criteria:

Papers published between 2013-2018.

Papers talked about online programming languages learning tools.

Papers were written in English.

Availability of the papers.

- Exclusion criteria:

Papers published outside of 2013-2018.

Papers did not talk about online programming languages learning tools.

Papers were not written in English.

Unavailability of the papers.

4. Finding

4.1. Search Result

The first result of the database search had found 1390 publications. After evaluating all papers through their title and abstract the number was reduced to 560. The number becomes 552 after moving the resources to Mendeley software to delete the duplication. Finally, after applying the inclusion and exclusion criteria the number of papers becomes 160 which have been adequate to answer the questions of the paper (Figure 1).

As it can be seen, the percentage of the studies attempted in developed countries is about double those conducted in developing countries. It could be an indicator to the significance of having more investigations in developing countries (Figure 2).

As it is appeared in the above figure, there is a constant increase in the publications of the online PLL tools from 2013 to 2017 which gives an impression about the current curiosity among scholars interested in enhancing programming learning.

Figure 1. No. of online PLL publications in developed and developing countries.

Figure 2. No. of online PLL publications between 2013-2017.

4.2. Research Question Answers

Q1. What is the aim of the studies that were conducted for online programming languages learning tools?

As it can be realized from Figure 3, there are three aims that were encouraging authors to conduct researches for online PLL tools which are: designing a new tool, integrating a tool in the learning environment and evaluating the use of an existed tool that already implemented. It is clear that the number of studies aimed to integrate a tool in programming learning procedure is the biggest with 58 publications. In the second place, studies that aimed to propose or design a tool for programming learning with about third of the works. While studies aimed to evaluate a tool in the programming education are 50 publications. For example, following studies aimed to design tools for online PLL [4] [16] - [37]. Those studies design online platform. [38] [39] [40] [41] aimed to evaluate the tool such as Online materials. [42] - [51] aimed to integrate the tools such as online software. However, the difference between the numbers of researches is not significant, which could be an indicator for the need of future researches in all three areas.

Q2. What are the tools that were applied in online programming languages learning (Figure 4)?

The pie chart illustrates the four applied types of online programming languages tools which are: general online learning materials, online platforms, designed software and online courses such as MOOC and online website. As it can be seen, the most investigated and applied tools were online programming learning courses with 36%. Also, the online websites and platforms were appeared to be an interesting area of research. Almost more than third of the publications considered them. Moreover, 28% of the studies were conducted to provide new software tools in online programming learning. This clarifies that computer science scholars are interested in applying online software tools to enhance the situation. Nevertheless, the lowest kind of publications in online programming learning tools are those considered as general online learning materials.

Figure 3. Categorization of the aims of publications in online PLL.

Figure 4. Categorization of the tools applied in PLL.

5. Discussion

After studying 160 publications in online programming languages learning tools between 2013-09/2018, it is recognized that the main aims were: designing a new tool, integrating an online tool in PLL environment and evaluating an existed tool that was already implemented. Furthermore, the applied tools investigated by previous studies could be classified into four kinds as following: 1) online websites that were designed to provide specific materials for PLL 2) online courses that were presented as online PLL classes 3) online software that was designed and added into online environments as an additional feature and 4) online materials which could be videos, exercises or documents that were downloaded from different online resources. This section discusses each aim and the tools that were applied to achieve it. It determines a graph for each aim to show the type and percentage of each utilized tool.

As it is illustrated in Figure 3 the most popular aim amongst publications was to integrate a tool in programming learning procedure. However, Figure 5 shows that half of those studies were interesting in integrating online courses. It is an indicator that online courses are more attractive than others. Also, online platforms and websites have a good number of publications that explain their integration in PLL. About third of the studies adapted online platforms to enhance PLL. Nevertheless, the graph shows that the number of studies that integrated online materials and existing software are few. Table 1 shows the studies integrated tools into PLL.

Figure 6 illustrates that new online platforms are the most preferable designed means. 43% of the studies aimed to design a new tool for PLL implemented online environments. Also, the studies that were interesting in designing software had a big number that reached 42%. However, there are few studies that paid attention to designing new online courses. As it is shown, just 15% of the studies were interesting in that. Table 2 shows the studies designed tools for PLL.

Figure 5. Tools integrated into PLL.

Figure 6. Tools designed for PLL.

Table 1. Categorization of the studies integrated tools into PLL.

Table 2. Categorization of the studies designed tools for PLL.

Although Figure 6 shows that there are few studies were interesting in designing new online courses, Figure 7 shows that most of the publications aimed to evaluate the effectiveness of the use of online PLL tools were interesting in online courses 45%. More than quarter of the publication investigated the beneficial of the use of online platforms. Also it is appeared that the online software means got almost similar curiosity with 23%. However, there is poor interest in looking at the effectiveness of the use of general online materials with 6%. Table 3 shows the studies evaluated the effectiveness of tools in PLL.

As it is illustrated previously, online courses in PLL are the most preferable means integrated and evaluated by the publications. However, it would be noteworthy to find out the kind of online courses had been mostly applied. Therefore, the researchers went through the previous online courses studies and found that they are two types. The first type is private online courses and the second one is massive open online courses (MOOC). As it can be seen in Figure 8, the most applied type of online programming learning tools is MOOC with 63%, and the privet courses are appeared to have 37%.

Figure 7. Tools evaluated during PLL.

Figure 8. categorisation of publications in online courses.

Table 3. Categorization of the studies evaluated tools during PLL.

6. Conclusion

Knowing the current trends in online PLL tools is an essential step that helps researchers to understand what are already done and what are needed to be investigated in future works. This study is a systematic literature review intended to clarify the previous researches in online PLL tools. The review shows that there are three aims that motivated scholars to conduct their researches in online PLL which are: designing a new online tool to enhance PLL, integrating an online tool in PLL environment or evaluating an existed tool that has already been implemented in PLL procedure. Also, it is found that there are four kinds of online tools that were applied in PLL which are: online websites, online courses, online software and general online learning materials. Moreover, it is clarified that online courses are the current trends of the online PLL tools. Also, it has appeared that more than half of the studies aimed to integrate online PLL tools were interesting in online courses. Also, about half of the investigations that aim to evaluate the effectiveness of online PLL tools were interesting in online courses. Furthermore, the researchers found that MOOCs’ studies are the most applied online PLL courses. This could be an indicator for scholar that there is a need to have more investigations on the currently available online courses generally and MOOCs specifically. It would be essential to know types, applications, user’s acceptance, adaption and advantages and weaknesses of massive open online programming courses.

Conflicts of Interest

The authors declare no conflicts of interest regarding the publication of this paper.

References

[1] Cai, R. (2018) Adaptive Learning Practice for Online Learning and Assessment. Proceedings of the 2018 International Conference on Distance Education and Learning, Beijing, 26-28 May 2018, 103-108.
https://doi.org/10.1145/3231848.3231868
[2] Hwang, G.J., Liang, Z.Y. and Wang, H.Y. (2016) An Online Peer Assessment-Based Programming Approach to Improving Students’ Programming Knowledge and Skills. Proceedings of the 2016 International Conference on Educational Innovation through Technology (EITT), Tainan, 22-24 September 2016, 81-85.
https://doi.org/10.1109/EITT.2016.23
[3] Saito, D., Sasaki, A., Washizaki, H., Fukazawa, Y. and Muto, Y. (2017) Quantitative Learning Effect Evaluation of Programming Learning Tools. 2017 IEEE 6th International Conference on Teaching, Assessment, and Learning for Engineering (TALE), Hong Kong, 12-14 December 2017 209-216.
https://doi.org/10.1109/TALE.2017.8252335
[4] Offutt, J., Ammann, P., Dobolyi, K., Kauffmann, C., Lester, J., Praphamontripong, U., et al. (2017) A Novel Self-Paced Model for Teaching Programming. Proceedings of the 4th (2017) ACM Conference on Learning @ Scale, Cambridge, 20-21 April 2017, 177-180.
https://doi.org/10.1145/3051457.3053978
[5] Rosato, J., Lucarelli, C., Beckworth, C. and Morelli, R. (2017) A Comparison of Online and Hybrid Professional Development for CS Principles Teachers. Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education, Bologna, 3-5 July 2017, 140-145.
https://doi.org/10.1145/3059009.3059060
[6] Webb, D.C., Nickerson, H. and Bush, J.B. (2017) A Comparative Analysis of Online and Face-to-Face Professional Development Models for CS Education. Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, Seattle, 8-11 March 2017, 621-626.
https://doi.org/10.1145/3017680.3017784
[7] Su, J.M. and Hsu, F.Y. (2017) Building a Visualized Learning Tool to Facilitate the Concept Learning of Object-Oriented Programming. Proceedings of the 2017 6th IIAI International Congress on Advanced Applied Informatics (IIAI-AAI), Hamamatsu, 9-13 July 2017, 516-520.
https://doi.org/10.1109/IIAI-AAI.2017.180
[8] Cabada, R.Z., Estrada, M.L.B., Hernández, F.G., Bustillos, R.O. and Reyes-García, C.A. (2018) An Affective and Web 3.0-Based Learning Environment for a Programming Language. Telematics and Informatics, 35, 611-628.
https://doi.org/10.1016/j.tele.2017.03.005
[9] Alasbali, N. and Benatallah, B. (2015) Open Source as an Innovative Approach in Computer Science Education: A Systematic Review of Advantages and Challenges. Proceedings of the 2015 IEEE 3rd International Conference on MOOCs, Innovation and Technology in Education (MITE), Amritsar, 1-2 October 2015, 278-283.
https://doi.org/10.1109/MITE.2015.7375330
[10] Lockwood, J. and Mooney, A. (2018) Computational Thinking in Education: Where Does It Fit? A Systematic Literary Review. International Journal of Computer Science Education in Schools, 2, 41-60. arXiv preprint arXiv:1703.07659.
https://doi.org/10.21585/ijcses.v2i1.26
[11] Hsu, T.C., Chang, S.C. and Hung, Y.T. (2018) How to Learn and How to Teach Computational Thinking: Suggestions Based on a Review of the Literature. Computers & Education, 126, 296-310.
https://doi.org/10.1016/j.compedu.2018.07.004
[12] Yulianto, B., Prabowo, H., Kosala, R. and Hapsara, M. (2017) MOOC Architecture Model for Computer Programming Courses. Proceedings of the 2016 International Conference on Information Management and Technology (ICIMTech), Bandung, 16-18 November 2017, 35-40.
https://doi.org/10.1109/ICIMTech.2016.7930298
[13] Garcia, R., Falkner, K. and Vivian, R. (2018) Systematic Literature Review: Self-Regulated Learning Strategies Using E-Learning Tools for Computer Science. Computers & Education, 123, 150-163.
https://doi.org/10.1016/j.compedu.2018.05.006
[14] Popat, S. and Starkey, L. (2019) Learning to Code or Coding to Learn? A Systematic Review. Computers & Education, 128, 365-376.
https://doi.org/10.1016/j.compedu.2018.10.005
[15] Kitchenham, B. and Charters, S. (2007) Guidelines for Performing Systematic Literature Reviews in Software Engineering. EBSE 2007-001, Educational Broadcasting System, Goyang, 45 p, 10.
[16] Gluga, R., Kay, J., Raymond, S., Charleston, M., Harland, J. and Teague, D. (2013) A Conceptual Model for Reflecting on Expected Learning vs. Demonstrated Student Performance. Proceedings of the 15th Australasian Computing Education Conference, Vol. 136, Adelaide, 29 January-1 February 2013, 77-86.
[17] Di Mascio, T., Laura, L. and Temperini, M. (2018) A Framework for Personalized Competitive Programming Training. 2018 17th International Conference on Information Technology Based Higher Education and Training (ITHET 2018), Olhao, 26-28 April 2018, 1-8.
https://doi.org/10.1109/ITHET.2018.8424620
[18] Mi, Q., Keung, J., Mei, X., Xiao, Y. and Chan, W.K. (2018) A Gamification Technique for Motivating Students to Learn Code Readability in Software Engineering. Proceedings of the 2018 International Symposium on Educational Technology (ISET 2018), Osaka, 31 July-2 August 2018, 250-254.
https://doi.org/10.1109/ISET.2018.00062
[19] Benotti, L., Martínez, M.C. and Schapachnik, F. (2018) A Tool for Introducing Computer Science with Automatic Formative Assessment. IEEE Transactions on Learning Technologies, 11, 179-192.
https://doi.org/10.1109/TLT.2017.2682084
[20] Miskin, H. and Gopalan, A. (2016) The TuringLab Programming Environment: An Online Python Programming Environment for Challenge based Learning. Proceedings of the 8th International Conference on Computer Supported Education, Vol. 1, Rome, 21-23 April, 103-113.
https://doi.org/10.5220/0005802701030113
[21] Li, Z., Zhang, S.Y. and Geng, Q.X. (2015) Application Research of Java Technology Course Teaching Reform Based on the Flipped Classroom. 2015 10th International Conference on Computer Science & Education (ICCSE 2015), Cambridge, 22-24 June 2015, 814-818.
https://doi.org/10.1109/ICCSE.2015.7250357
[22] Keung, J., Xiao, Y., Mi, Q. and Lee, V.C.S. (2018) BlueJ-UML: Learning Object-Oriented Programming Paradigm Using Interactive Programming Environment. 2018 International Symposium on Educational Technology (ISET), Osaka, 31 July-2 August 2018, 47-51.
https://doi.org/10.1109/ISET.2018.00020
[23] Huang, T.-C., Shu, Y., Chang, S.-H., Huang, Y.-Z., Lee, S.-L., Huang, Y.-M., et al. (2016) Developing a Self-Regulated Oriented Online Programming Teaching and Learning System. 2014 IEEE International Conference on Teaching, Assessment and Learning for Engineering, Wellington, 8-10 December 2014, 115-120.
https://doi.org/10.1109/TALE.2014.7062599
[24] Thorns, B., Eryilmaz, E. and Gerbino, S. (2014) Designing a Peer Support System for Computer Programming Courses Using Online Social Networking Software. 2014 47th Hawaii International Conference on System Sciences, Waikoloa, 6-9 January 2014, 42-51.
https://doi.org/10.1109/HICSS.2014.15
[25] Othman, M., Othman, M. and Hussain, F.M. (2013) Designing Prototype Model of an Online Collaborative Learning System for Introductory Computer Programming Course. Procedia-Social and Behavioral Sciences, 90, 293-302.
https://doi.org/10.1016/j.sbspro.2013.07.094
[26] Çakir, R. and Serkan Tan, S. (2017) Development of Educational Applications on the Social Network of Facebook and Its Effects on Students’ Academic Achievement. Educational Sciences: Theory and Practice, 17, 1525-1546.
https://doi.org/10.12738/estp.2017.5.0273
[27] Zou, Z., Zhang, Y., Li, J., Hei, X., Du, Y. and Wu, D. (2018) EasyHPC: An Online Programming Platform for Learning High Performance Computing. 2017 IEEE 6th International Conference on Teaching, Assessment, and Learning for Engineering (TALE), Hong Kong, 12-14 December 2017, 432-435.
https://doi.org/10.1109/TALE.2017.8252374
[28] Kim, S., Park, J., Kim, J.W. and Oh, A. (2016) Elice: An Online CS Education Platform to Understand How Students Learn Programming. Proceedings of the 3rd (2016) ACM Conference on Learning @ Scale, Edinburgh, 25-26 April 2016, 225-228.
https://doi.org/10.1145/2876034.2893420
[29] Brand, C. and Repenning, A. (2017) Helping Teachers and Students Learn to Use 3D in Agentcubes Online. 2017 IEEE Blocks and Beyond Workshop (B&B), Raleigh, 9-10 October 2017, 103-104.
https://doi.org/10.1109/BLOCKS.2017.8120423
[30] Fadhilah, S., Santoso, H.B., Kasiyah and Goodridge, W. (2016) Interaction Design Evaluation and Improvement of Beling.co. Proceedings of the 2nd International Conference in HCI and UX Indonesia 2016, Jakarta, 13-15 April 2016, 102-111.
https://doi.org/10.1145/2898459.2898475
[31] Karavirta, V., Haavisto, R., Kaila, E., Laakso, M.J., Rajala, T. and Salakoski, T. (2015) Interactive Learning Content for Introductory Computer Science Course Using the ViLLE Exercise Framework. 2015 International Conference on Learning and Teaching in Computing and Engineering, Taipei, 9-12 April 2015, 9-16.
https://doi.org/10.1109/LaTiCE.2015.24
[32] Ghorashi, S. and Jensen, C. (2016) Jimbo: A Collaborative IDE with Live Preview. Proceedings of the 9th International Workshop on Cooperative and Human Aspects of Software Engineering, Austin, 14-22 May 2016, 104-107.
https://doi.org/10.1145/2897586.2897613
[33] Hunter, G., Livingstone, D., Neve, P. and Alsop, G. (2013) Learn Programming++: The Design, Implementation and Deployment of an Intelligent Environment for the Teaching and Learning of Computer Programming. 2013 9th International Conference on Intelligent Environments, Athens, 16-17 July 2013, 129-136.
https://doi.org/10.1109/IE.2013.46
[34] Gaglo, K., Seck, M., Ouya, S. and Mendy, G. (2018) Proposal for an Online Practical Work Platform for Improving the Teaching of STEM. 2018 20th International Conference on Advanced Communication Technology (ICACT), Chuncheon, 11-14 February 2018, 738-743.
https://doi.org/10.23919/ICACT.2018.8323904
[35] Pan, T., Zhan, G., Zhang, L., Yu, G., Xu, Y., Li, Z., et al. (2017) The Design and Implementation of Generic Practice Evaluation Platform for iStudy. 2017 12th International Conference on Computer Science and Education (ICCSE), Houston, 22-25 August 2017, 709-712.
https://doi.org/10.1109/ICCSE.2017.8085585
[36] Hu, Q. and Huang, Y. (2015) The Design of Open Learner Model to Improve Interaction of Peer Assessment in Online Learning. 2015 10th International Conference on Computer Science & Education (ICCSE), Cambridge, 22-24 July 2015, 310-314.
https://doi.org/10.1109/ICCSE.2015.7250262
[37] Dos Santos Lopes, M.S., Gomes, I.P., Trindade, R.M.P., Da Silva, A.F. and Lima, A.C.D.C. (2017) Web Environment for Programming and Control of a Mobile Robot in a Remote Laboratory. IEEE Transactions on Learning Technologies, 10, 526-531.
https://doi.org/10.1109/TLT.2016.2627565
[38] Fan, K.Y.D. (2014) Blended Instruction in a Programming Course: Lessons Learned. 2014 IEEE Frontiers in Education Conference (FIE) Proceeding, Madrid, 22-25 October 2014, 1-5.
https://doi.org/10.1109/FIE.2014.7044003
[39] Yağci, M. (2016) Blended Learning Experience in a Programming Language Course and the Effect of the Thinking Styles of the Students on Success and Motivation. Turkish Online Journal of Educational Technology, 15, 32-45.
[40] Hayashi, Y., Fukamachi, K.I. and Komatsugawa, H. (2015) Collaborative Learning in Computer Programming Courses That Adopted the Flipped Classroom. 2015 International Conference on Learning and Teaching in Computing and Engineering, Taipei, 9-12 April 2015, 209-212.
https://doi.org/10.1109/LaTiCE.2015.43
[41] Escherle, N.A., Ramirez-Ramirez, S.I., Basawapatna, A.R., Assaf, D., Repenning, A., Maiello, C., et al. (2016) Piloting Computer Science Education Week in Mexico. Proceedings of the 47th ACM Technical Symposium on Computing Science Education, Memphis, 2-5 March 2016, 431-436.
https://doi.org/10.1145/2839509.2844598
[42] Kyrilov, A. and Noelle, D.C. (2015) Binary Instant Feedback on Programming Exercises Can Reduce Student Engagement and Promote Cheating. Proceedings of the 15th Koli Calling Conference on Computing Education Research, Koli, 19-22 November 2015, 122-126.
https://doi.org/10.1145/2828959.2828968
[43] Rusli, M. (2017) The Effect of Animation in Multimedia Computer-Based Learning and Learning Style to the Learning Results. Turkish Online Journal of Distance Education, 18, 177-191.
https://doi.org/10.17718/tojde.340409
[44] Kafai, Y.B. and Vasudevan, V. (2015) Constructionist Gaming Beyond the Screen. Proceedings of the Workshop in Primary and Secondary Computing Education, London, 9-11 November 2015, 49-54.
https://doi.org/10.1145/2818314.2818334
[45] Oreta, A.W.C. and Balili, A.P. (2015) Demonstrating Students’ Skills on Integrating Knowledge of Math and Engineering in an Applied Programming Course in Civil Engineering. Computer Applications in Engineering Education, 23, 630-637.
https://doi.org/10.1002/cae.21637
[46] Wu, P. (2013) Education Appropriate for Game Programmers. Journal of Computing Sciences in Colleges, 28, 101-112.
[47] Denny, P., Luxton-Reilly, A., Craig, M. and Petersen, A. (2018) Improving Complex Task Performance Using a Sequence of Simple Practice Tasks. Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education, Larnaca, 2-4 July 2018, 4-9.
https://doi.org/10.1145/3197091.3197141
[48] Zhang, J., Smith, E., Caldwell, E.R. and Perkins, M. (2014) Learning and Practicing Decision Structures in a Game. Journal of Computing Sciences in Colleges, 29, 60-67.
[49] Hickey, T.J. (2013) Physics-Based 3D Game Design as a First Course in Computing. Journal of Computing Sciences in Colleges, 28, 35-41.
[50] Abazi-Bexheti, L., Kadriu, A. and Apostolova, M. (2018) Self Learning Trends in the Field of Introductory Programming. 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, 21-25 May 2018, 715-719.
https://doi.org/10.23919/MIPRO.2018.8400133
[51] Keuning, H., Heeren, B. and Jeuring, J. (2014) Strategy-Based Feedback in a Programming Tutor. Proceedings of the Computer Science Education Research Conference, Berlin, November 2014, 43-54.
https://doi.org/10.1145/2691352.2691356
[52] Elmaleh, J. and Shankararaman, V. (2017) Improving Student Learning in an Introductory Programming Course Using Flipped Classroom and Competency Framework. 2017 IEEE Global Engineering Education Conference (EDUCON), Athens, 25-28 April 2017, 49-55.
https://doi.org/10.1109/EDUCON.2017.7942823
[53] Karavirta, V. and Shaffer, C.A. (2013) JSAV: The JavaScript Algorithm Visualization Library. Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education, Canterbury, July 2013, 159-164.
https://doi.org/10.1145/2462476.2462487
[54] Shehane, R. and Sherman, S. (2014) Visual Teaching Model for Introducing Programming Languages. Journal of Instructional Pedagogy, 14, 1-8.
[55] Da Silva, T.R. and Da Silva Aranha, E.H. (2016) An Empirical Study of Online K-12 Education for Programming Games. 2016 IEEE 16th International Conference on Advanced Learning Technologies (ICALT), Austin, 25-28 July 2016, 255-259.
https://doi.org/10.1109/ICALT.2016.19
[56] Pawelczak, D. (2016) Benefits of a Testing Framework in Undergraduate C Programming Courses. Procedia-Social and Behavioral Sciences, 228, 215-221.
https://doi.org/10.1016/j.sbspro.2016.07.032
[57] Cabrera, I., Villalon, J. and Chavez, J. (2017) Blending Communities and Team-Based Learning in a Programming Course. IEEE Transactions on Education, 60, 288-295.
https://doi.org/10.1109/TE.2017.2698467
[58] Carter, A.S., Hundhausen, C.D. and Adesope, O. (2017) Blending Measures of Programming and Social Behavior into Predictive Models of Student Achievement in Early Computing Courses. ACM Transactions on Computing Education, 17, Article No. 12.
https://doi.org/10.1145/3120259
[59] Taylor, K. (2013) Can Utilizing Social Media and Visual Programming Increase Retention of Minorities in Programming Classes? 2013 IEEE Frontiers in Education Conference (FIE), Oklahoma City, 23-26 October 2013, 1046-1048.
[60] Ravitz, J., Stephenson, C., Parker, K. and Blazevski, J. (2017) Early Lessons from Evaluation of Computer Science Teacher Professional Development in Google’s CS4HS Program. ACM Transactions on Computing Education, 17, Article No. 21.
https://doi.org/10.1145/3077617
[61] Benotti, L., Martínez, M.C. and Schapachnik, F. (2014) Engaging High School Students Using Chatbots. Proceedings of the 2014 Conference on Innovation & Technology in Computer Science Education, Uppsala, 21-25 June 2014, 63-68.
https://doi.org/10.1145/2591708.2591728
[62] Timmermann, D., Kautz, C. and Skwarek, V. (2016) Evidence-Based Re-Design of an Introductory Course “Programming in C”. 2016 IEEE Frontiers in Education Conference (FIE), Erie, 12-15 October 2016, 1-5.
https://doi.org/10.1109/FIE.2016.7757492
[63] Baneres, D., Clariso, R., Jorba, J. and Serra, M. (2014) Experiences in Digital Circuit Design Courses: A Self-Study Platform for Learning Support. IEEE Transactions on Learning Technologies, 7, 360-374.
https://doi.org/10.1109/TLT.2014.2320919
[64] Malan, D.J. (2013) From Cluster to Cloud to Appliance. Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education, Canterbury, 1-3 July 2013, 88-92.
https://doi.org/10.1145/2462476.2462491
[65] Ettershank, M., Nel, H. and Von Solms, S. (2017) Integration of a Robotics Programme into a South African Secondary School Curriculum: A Case Study. 2017 IEEE AFRICON, Cape Town, 18-20 September 2017, 701-706.
https://doi.org/10.1109/AFRCON.2017.8095568
[66] Boese, E. (2016) Just-In-Time Learning for the Just Google It Era. Proceedings of the 47th ACM Technical Symposium on Computing Science Education, Memphis, 2-5 February 2016, 341-345.
https://doi.org/10.1145/2839509.2844583
[67] Lo, Y.J., Lin, C.C., Hou, L., Wu, J.D., Feng, Y.C. and Lee, G.C. (2013) Learning Beginning Programming with Cloud-Based Cloze Programming Practices. 2013 Learning and Teaching in Computing and Engineering, Macau, 21-24 March 2013, 235-236.
https://doi.org/10.1109/LaTiCE.2013.18
[68] Beynon, M., Boyatt, R., Foss, J., Hall, C., Hudnott, E., Russ, S., et al. (2015) Making Construals as a New Digital Skill for Learning. Proceedings of the 12th International Conference on Cognition and Exploratory Learning in the Digital Age, Greater Dublin, 24-26 October 2015, 363-368.
[69] Plaza, P., Sancristobal, E., Carro, G., Castro, M. and Blazquez, M. (2018) Scratch Day to Introduce Robotics. 2018 IEEE Global Engineering Education Conference (EDUCON), Santa Cruz de Tenerife, 17-20 April 2018, 208-216.
https://doi.org/10.1109/EDUCON.2018.8363230
[70] da Silva Ribeiro, R., de Oliveira Brandão, L., Machado Faria, T.V. and Franco Brandao, A.A. (2014) Programming Web-Course Analysis: How to Introduce Computer Programming? 2014 IEEE Frontiers in Education Conference (FIE) Proceedings, Madrid, 22-25 October 2014, 1-8.
https://doi.org/10.1109/FIE.2014.7044140
[71] De Kereki, I.F. and Manataki, A. (2016) “Code Yourself” and “A Programar”: A Bilingual MOOC for Teaching Computer Science to Teenagers. 2016 IEEE Frontiers in Education Conference (FIE), Erie, 12-15 October 2016, 1-9.
https://doi.org/10.1109/FIE.2016.7757569
[72] de Oliveira Fassbinder, A.G., Gonçalves Botelho, T.G., Martins, R.J. and Barbosa, E.F. (2015) Applying Flipped Classroom and Problem-Based Learning in a CS1 Course. 2015 IEEE Frontiers in Education Conference, El Paso, 21-24 October 2015, 1-7.
https://doi.org/10.1109/FIE.2015.7344223
http://ieeexplore.ieee.org/xpl/mostRecentIssue.jsp?punumber=7344010
[73] Yang, K.-M., Tsai, C.-H., Lee, L.-C. and Chen, C.-T. (2016) The Employment of Online Self-Learning Coding Course to Enhance Logical Reasoning Ability for Fifth and Sixth Grader Students. 2016 International Conference on Applied System Innovation (ICASI), Okinawa, 26-30 May 2016, 1-4.
https://doi.org/10.1109/ICASI.2016.7539890
[74] Kurhila, J. and Vihavainen, A. (2015) A Purposeful MOOC to Alleviate Insufficient CS Education in Finnish Schools. ACM Transactions on Computing Education, 15, Article No. 10.
https://doi.org/10.1145/2716314
[75] Sancho, M.R., Alexandrova, N. and Gonzalez, M. (2016) Addressing HPC Skills Shortages with Parallel Computing MOOC. 2015 International Conference on Interactive Collaborative and Blended Learning (ICBL), Mexico City, 9-11 December 2015, 86-93.
https://doi.org/10.1109/ICBL.2015.7387641
[76] Falkner, K., Falkner, N., Szabo, C. and Vivian, R. (2016) Applying Validated Pedagogy to MOOCs: An Introductory Programming Course with Media Computation. Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, Arequipa, 11-13 July 2016, 326-331.
https://doi.org/10.1145/2899415.2899429
[77] Song, S.H., Antonelli, M., Fung, T.W.K., Armstrong, B.D., Chong, A., Lo, A., et al. (2018) Developing and Assessing MATLAB Exercises for Active Concept Learning. IEEE Transactions on Education, 62, 2-10.
https://doi.org/10.1109/TE.2018.2811406
[78] Gordon, S.I., Demmel, J., Destefano, L. and Rivera, L. (2015) Extending Access to HPC Skills through a Blended Online Course. Proceedings of the 2015 XSEDE Conference: Scientific Advancements Enabled by Enhanced Cyberinfrastructure, St. Louis, 26-30 July 2015, Article No. 15.
https://doi.org/10.1145/2792745.2792760
[79] Warren, J., Rixner, S., Greiner, J. and Wong, S. (2014) Facilitating Human Interaction in an Online Programming Course. Proceedings of the 45th ACM Technical Symposium on Computer Science Education, Atlanta, 5-8 March 2014, 665-670.
https://doi.org/10.1145/2538862.2538893
[80] Tyler, B. and Abdrakhmanova, M. (2016) Flipping the CS1 and CS2 Classrooms in Central Asia. 2016 IEEE Frontiers in Education Conference (FIE), Erie, 12-15 October 2016, 1-5.
https://doi.org/10.1109/FIE.2016.7757739
[81] Cox, C. and Murphy, M.A. (2015) Hands-on, Web Service Based, Software Architecture Lab Component for Software Engineering Course. Journal of Computing Sciences in Colleges, 30, 74-80.
[82] Leppänen, L., Vapaakallio, L. and Vihavainen, A. (2016) Illusion of Progress Is Moar Addictive than Cat Pictures. Proceedings of the 3rd (2016) ACM Conference on Learning @ Scale, Edinburgh, 25-26 April 2016, 133-136.
https://doi.org/10.1145/2876034.2893388
[83] Gordon, S.I., Demmel, J., Destefano, L. and Rivera, L. (2016) Implementing a Collaborative Online Course to Extend Access to HPC Skills. Computing in Science & Engineering, 18, 73-79.
https://doi.org/10.1109/MCSE.2016.6
[84] Marshall, L. (2013) Leveraging Online Courses to Increase Student Success in a Computer Science Degree. Proceedings of the 3rd Computer Science Education Research Conference on Computer Science Education Research, Arnhem, 4-5 April 2013, 9-16.
[85] Sanchez, I.A. and Isaias, P. (Eds.) (2014) Proceedings of the International Conference on Mobile Learning 2014 (10th, Madrid, February 28-March 2 2014). International Association for Development of the Information Society, Portugal.
[86] Vihavainen, A., Luukkainen, M. and Kurhila, J. (2013) MOOC as Semester-Long Entrance Exam. Proceedings of the 14th annual ACM SIGITE Conference on Information Technology Education, Orlando, 10-12 October 2013, 177-182.
https://doi.org/10.1145/2512276.2512305
[87] Lee, M., Starr-Mitchell, K., Nunes, L., Black, M. and Schmidt, T. (2018) MOOCs as Facilitator: Online Learning and Women in STEM. 2017 International Conference on Engineering, Technology and Innovation (ICE/ITMC), Madeira, 27-29 June 2017, 482-486.
https://doi.org/10.1109/ICE.2017.8279924
[88] Nylén, A., Thota, N., Eckerdal, A., Kinnunen, P., Butler, M. and Morgan, M. (2015) Multidimensional Analysis of Creative Coding MOOC Forums. Proceedings of the 15th Koli Calling Conference on Computing Education Research, Koli, 19-22 November 2015, 137-141.
https://doi.org/10.1145/2828959.2828971
[89] Schofield, E., Erlinger, M. and Dodds, Z. (2014) MyCS: CS for Middle-Years Students and Their Teachers. Proceedings of the 45th ACM Technical Symposium on Computer Science Education, Atlanta, March 2014, 337-342.
https://doi.org/10.1145/2538862.2538901
[90] Su, X., Qiu, J., Wang, T. and Zhao, L. (2016) Optimization and Improvements of a Moodle-Based Online Learning System for C Programming. 2016 IEEE Frontiers in Education Conference (FIE), Erie, 12-15 October 2016, 1-8.
https://doi.org/10.1109/FIE.2016.7757699
[91] Matthies, C., Treffer, A. and Uflacker, M. (2017) Prof. CI: Employing Continuous Integration Services and Github Workflows to Teach Test-Driven Development. 2017 IEEE Frontiers in Education Conference (FIE), Indianapolis, 18-21 October 2017, 1-8.
https://doi.org/10.1109/FIE.2017.8190589
[92] Shaw, A. (2013) Teaching Students to Design and Implement Social Networks Using MVC as a Capstone Experience. 2013 10th International Conference on Information Technology: New Generations, Las Vegas, 15-17 April 2013, 747-748.
https://doi.org/10.1109/ITNG.2013.137
[93] Durak, G. and Ataizi, M. (2016) The ABC’s of Online Course Design According to Addie Model. Universal Journal of Educational Research, 4, 2084-2091.
https://doi.org/10.13189/ujer.2016.040920
[94] Staubitz, T., Teusner, R. and Meinel, C. (2018) Towards a Repository for Open Auto-Gradable Programming Exercises. 2017 IEEE 6th International Conference on Teaching, Assessment, and Learning for Engineering (TALE), Hong Kong, 12-14 December 2017, 66-73.
https://doi.org/10.1109/TALE.2017.8252306
[95] Goel, A.K. and Joyner, D.A. (2017) Using AI to Teach AI: Lessons from an Online AI Class. AI Magazine, 38, 48-59.
https://doi.org/10.1609/aimag.v38i2.2732
[96] Birch, G., Fischer, B. and Poppleton, M. (2016) Using Fast Model-Based Fault Localisation to Aid Students in Self-Guided Program Repair and to Improve Assessment. Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, Arequipa, July 2016, 168-173.
https://doi.org/10.1145/2899415.2899433
[97] Alhazbi, S. (2017) Using Flipped Classroom Approach to Teach Computer Programming. 2016 IEEE International Conference on Teaching, Assessment, and Learning for Engineering (TALE), Bangkok, 7-9 December 2016, 441-444.
https://doi.org/10.1109/TALE.2016.7851837
[98] Mora, H., Ferrández, A., Gil, D. and Peral, J. (2017) A Computational Method for Enabling Teaching-Learning Process in Huge Online Courses and Communities. The International Review of Research in Open and Distributed Learning, 18, 226-246.
https://doi.org/10.19173/irrodl.v18i1.2637
[99] Anderson, P.E., Turner, C., Dierksheide, J. and McCauley, R. (2015) An Extensible Online Environment for Teaching Data Science Concepts through Gamification. 2014 IEEE Frontiers in Education Conference (FIE) Proceedings, Madrid, 22-25 October 2014, 1-8.
https://doi.org/10.1109/FIE.2014.7044205
[100] Gamble, R.F. and Hale, M.L. (2013) Assessing Individual Performance in Agile Undergraduate Software Engineering Teams. 2013 IEEE Frontiers in Education Conference (FIE), Oklahoma City, 23-26 October 2013, 1678-1684.
https://doi.org/10.1109/FIE.2013.6685123
[101] Böhmer, C., Meuth, H., Roznawski, N. and Beck-Meuth, E.M. (2013) Designing a Blended-Learning Bachelor’s Degree in Electrical Engineering for Non-Traditional Students. 2013 IEEE Global Engineering Education Conference (EDUCON), Berlin, 13-15 March 2013, 924-927.
https://doi.org/10.1109/EduCon.2013.6530217
[102] Bernik, A., Radošević, D. and Bubaš, G. (2017) Introducing Gamification into e-Learning University Courses. 2017 40th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, 22-26 May 2017, 711-716.
https://doi.org/10.23919/MIPRO.2017.7973515
[103] Petit, J., Roura, S., Carmona, J., Cortadella, J., Duch, J., Gimnez, O., et al. (2018) Jutge.org: Characteristics and Experiences. IEEE Transactions on Learning Technologies, 11, 321-333.
https://doi.org/10.1109/TLT.2017.2723389
[104] Su, X., Wang, T., Qiu, J. and Zhao, L. (2015) Motivating Students with New Mechanisms of Online Assignments and Examination to Meet the MOOC Challenges for Programming. 2015 IEEE Frontiers in Education Conference (FIE), El Paso, 21-24 October 2015, 1-6.
https://doi.org/10.1109/FIE.2015.7344337
[105] Glassman, E.L., Scott, J., Singh, R., Guo, P.J. and Miller, R.C. (2015) OverCode: Visualizing Variation in Student Solutions to Programming Problems at Scale. ACM Transactions on Computer-Human Interaction, 22, Article No. 7.
https://doi.org/10.1145/2699751
[106] Thongkoo, K., Panjaburee, P. and Daungcharone, K. (2017) An Inquiry Blended SECI Model-Based Learning Support Approach for Promoting Perceptions and Learning Achievement of University Students. 2017 6th IIAI International Congress on Advanced Applied Informatics (IIAI-AAI), Hamamatsu, 9-13 July 2017, 527-532.
https://doi.org/10.1109/IIAI-AAI.2017.75
[107] Amaratunga, M., Wickramasinghe, G., Deepal, M., Perera, O., De Silva, D. and Rajapakse, S. (2013) An Interactive Programming Assistance Tool (iPAT) for Instructors and Novice Programmers. 2013 8th International Conference on Computer Science & Education, Colombo, 26-28 April 2013, 680-684.
https://doi.org/10.1109/ICCSE.2013.6553995
[108] Othman, M., Zain, N.M., Mazlan, U.H. and Zainordin, R. (2016) Assessing Cognitive Enhancements in Introductory Programming through Online Collaborative Learning System. 2015 International Symposium on Mathematical Sciences and Computing Research (iSMSC), Ipoh, 19-20 May 2015, 7-12.
https://doi.org/10.1109/ISMSC.2015.7594019
[109] Hulsey, C., Pence, T.B. and Hodges, L.F. (2014) Camp CyberGirls: Using a Virtual World to Introduce Computing Concepts to Middle School Girls. Proceedings of the 45th ACM Technical Symposium on Computer Science Education, Atlanta, 5-8 March 2014, 331-336.
https://doi.org/10.1145/2538862.2538881
[110] Malliarakis, C., Satratzemi, M. and Xinogalos, S. (2017) CMX: The Effects of an Educational MMORPG on Learning and Teaching Computer Programming. IEEE Transactions on Learning Technologies, 10, 219-235.
https://doi.org/10.1109/TLT.2016.2556666
[111] Maravi, S., Pinter, R. and Čisar, P. (2014) Code Hunt—“Hunting” to Learn Programming. 2014 IEEE 15th International Symposium on Computational Intelligence and Informatics (CINTI), Budapest, 19-21 November 2014, 329-333.
https://doi.org/10.1109/CINTI.2014.7028698
[112] Edwards, S.H. and Murali, K.P. (2017) CodeWorkout: Short Programming Exercises with Builtin Data Collection. Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education, Bologna, 3-5 June 2017, 188-193.
https://doi.org/10.1145/3059009.3059055
[113] Nag, S., Katz, J.G. and Saenz-Otero, A. (2013) Collaborative Gaming and Competition for CS-STEM Education Using SPHERES Zero Robotics. Acta Astronautica, 83, 145-174.
https://doi.org/10.1016/j.actaastro.2012.09.006
[114] Anderson, P.V., Heckman, S., Vouk, M., Wright, D., Carter, M., Burge, J.E., et al. (2015) CS/SE Instructors Can Improve Student Writing without Reducing Class Time Devoted to Technical Content: Experimental Results. 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, Florence, 16-24 May 2015, 455-464.
https://doi.org/10.1109/ICSE.2015.178
[115] Lu, X., Zheng, D. and Liu, L. (2018) Data Driven Analysis on the Effect of Online Judge System. 2017 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Exeter, 21-23 June 2017, 573-577.
https://doi.org/10.1109/iThings-GreenCom-CPSCom-SmartData.2017.90
[116] Plaue, C. and Cook, L.R. (2015) Data Journalism: Lessons Learned While Designing an Interdisciplinary Service Course. Proceedings of the 46th ACM Technical Symposium on Computer Science Education, Kansas City, 4-7 February 2015, 126-131.
https://doi.org/10.1145/2676723.2677263
[117] Abdool, A., Ringis, D., Maharajh, A., Sirju, L. and Abdool, H. (2017) DataRPG: Improving Student Motivation in Data Science through Gaming Elements. 2017 IEEE Frontiers in Education Conference (FIE), Indianapolis, 18-21 October 2017, 1-5.
https://doi.org/10.1109/FIE.2017.8190442
[118] Pearce, D.J. and Groves, L. (2015) Designing a Verifying Compiler: Lessons Learned from Developing Whiley. Science of Computer Programming, 113, 191-220.
https://doi.org/10.1016/j.scico.2015.09.006
[119] Fenwick, J.B., Kurtz, B.L., Meznar, P., Phillips, R. and Weidner, A. (2013) Developing a Highly Interactive Ebook for CS Instruction. Proceeding of the 44th ACM Technical Symposium on Computer Science Education, Denver, 6-9 March 2013, 135-140.
https://doi.org/10.1145/2445196.2445241
[120] Akkuş Çakır, N., Gass, A., Foster, A. and Lee, F.J. (2017) Development of a Game-Design Workshop to Promote Young Girls’ Interest towards Computing through Identity Exploration. Computers & Education, 108, 115-130.
https://doi.org/10.1016/j.compedu.2017.02.002
[121] Esper, S., Foster, S., Griswold, W., Herrera, C. and Snyder, W. (2014) CodeSpells: Bridging Educational Language Features with Industry-Standard Languages. Proceedings of the 14th Koli Calling International Conference on Computing Education Research, Koli, 20-23 November 2014, 5-14.
https://doi.org/10.1145/2674683.2674684
[122] Jin, G., Tu, M., Kim, T.H., Heffron, J. and White, J. (2018) Game Based Cybersecurity Training for High School Students. Proceedings of the 49th ACM Technical Symposium on Computer Science Education, Baltimore, 21-24 February 2018, 68-73.
https://doi.org/10.1145/3159450.3159591
[123] Mustapha, A., Samsudin, N.A., Arbaiy, N., Mohamed, R. and Hamid, I.R. (2016) Generic Assessment Rubrics for Computer Programming Courses. Turkish Online Journal of Educational Technology, 15, 53-61.
[124] Kafai, Y. and Vasudevan, V. (2015) Hi-Lo Tech Games. Proceedings of the 14th International Conference on Interaction Design and Children, Boston, 21-24 June 2015, 130-139.
https://doi.org/10.1145/2771839.2771853
[125] Yampolsky, M. and Scacchi, W. (2016) Learning Game Design and Software Engineering through a Game Prototyping Experience. Proceedings of the 5th International Workshop on Games and Software Engineering, Austin, 14-22 May 2016, 15-21.
https://doi.org/10.1145/2896958.2896965
[126] Howland, K. and Good, J. (2015) Learning to Communicate Computationally with Flip: A Bi-Modal Programming Language for Game Creation. Computers & Education, 80, 224-240.
https://doi.org/10.1016/j.compedu.2014.08.014
[127] Feng, A., Gardner, M. and Chun Feng, W. (2017) Parallel Programming with Pictures Is a Snap! Journal of Parallel and Distributed Computing, 105, 150-162.
https://doi.org/10.1016/j.jpdc.2017.01.018
[128] Jusoh, S. and Al Fawareh, H.M. (2017) A study of Facebook Use among Undergraduate Students in Jordan. International Journal of Advanced and Applied Sciences, 4, 53-57.
https://doi.org/10.21833/ijaas.2017.04.009
[129] Dazo, S.L., Stepanek, N.R., Fulkerson, R. and Dorn, B. (2016) An Empirical Analysis of Video Viewing Behaviors in Flipped CS1 Courses. ACM Inroads, 7, 99-105.
https://doi.org/10.1145/3007625
[130] Janzen, D.S., Clements, J. and Hilton, M. (2013) An Evaluation of Interactive test-Driven Labs with WebIDE in CS0. 2013 35th International Conference on Software Engineering (ICSE), San Francisco, 18-26 May 2013, 1090-1098.
https://doi.org/10.1109/ICSE.2013.6606659
[131] Indi, T.S. (2017) An Experience Report of Flipped Classroom Strategy Implementation for Java Programming Course. 2016 IEEE Eighth International Conference on Technology for Education (T4E), Mumbai, 2-4 December 2016, 240-241.
https://doi.org/10.1109/T4E.2016.059
[132] España-Boquera, S., Guerrero-López, D., Hermida-Pérez, A., Silva, J. and Benlloch-Dualde, J.V. (2017) Analyzing the Learning Process (in Programming) by Using Data Collected from an Online IDE. 2017 16th International Conference on Information Technology Based Higher Education and Training (ITHET), Ohrid, 10-12 July 2017, 1-4.
https://doi.org/10.1109/ITHET.2017.8067822
[133] Noor, N.M., Harun, J. and Aris, B. (2014) Application of the Pedagogical and Andragogical Model in Web-Based Learning Instruction among Non-Major Computer Science Students’ Learning Programming. 2014 International Conference on Teaching and Learning in Computing and Engineering, Kuching, 11-13 April 2014, 106-111.
https://doi.org/10.1109/LaTiCE.2014.27
[134] Rehberger, S., Frank, T. and Vogel-Heuser, B. (2013) Benefit of E-Learning Teaching C-Programming and Software Engineering in a Very Large Mechanical Engineering Beginners Class. 2013 IEEE Global Engineering Education Conference (EDUCON), Berlin, 13-15 March 2013, 1055-1061.
https://doi.org/10.1109/EduCon.2013.6530238
[135] Marasovic, K., Mihaljevic, B. and Bacic, I. (2016) Distance Delivery and Technology-Enhanced Learning in Information Technology and Programming Courses at RIT Croatia. 2016 39th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, 30 May-3 June 2016, 865-870.
https://doi.org/10.1109/MIPRO.2016.7522261
[136] Pugsee, P. (2017) Effects of Using Flipped Classroom Learning in Object-Oriented Analysis and Design Course. 2017 10th International Conference on Ubi-Media Computing and Workshops (Ubi-Media), Pattaya, 1-4 August 2017, 1-6.
https://doi.org/10.1109/UMEDIA.2017.8074130
[137] Auvinen, T. (2015) Harmful Study Habits in Online Learning Environments with Automatic Assessment. 2015 International Conference on Learning and Teaching in Computing and Engineering, Taipei, 9-12 April 2015, 50-57.
https://doi.org/10.1109/LaTiCE.2015.31
[138] Seeling, P. and Eickholt, J. (2017) Levels of Active Learning in Programming Skill Acquisition: From Lecture to Active Learning Rooms. 2017 IEEE Frontiers in Education Conference (FIE), Indianapolis, 18-21 October 2017, 1-5.
https://doi.org/10.1109/FIE.2017.8190525
[139] Ma, L., Hu, J., Chen, Y., Liu, X. and Li, W. (2017) Teaching Reform and Practice of the Basic Computer Course Based on Flipped Classroom. 2017 12th International Conference on Computer Science and Education (ICCSE), Houston, 22-25 August 2017, 713-716.
https://doi.org/10.1109/ICCSE.2017.8085586
[140] Aarabi, P., Norouzi, N., Wu, J. and Spears, M. (2016) 7 Surprising Lessons Learned from Teaching iOS Programming to 30,000+ MOOC Students. 2016 IEEE Frontiers in Education Conference (FIE), Erie, 12-15 October 2016, 1-4.
https://doi.org/10.1109/FIE.2016.7757448
[141] Ahmadi, N. and Jazayeri, M. (2014) Analyzing the Learning Process in Online Educational Game Design: A Case Study. 2014 23rd Australian Software Engineering Conference, Milsons Point, 7-10 April 2014, 84-93.
https://doi.org/10.1109/ASWEC.2014.34
[142] Teusner, R., Hille, T. and Hagedorn, C. (2017) Aspects on Finding the Optimal Practical Programming Exercise for MOOCs. 2017 IEEE Frontiers in Education Conference (FIE), Indianapolis, 18-21 October 2017, 1-8.
https://doi.org/10.1109/FIE.2017.8190587
[143] Quinn, B.A., DuBow, W.M. and Ward, J.H. (2018) Broadening Participation in Computing via Professional Development for Community College CS/IT Faculty. Proceedings of the 49th ACM Technical Symposium on Computer Science Education, Baltimore, 21-24 February 2018, 789-793.
https://doi.org/10.1145/3159450.3159546
[144] Joyner, D.A. (2017) Congruency, Adaptivity, Modularity, and Personalization: Four Experiments in Teaching Introduction to Computing. Proceedings of the 4th (2017) ACM Conference on Learning @ Scale, Cambridge, April 2017, 307-310.
https://doi.org/10.1145/3051457.3054011
[145] Gaspar, A., Torsella, J., Honken, N., Sohoni, S. and Arnold, C. (2016) Differences in the Learning Principles Dominating Student-Student vs. Student-Instructor Interactions While Working on Programming Tasks. Proceedings of the 47th ACM Technical Symposium on Computing Science Education, Memphis, 2-5 February 2016, 255-260.
https://doi.org/10.1145/2839509.2844627
[146] Zhang, M., Zhu, J., Zou, Y., Yan, H., Hao, D. and Liu, C. (2015) Educational Evaluation in the PKU SPOC Course ‘Data Structures and Algorithms. Proceedings of the 2nd (2015) ACM Conference on Learning @ Scale, Vancouver, 14-18 March 2015, 237-240.
https://doi.org/10.1145/2724660.2728666
[147] Lou Maher, M., Latulipe, C., Lipford, H. and Rorrer, A. (2015) Flipped Classroom Strategies for CS Education. Proceedings of the 46th ACM Technical Symposium on Computer Science Education, Kansas City, February 2015, 218-223.
https://doi.org/10.1145/2676723.2677252
[148] Pe Rosiene, C. and Rosiene, J.A. (2015) Flipping a Programming Course: The Good, the Bad, and the Ugly. 2015 IEEE Frontiers in Education Conference (FIE), El Paso, 21-24 October 2015, 1-3.
https://doi.org/10.1109/FIE.2015.7344151
[149] Henno, J., Jaakkola, H. and Makela, J. (2014) From Learning to E-Learning to M-Learning to C-Learning to...? 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, 26-30 May 2014, 616-622.
https://doi.org/10.1109/MIPRO.2014.6859641
[150] Miller, H., Haller, P., Rytz, L. and Odersky, M. (2014) Functional Programming for All! Scaling a MOOC for Students and Professionals Alike. Companion Proceedings of the 36th International Conference on Software Engineering, Hyderabad, 31 May-7 June 2014, 256-263.
https://doi.org/10.1145/2591062.2591161
[151] Drosos, I., Guo, P.J. and Parnin, C. (2017) HappyFace: Identifying and Predicting Frustrating Obstacles for Learning Programming at Scale. 2017 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), Raleigh, 11-14 October 2017, 171-179.
https://doi.org/10.1109/VLHCC.2017.8103465
[152] Sharma, K., Jermann, P. and Dillenbourg, P. (2015) Identifying Styles and Paths toward Success in MOOCs. Proceedings of the 8th International Conference on Educational Data Mining, Madrid, 26-29 Jun 2015, 408-411.
[153] Fajar, N.K., Santoso, H.B., Aji, R.F. and Prihandoko (2017) IT Lecturers’ Perceptions on the Use of Synchronous and Asynchronous Communication Tools in an Online Distance Education Program. 2017 7th World Engineering Education Forum (WEEF), Kuala Lumpur, 13-16 November 2017, 366-370.
https://doi.org/10.1109/WEEF.2017.8467182
[154] Lacher, L.L. and Lewis, M.C. (2015) The Effectiveness of Video Quizzes in a Flipped Class. Proceedings of the 46th ACM Technical Symposium on Computer Science Education, Kansas City, 4-7 February 2015, 224-228.
https://doi.org/10.1145/2676723.2677302
[155] Kulkarni, C., Wei, K.P., Le, H., Chia, D., Papadopoulos, K., Cheng, J., et al. (2013) Peer and Self Assessment in Massive Online Classes. ACM Transactions on Computer-Human Interaction, 20, Article No. 33.
https://doi.org/10.1145/2505057
[156] Wu, H., Liu, Y., Qiu, L. and Liu, Y. (2017) Research on Network Learning Platform and Its Application in Teaching. 2016 10th International Conference on Software, Knowledge, Information Management & Applications (SKIMA), Chengdu, 15-17 December 2016, 387-391.
https://doi.org/10.1109/SKIMA.2016.7916252
[157] Harvie, D.P., Major, K.E. and Estes, T.T. (2018) Use of Commercial Online Training to Augment Programming Language Education. Proceedings of the 19th Annual SIG Conference on Information Technology Education, Fort Lauderdale, 3-6 October 2018, 89.
https://doi.org/10.1145/3241815.3241832
[158] Billingsley, W. and Steel, J. (2013) A Comparison of Two Iterations of a Software Studio Course Based on Continuous Integration. Proceedings of the 18th ACM Conference on Innovation and Technology in Computer Science Education, Canterbury, 1-3 July 2013, 213-218.
https://doi.org/10.1145/2462476.2465592
[159] Kropp, M. and Meier, A. (2016) Collaboration and Human Factors in Software Development: Teaching Agile Methodologies Based on Industrial Insight. 2016 IEEE Global Engineering Education Conference (EDUCON), Abu Dhabi, 10-13 April 2016, 1003-1011.
https://doi.org/10.1109/EDUCON.2016.7474675
[160] Anderson, R.C. and Romney, G.W. (2013) Comparison of TwoVirtual Education Labs: Closing the Gap between Online and Brick-and-Mortar Schools. 2013 12th International Conference on Information Technology Based Higher Education and Training (ITHET), Antalya, 10-12 October 2013, 1-7.
https://doi.org/10.1109/ITHET.2013.6671035
[161] Matthíasdóttir, á. and Arnalds, H. (2016) E-Assessment: Students’ Point of View. Proceedings of the 17th International Conference on Computer Systems and Technologies 2016, Palermo, 23-24 June 2016, 369-374.
https://doi.org/10.1145/2983468.2983497
[162] Barreto, F., Benitti, V. and Sommariva, L. (2015) Evaluation of a Game Used to Teach Usability to Undergraduate Students in Computer Science. Journal of Usability Studies, 11, 21-39.
[163] Sioson, A.A. (2013) Experiences on the Use of an Automatic C++ Solution Grader System. IISA 2013—4th International Conference on Information, Intelligence, Systems and Applications, Piraeus, 10-12 July 2013, 1-6.
https://doi.org/10.1109/IISA.2013.6623681
[164] Holton, C. and Wallace, S.A. (2013) Investigating the Use of an Online Assignment Submission and Assessment System in the {CS} Classroom. Journal of Computing Sciences in Colleges, 29, 123-129.
[165] Rubio-Sánchez, M., Kinnunen, P., Pareja-Flores, C. and Velázquez-Iturbide, á. (2014) Student Perception and Usage of an Automated Programming Assessment Tool. Computers in Human Behavior, 31, 453-460.
https://doi.org/10.1016/j.chb.2013.04.001
[166] Gibson, B. and Bell, T. (2013) Evaluation of Games for Teaching Computer Science. Proceedings of the 8th Workshop in Primary and Secondary Computing Education, Aarhus, 11-13 November 2013, 51-60.
https://doi.org/10.1145/2532748.2532751
[167] Grossman, M., Aziz, M., Chi, H., Tibrewal, A., Imam, S. and Sarkar, V. (2017) Pedagogy and Tools for Teaching Parallel Computing at the Sophomore Undergraduate Level. Journal of Parallel and Distributed Computing, 105, 18-30.
https://doi.org/10.1016/j.jpdc.2016.12.026
[168] Repenning, A., Basawapatna, A., Assaf, D., Maiello, C. and Escherle, N. (2016) Retention of Flow: Evaluating a Computer Science Education Week Activity. Proceedings of the 47th ACM Technical Symposium on Computing Science Education, Memphis, 2-5 February 2016, 633-638.
https://doi.org/10.1145/2839509.2844597
[169] Korkmaz, Ö. (2016) The Effect of Scratch and Lego Mindstorms Ev3-Based Programming Activities on Academic Achievement, Problem-Solving Skills and Logical-Mathematical Thinking Skills of Students. Malaysian Online Journal of Educational Sciences, 4, 73-88.

Copyright © 2022 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.