Skip to main content

Learning to Code and Collaborate in a Web Environment

  • Conference paper
  • First Online:
Advances in Human Factors in Training, Education, and Learning Sciences (AHFE 2018)

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 785))

Included in the following conference series:

Abstract

Programming is a core skill that all computer science students should adopt, but mastering that skill is a demanding task. Educational institutions must find a way to alleviate problems associated with learning programming and to offer a service to an increased number of applicants. Part of these efforts is the use of Web tools in acquiring programming skills. The Web is a social platform and is designed to promote communication, collaboration, and sharing. Use of these tools in teaching programming prepares students for work in a distributed work environment but also opens up a possibility of improving learning process through new forms of interaction between students and lecturers. The aim of this paper is to provide an overview of Web programming tools with an emphasis on collaborative editors and discuss challenges they are addressing as well as possibilities of their application in the learning environment. As a follow up, a new taxonomy of programming learning tools is proposed to facilitate the comparison of these tools and selection of a suitable one for the particular learning activity.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 149.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://coderpad.io/.

  2. 2.

    https://codepen.io/#.

  3. 3.

    https://repl.it/.

  4. 4.

    https://www.codewars.com/.

  5. 5.

    https://ideone.com/.

  6. 6.

    https://codeanywhere.com.

  7. 7.

    https://c9.io.

  8. 8.

    https://codeboard.io/.

  9. 9.

    http://codingbat.com/java.

  10. 10.

    https://www.codehunt.com/.

  11. 11.

    www.visualstudio.com.

  12. 12.

    https://codeshare.io/.

