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
Language: English
Authors: Lokkila, Erno, Christopoulos, Athanasios, Laakso, Mikko-Jussi
Source: Journal of Information Systems Education. Win 2023 34(1):84-93.
Availability: Journal of Information Systems Education. e-mail: editor@jise.org; Web site: http://www.jise.org
Peer Reviewed: Y
Page Count: 12
Publication Date: 2023
Document Type: Journal Articles
Reports - Research
Education Level: Higher Education
Postsecondary Education
Descriptors: Comparative Analysis, Programming Languages, Probability, Error Patterns, Undergraduate Students, Computer Science Education, Introductory Courses, Coding, Difficulty Level, Individualized Instruction, Learning Analytics, Information Science Education, Learning Management Systems
ISSN: 1055-3096
2574-3872
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 steppingnstone 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.
Abstractor: As Provided
Entry Date: 2023
Access URL: https://jise.org/Volume34/n1/JISE2023v34n1pp84-93.pdf
Accession Number: EJ1384160
Database: ERIC
FullText Links:
  – Type: pdflink
    Url: https://content.ebscohost.com/cds/retrieve?content=AQICAHj0k_4E0hTGH8RJwT4gCJyBsGNe_WN95AvKlDbXJGqwxwGpTloyrKbjuz2V7PVoNOU0AAAA4jCB3wYJKoZIhvcNAQcGoIHRMIHOAgEAMIHIBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDPrq8lOlg0Cvd8-vLwIBEICBmv8ttQ7E-3NgbObO4tZA1Tai_zsk9fuMnBSf_JytBWtOJGW6ZXQWsLWNRNWJa9oLkSTM0g67UqSTvrfbLog8LJG0iEwCCxLwWRL50MXl-StrxE_8agD7Ify0yB5mBWq1eWPsf7dZQKz5m_-YQBCdLD2w3oIhe_057vHyAf16IjagT2CbK9WyI4pu7XFMITI5rXlVMrUg4U7_Bjo=
Text:
  Availability: 0
Header DbId: eric
DbLabel: ERIC
An: EJ1384160
AccessLevel: 3
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: Language
  Label: Language
  Group: Lang
  Data: English
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Lokkila%2C+Erno%22">Lokkila, Erno</searchLink><br /><searchLink fieldCode="AR" term="%22Christopoulos%2C+Athanasios%22">Christopoulos, Athanasios</searchLink><br /><searchLink fieldCode="AR" term="%22Laakso%2C+Mikko-Jussi%22">Laakso, Mikko-Jussi</searchLink>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="SO" term="%22Journal+of+Information+Systems+Education%22"><i>Journal of Information Systems Education</i></searchLink>. Win 2023 34(1):84-93.
– Name: Avail
  Label: Availability
  Group: Avail
  Data: Journal of Information Systems Education. e-mail: editor@jise.org; Web site: http://www.jise.org
– Name: PeerReviewed
  Label: Peer Reviewed
  Group: SrcInfo
  Data: Y
– Name: Pages
  Label: Page Count
  Group: Src
  Data: 12
– Name: DatePubCY
  Label: Publication Date
  Group: Date
  Data: 2023
– Name: TypeDocument
  Label: Document Type
  Group: TypDoc
  Data: Journal Articles<br />Reports - Research
– Name: Audience
  Label: Education Level
  Group: Audnce
  Data: <searchLink fieldCode="EL" term="%22Higher+Education%22">Higher Education</searchLink><br /><searchLink fieldCode="EL" term="%22Postsecondary+Education%22">Postsecondary Education</searchLink>
– Name: Subject
  Label: Descriptors
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Comparative+Analysis%22">Comparative Analysis</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+Languages%22">Programming Languages</searchLink><br /><searchLink fieldCode="DE" term="%22Probability%22">Probability</searchLink><br /><searchLink fieldCode="DE" term="%22Error+Patterns%22">Error Patterns</searchLink><br /><searchLink fieldCode="DE" term="%22Undergraduate+Students%22">Undergraduate Students</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+Science+Education%22">Computer Science Education</searchLink><br /><searchLink fieldCode="DE" term="%22Introductory+Courses%22">Introductory Courses</searchLink><br /><searchLink fieldCode="DE" term="%22Coding%22">Coding</searchLink><br /><searchLink fieldCode="DE" term="%22Difficulty+Level%22">Difficulty Level</searchLink><br /><searchLink fieldCode="DE" term="%22Individualized+Instruction%22">Individualized Instruction</searchLink><br /><searchLink fieldCode="DE" term="%22Learning+Analytics%22">Learning Analytics</searchLink><br /><searchLink fieldCode="DE" term="%22Information+Science+Education%22">Information Science Education</searchLink><br /><searchLink fieldCode="DE" term="%22Learning+Management+Systems%22">Learning Management Systems</searchLink>
– Name: ISSN
  Label: ISSN
  Group: ISSN
  Data: 1055-3096<br />2574-3872
– 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 steppingnstone 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.
– Name: AbstractInfo
  Label: Abstractor
  Group: Ab
  Data: As Provided
– Name: DateEntry
  Label: Entry Date
  Group: Date
  Data: 2023
– Name: URL
  Label: Access URL
  Group: URL
  Data: <link linkTarget="URL" linkTerm="https://jise.org/Volume34/n1/JISE2023v34n1pp84-93.pdf" linkWindow="_blank">https://jise.org/Volume34/n1/JISE2023v34n1pp84-93.pdf</link>
– Name: AN
  Label: Accession Number
  Group: ID
  Data: EJ1384160
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=eric&AN=EJ1384160
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 12
        StartPage: 84
    Subjects:
      – SubjectFull: Comparative Analysis
        Type: general
      – SubjectFull: Programming Languages
        Type: general
      – SubjectFull: Probability
        Type: general
      – SubjectFull: Error Patterns
        Type: general
      – SubjectFull: Undergraduate Students
        Type: general
      – SubjectFull: Computer Science Education
        Type: general
      – SubjectFull: Introductory Courses
        Type: general
      – SubjectFull: Coding
        Type: general
      – SubjectFull: Difficulty Level
        Type: general
      – SubjectFull: Individualized Instruction
        Type: general
      – SubjectFull: Learning Analytics
        Type: general
      – SubjectFull: Information Science Education
        Type: general
      – SubjectFull: Learning Management Systems
        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
              Type: published
              Y: 2023
          Identifiers:
            – Type: issn-print
              Value: 1055-3096
            – Type: issn-electronic
              Value: 2574-3872
          Numbering:
            – Type: volume
              Value: 34
            – Type: issue
              Value: 1
          Titles:
            – TitleFull: Journal of Information Systems Education
              Type: main
ResultId 1