Skip to main content
Top

2022 | OriginalPaper | Chapter

A Knowledge Sharing Platform for Learning from Others’ Code

Authors : Shintaro Maeda, Kento Koike, Takahito Tomoto

Published in: Human Interface and the Management of Information: Visual and Information Design

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Learning from code written by other programmers is one of the most important ways of learning how to program. However, reading the code of a skilled programmer can be difficult for a beginner. Put differently, learning how to program can be challenging when the learners have different levels of programming proficiency. To lessen these difficulties, it is necessary to present model code that corresponds to the proficiency level of the learner. However, since proficiency levels in programming may vary by learner, preparing model code matching the proficiency level of every possible learner in advance may not always be practical. Therefore, we propose a platform for sharing knowledge among various learners participating in a given lecture. Functionality for sharing code alone may be insufficient for presenting code appropriate to the level of a given learner. Therefore, we also propose code quality indicators for understanding the degree of proximity in proficiency between a learner and a given programmer whose code is being used as a model. To this end, in this paper, we propose a platform with functionality for sharing, evaluating, and ranking written code. In addition, in order to understand the relationship between code written by other programmers and the behavior of the code at runtime, we propose a platform that involves programming a robot in order to allow the learner to visualize the behavior of the code as movement of the robot.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
1.
go back to reference Busjahn, T., Schulte, C.: The use of code reading in teaching programming. In: Proceedings of the 13th Koli Calling international conference on computing education research, pp. 3–11 (2013) Busjahn, T., Schulte, C.: The use of code reading in teaching programming. In: Proceedings of the 13th Koli Calling international conference on computing education research, pp. 3–11 (2013)
2.
go back to reference Campbell, W., Bolker, E.: Teaching programming by immersion, reading and writing. In: 32nd Annual Frontiers in Education, vol. 1, pp. T4G–T4G. IEEE (2002) Campbell, W., Bolker, E.: Teaching programming by immersion, reading and writing. In: 32nd Annual Frontiers in Education, vol. 1, pp. T4G–T4G. IEEE (2002)
3.
go back to reference Kölling, M., Rosenberg, J.: Guidelines for teaching object orientation with Java. ACM SIGCSE Bull. 33(3), 33–36 (2001)CrossRef Kölling, M., Rosenberg, J.: Guidelines for teaching object orientation with Java. ACM SIGCSE Bull. 33(3), 33–36 (2001)CrossRef
4.
go back to reference Miliszewska, I., Tan, G.: Befriending computer programming: a proposed approach to teaching introductory programming. Inform. Sci. Int. J. Emerg. Transdiscipline 4(1), 277–289 (2007) Miliszewska, I., Tan, G.: Befriending computer programming: a proposed approach to teaching introductory programming. Inform. Sci. Int. J. Emerg. Transdiscipline 4(1), 277–289 (2007)
5.
go back to reference Oeda, S., Kosaku, H.: Development of a check sheet for code-review towards improvement of skill level of novice programmers. Procedia Comput. Sci. 126, 841–849 (2018)CrossRef Oeda, S., Kosaku, H.: Development of a check sheet for code-review towards improvement of skill level of novice programmers. Procedia Comput. Sci. 126, 841–849 (2018)CrossRef
6.
go back to reference Sorva, J., Karavirta, V., Malmi, L.: A review of generic program visualization systems for introductory programming education. ACM Trans. Comput. Educ. (TOCE) 13(4), 1–64 (2013)CrossRef Sorva, J., Karavirta, V., Malmi, L.: A review of generic program visualization systems for introductory programming education. ACM Trans. Comput. Educ. (TOCE) 13(4), 1–64 (2013)CrossRef
7.
go back to reference Spinellis, D.: Reading, writing, and code: the key to writing readable code is developing good coding style. Queue 1(7), 84–89 (2003)CrossRef Spinellis, D.: Reading, writing, and code: the key to writing readable code is developing good coding style. Queue 1(7), 84–89 (2003)CrossRef
Metadata
Title
A Knowledge Sharing Platform for Learning from Others’ Code
Authors
Shintaro Maeda
Kento Koike
Takahito Tomoto
Copyright Year
2022
DOI
https://doi.org/10.1007/978-3-031-06424-1_36