References

  1. Simon, B., Lister, R., Fincher, S.: Multi-institutional computer science education research: a review of recent studies of novice understanding. In: 36th Annual Frontiers in Education Conference, pp. 12–17. IEEE (2009)

    Google Scholar 

  2. Watson, C., Li, F.W.: Failure rates in introductory programming revisited. In: Proceedings of the 2014 Conference on Innovation & Technology in Computer Science Education, pp. 39–44. ACM (2014)

    Google Scholar 

  3. Lahtinen, E., Ala-Mutka, K., Järvinen, H.M.: A study of the difficulties of novice programmers. ACM SIGCSE Bull. 37(3), 14–18 (2005)

    Article  Google Scholar 

  4. Gomes, A., Mendes, A.J.: Learning to program-difficulties and solutions. In: International Conference on Engineering Education–ICEE (2007)

    Google Scholar 

  5. Winslow, L.E.: Programming pedagogy—a psychological overview. ACM SIGCSE Bull. 28(3), 17–22 (1996)

    Article  Google Scholar 

  6. Ben-Ari, M.: Constructivism in computer science education. ACM SIGCSE Bull. 30(1), 257–261 (1998)

    Article  Google Scholar 

  7. Jenkins, T., Davy, J.: Diversity and motivation in introductory programming. Innov. Teach. Learn. Inf. Comput. Sci. 1(1), 1–9 (2002)

    Google Scholar 

  8. Sorva, J., Karavirta, V., Malmi, L.: A review of generic program visualization systems for introductory programming education. ACM Trans. Comput. Educ. (TOCE) 13(4), 15 (2013)

    Google Scholar 

  9. Valentine, D.W.: CS educational research: a meta-analysis of SIGCSE technical symposium proceedings. ACM SIGCSE Bull. 36(1), 255–259 (2004)

    Article  Google Scholar 

  10. Sheard, J., Simon, S., Hamilton, M., Lönnberg, J.: Analysis of research into the teaching and learning of programming. In: Proceedings of the Fifth International Workshop on Computing Education Research Workshop, pp. 93–104. ACM (2009)

    Google Scholar 

  11. Kelleher, C., Pausch, R.: Lowering the barriers to programming: a taxonomy of programming environments and languages for novice programmers. ACM Comput. Surv. (CSUR) 37(2), 83–137 (2005)

    Article  Google Scholar 

  12. Feurzeig, W., Papert, S.A., Lawler, B.: Programming-languages as a conceptual framework for teaching mathematics. Interact. Learn. Environ. 19(5), 487–501 (2011)

    Article  Google Scholar 

  13. Guzdial, M.: Programming environments for novices. In: Computer Science Education Research, pp. 127–154 (2004)

    Google Scholar 

  14. Pattis, R.E.: Karel the Robot: A Gentle Introduction to the Art of Programming. Wiley, New York (1981)

    Google Scholar 

  15. Bergin, J., Stehlik, M., Roberts, J., Pattis, R.: Karel J. Robot: A Gentle Introduction to the Art of Object-Oriented Programming in Java. Dream Songs, Redwood City (2005)

    Google Scholar 

  16. Kasurinen, J., Purmonen, M., Nikula, U.: A study of visualization in introductory programming. In: 20th Annual Psychology of Programming Interest Group Conference, PPIG (2008)

    Google Scholar 

  17. Xinogalos, S., Satratzemi, M., Dagdilelis, V.: An introduction to object-oriented programming with a didactic microworld: objectKarel. Comput. Educ. 47(2), 148–171 (2006)

    Article  Google Scholar 

  18. Kölling, M., Quig, B., Patterson, A., Rosenberg, J.: The BlueJ system and its pedagogy. Comput. Sci. Educ. 13(4), 249–268 (2003)

    Article  Google Scholar 

  19. Cooper, S., Dann, W., Pausch, R.: Alice: a 3-D tool for introductory programming concepts. J. Comput. Sci. Coll. 15(5), 107–116 (2000). Alice: a 3-D tool for introductory programming concepts

    Google Scholar 

  20. Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Kafai, Y.: Scratch: programming for all. Commun. ACM 52(11), 60–67 (2009)

    Article  Google Scholar 

  21. Radošević, D., Orehovački, T., Lovrenčić, A.: Verificator: educational tool for learning programming. Inform. Educ. 8(2), 261–280 (2009)

    Google Scholar 

  22. Deek, F.P., McHugh, J.A.: A survey and critical analysis of tools for learning programming. Comput. Sci. Educ. 8(2), 130–178 (1998)

    Article  Google Scholar 

  23. Pears, A., Seidman, S., Malmi, L., Mannila, L., Adams, E., Bennedsen, J., Paterson, J.: A survey of literature on the teaching of introductory programming. ACM SIGCSE Bull. 39(4), 204–223 (2007)

    Article  Google Scholar 

  24. Hundhausen, C.D., Douglas, S.A., Stasko, J.T.: A meta-study of algorithm visualization effectiveness. J. Vis. Lang. Comput. 13(3), 259–290 (2002)

    Article  Google Scholar 

  25. Naps, T.L., Rößling, G., Almstrum, V., Dann, W., Fleischer, R., Hundhausen, C., Velázquez-Iturbide, J.Á.: Exploring the role of visualization and engagement in computer science education. ACM SIGCSE Bull. 35(2), 131–152 (2002)

    Article  Google Scholar 

  26. Myller, N., Bednarik, R., Sutinen, E., Ben-Ari, M.: Extending the engagement taxonomy: software visualization and collaborative learning. ACM Trans. Comput. Educ. (TOCE) 9(1), 7 (2009)

    Google Scholar 

  27. Sorva, J., Karavirta, V., Malmi, L.: A review of generic program visualization systems for introductory programming education. ACM Trans. Comput. Educ. (TOCE) 13(4), 15 (2013)

    Google Scholar 

  28. Orehovački, T., Bubaš, G., Kovačić, A.: Taxonomy of Web 2.0 applications with educational potential. In: Transformation in Teaching: Social Media Strategies in Higher Education, pp. 43–72 (2012)

    Google Scholar 

  29. Porter, L., Guzdial, M., McDowell, C., Simon, B.: Success in introductory programming: what works? Commun. ACM 56(8), 34–36 (2013)

    Article  Google Scholar 

  30. Vihavainen, A., Airaksinen, J., Watson, C.: A systematic review of approaches for teaching introductory programming and their influence on success. In: Proceedings of the Tenth Annual Conference on International Computing Education Research, pp. 19–26. ACM (2014)

    Google Scholar 

  31. Porter, L., Simon, B.: Retaining nearly one-third more majors with a trio of instructional best practices in CS1. In: Proceeding of the 44th ACM Technical Symposium on Computer Science Education, pp. 165–170. ACM (2013)

    Google Scholar 

  32. Kats, L.C., Vogelij, R.G., Kalleberg, K.T., Visser, E.: Software development environments on the web: a research agenda. In: Proceedings of the ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, pp. 99–116. ACM (2012)

    Google Scholar 

  33. Hew, K.F., Cheung, W.S.: Students’ and instructors’ use of massive open online courses (MOOCs): motivations and challenges. Educ. Res. Rev. 12, 45–58 (2014)

    Article  Google Scholar 

  34. Cook, C.L.R.: Towards computer-supported collaborative software engineering (2007)

    Google Scholar 

  35. Booch, G., Brown, A.W.: Collaborative development environments. Adv. Comput. 59(1), 1–27 (2003)

    Google Scholar 

  36. Begel, A.: LogoBlocks: A Graphical Programming Language for Interacting with the World, pp. 62–64. Electrical Engineering and Computer Science Department, MIT, Boston (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Igor Škorić .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Škorić, I., Orehovački, T., Kos, M.I. (2019). Learning to Code and Collaborate in a Web Environment. In: Nazir, S., Teperi, AM., Polak-Sopińska, A. (eds) Advances in Human Factors in Training, Education, and Learning Sciences. AHFE 2018. Advances in Intelligent Systems and Computing, vol 785. Springer, Cham. https://doi.org/10.1007/978-3-319-93882-0_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-93882-0_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-93881-3

  • Online ISBN: 978-3-319-93882-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics