A Data-Driven Approach to Compare the Syntactic Difficulty of Programming Languages.

Saved in:
Bibliographic Details
Title: A Data-Driven Approach to Compare the Syntactic Difficulty of Programming Languages.
Authors: Lokkila, Erno1 eolokk@utu.fi, Christopoulos, Athanasios2 atchri@utu.fi, Laakso, Mikko-Jussi2 milaak@utu.fi
Source: Journal of Information Systems Education. Winter2023, Vol. 34 Issue 1, p84-93. 10p.
Subject Terms: *Computer programming, Programming languages, Java programming language, Python programming language
Abstract: Educators who teach programming subjects are often wondering “which programming language should I teach first?”. The debate behind this question has a long history and coming up with a definite answer to this question would be farfetched. Nonetheless, several efforts can be identified in the literature wherein pros and cons of mainstream programming languages are examined, analysed, and discussed in view of their potential to facilitate the didactics of programming concepts especially to novice programmers. In line with these efforts, we explore the latter question by comparing the syntactic difficulty of two modern, but fundamentally different, programming languages: Java and Python. To achieve this objective, we introduce a standalone and purely data-driven method which stores the code submissions and clusters the errors occurred under the aid of a custom transition probability matrix. For the evaluation of this model a total of 219,454 submissions, made by 715 first-year undergraduate students, in 259 unique programming exercises were gathered and analysed. The results indicate that Python is an easier-to-grasp programming language and is, therefore, highly recommended as the steppingstone in introductory courses. Besides, the adoption of the described method enables educators to not only identify those students who struggle with coding (syntax-wise) but further paves the pathway for the adoption of personalised and adaptive learning practices. [ABSTRACT FROM AUTHOR]
Copyright of Journal of Information Systems Education is the property of Information Systems & Computing Academic Professionals (ISCAP) and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Education Research Complete
FullText Links:
  – Type: pdflink
Text:
  Availability: 0
Header DbId: ehh
DbLabel: Education Research Complete
An: 161749055
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 0
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: A Data-Driven Approach to Compare the Syntactic Difficulty of Programming Languages.
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Lokkila%2C+Erno%22">Lokkila, Erno</searchLink><relatesTo>1</relatesTo><i> eolokk@utu.fi</i><br /><searchLink fieldCode="AR" term="%22Christopoulos%2C+Athanasios%22">Christopoulos, Athanasios</searchLink><relatesTo>2</relatesTo><i> atchri@utu.fi</i><br /><searchLink fieldCode="AR" term="%22Laakso%2C+Mikko-Jussi%22">Laakso, Mikko-Jussi</searchLink><relatesTo>2</relatesTo><i> milaak@utu.fi</i>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="JN" term="%22Journal+of+Information+Systems+Education%22">Journal of Information Systems Education</searchLink>. Winter2023, Vol. 34 Issue 1, p84-93. 10p.
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: *<searchLink fieldCode="DE" term="%22Computer+programming%22">Computer programming</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Java+programming+language%22">Java programming language</searchLink><br /><searchLink fieldCode="DE" term="%22Python+programming+language%22">Python programming language</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: Educators who teach programming subjects are often wondering “which programming language should I teach first?”. The debate behind this question has a long history and coming up with a definite answer to this question would be farfetched. Nonetheless, several efforts can be identified in the literature wherein pros and cons of mainstream programming languages are examined, analysed, and discussed in view of their potential to facilitate the didactics of programming concepts especially to novice programmers. In line with these efforts, we explore the latter question by comparing the syntactic difficulty of two modern, but fundamentally different, programming languages: Java and Python. To achieve this objective, we introduce a standalone and purely data-driven method which stores the code submissions and clusters the errors occurred under the aid of a custom transition probability matrix. For the evaluation of this model a total of 219,454 submissions, made by 715 first-year undergraduate students, in 259 unique programming exercises were gathered and analysed. The results indicate that Python is an easier-to-grasp programming language and is, therefore, highly recommended as the steppingstone in introductory courses. Besides, the adoption of the described method enables educators to not only identify those students who struggle with coding (syntax-wise) but further paves the pathway for the adoption of personalised and adaptive learning practices. [ABSTRACT FROM AUTHOR]
– Name: AbstractSuppliedCopyright
  Label:
  Group: Ab
  Data: <i>Copyright of Journal of Information Systems Education is the property of Information Systems & Computing Academic Professionals (ISCAP) and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=ehh&AN=161749055
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 10
        StartPage: 84
    Subjects:
      – SubjectFull: Computer programming
        Type: general
      – SubjectFull: Programming languages
        Type: general
      – SubjectFull: Java programming language
        Type: general
      – SubjectFull: Python programming language
        Type: general
    Titles:
      – TitleFull: A Data-Driven Approach to Compare the Syntactic Difficulty of Programming Languages.
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Lokkila, Erno
      – PersonEntity:
          Name:
            NameFull: Christopoulos, Athanasios
      – PersonEntity:
          Name:
            NameFull: Laakso, Mikko-Jussi
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Text: Winter2023
              Type: published
              Y: 2023
          Identifiers:
            – Type: issn-print
              Value: 10553096
          Numbering:
            – Type: volume
              Value: 34
            – Type: issue
              Value: 1
          Titles:
            – TitleFull: Journal of Information Systems Education
              Type: main
ResultId 1