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

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 th...

Full description

Saved in:
Bibliographic Details
Published inJournal of information systems education Vol. 34; no. 1; pp. 84 - 93
Main Authors Lokkila, Erno, Christopoulos, Athanasios, Laakso, Mikko-Jussi
Format Journal Article
LanguageEnglish
Published West Lafayette Journal of Information Systems Education 2023
EDSIG
Subjects
Online AccessGet full text
ISSN1055-3096
2574-3872

Cover

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.
AbstractList 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.
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.
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. Keywords: Computer programming, Computer science, Data analytics, Higher education, Information systems education, Program assessment & design
Audience Higher Education
Postsecondary Education
Academic
Author Christopoulos, Athanasios
Lokkila, Erno
Laakso, Mikko-Jussi
Author_xml – sequence: 1
  fullname: Lokkila, Erno
– sequence: 2
  fullname: Christopoulos, Athanasios
– sequence: 3
  fullname: Laakso, Mikko-Jussi
BackLink http://eric.ed.gov/ERICWebPortal/detail?accno=EJ1384160$$DView record in ERIC
BookMark eNptkF9LwzAUxYMouE0_ghDw1UrSpEn7WLb5j4HC9Lmk2U2XsaY1SYV9ewvzYQO5cC5cfueey52iS9c5uECTNJM8YblML9GEkixLGCnENZqGsCOEZoUQE7Qu8UJFlSy8_QGHy773ndJbHDs879peecBxC3h9cFHpaDVeWGOsHvbxgDuDP3zXeNW21jV4pVwzqAbCDboyah_g9q_P0NfT8nP-kqzen1_n5SoBmnGRQE1SyRWvMw6KaiaMUETQdJMxlm8M1UYIwhkUNOVcgua0zgvCRE0LYTQINkP3x73jzd8DhFjtusG7MbJKpeSFLER-QjVqD5V1pote6dYGXZWS5ZRyUaQj9fgPNdYGWqvHfxo7zs8MDyeGegjWQRgl2GYbQ6OGEM7xuyMO3uqq97ZV_lAt3yjLORWE_QLib4G-
ContentType Journal Article
Copyright COPYRIGHT 2023 Journal of Information Systems Education
Copyright EDSIG Winter 2023
Copyright_xml – notice: COPYRIGHT 2023 Journal of Information Systems Education
– notice: Copyright EDSIG Winter 2023
DBID 7SW
BJH
BNH
BNI
BNJ
BNO
ERI
PET
REK
WWN
N95
0-V
3V.
4T-
4U-
7WY
7WZ
7XB
87Z
88B
8AL
8AO
8FE
8FG
8FK
8FL
8G5
ABUWG
AFKRA
AHOVV
ALSLI
ARAPS
AZQEC
BENPR
BEZIV
BGLVJ
CCPQU
CJNVE
CNYFK
DWQXO
FRNLG
F~G
GNUQQ
GUQSH
HCIFZ
JQ2
K60
K6~
K7-
L.-
M0C
M0N
M0P
M1O
M2O
MBDVC
P5Z
P62
PHGZM
PHGZT
PKEHL
PQBIZ
PQBZA
PQEDU
PQEST
PQGLB
PQQKQ
PQUKI
PRQQA
Q9U
S0X
DatabaseName ERIC
ERIC (Ovid)
ERIC
ERIC
ERIC (Legacy Platform)
ERIC( SilverPlatter )
ERIC
ERIC PlusText (Legacy Platform)
Education Resources Information Center (ERIC)
ERIC
Gale Business: Insights
ProQuest Social Sciences Premium Collection【Remote access available】
ProQuest Central (Corporate)
Docstoc
University Readers
ABI/INFORM Collection
ABI/INFORM Global (PDF only)
ProQuest Central (purchase pre-March 2016)
ABI/INFORM Collection
Education Database (Alumni Edition)
Computing Database (Alumni Edition)
ProQuest Pharma Collection
ProQuest SciTech Collection
ProQuest Technology Collection
ProQuest Central (Alumni) (purchase pre-March 2016)
ABI/INFORM Collection (Alumni)
Research Library
ProQuest Central (Alumni)
ProQuest Central
Education Research Index
Social Science Premium Collection
Advanced Technologies & Computer Science Collection
ProQuest Central Essentials
ProQuest Central
Business Premium Collection
ProQuest Technology Collection
ProQuest One Community College
Education Collection (ProQuest)
Library & Information Science Collection
ProQuest Central
Business Premium Collection (Alumni)
ABI/INFORM Global (Corporate)
ProQuest Central Student
Research Library Prep
SciTech Premium Collection
ProQuest Computer Science Collection
ProQuest Business Collection (Alumni Edition)
ProQuest Business Collection
Computer Science Database
ABI/INFORM Professional Advanced
ABI/INFORM Global
Computing Database
Education Database (Proquest)
Proquest Library Science Database
Proquest Research Library
Research Library (Corporate)
ProQuest advanced technologies & aerospace journals
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Premium
ProQuest One Academic
ProQuest One Academic Middle East (New)
ProQuest One Business
ProQuest One Business (Alumni)
ProQuest One Education
ProQuest One Academic Eastern Edition (DO NOT USE)
ProQuest One Applied & Life Sciences
ProQuest One Academic
ProQuest One Academic UKI Edition
ProQuest One Social Sciences
ProQuest Central Basic
SIRS Editorial
DatabaseTitle ERIC
ProQuest One Education
ProQuest Business Collection (Alumni Edition)
Research Library Prep
Computer Science Database
ProQuest Central Student
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Essentials
ProQuest Computer Science Collection
SciTech Premium Collection
ABI/INFORM Complete
ProQuest One Applied & Life Sciences
Library & Information Science Collection
ProQuest Central (New)
Advanced Technologies & Aerospace Collection
Business Premium Collection
Social Science Premium Collection
ABI/INFORM Global
Education Collection
ProQuest One Academic Eastern Edition
ProQuest Technology Collection
ProQuest Business Collection
ProQuest Social Sciences Premium Collection
ProQuest One Academic UKI Edition
Docstoc
ProQuest One Academic
ProQuest One Academic (New)
ABI/INFORM Global (Corporate)
ProQuest One Business
University Readers
Technology Collection
ProQuest One Academic Middle East (New)
SIRS Editorial
ProQuest Central (Alumni Edition)
ProQuest One Community College
Research Library (Alumni Edition)
ProQuest Pharma Collection
ProQuest Central
ABI/INFORM Professional Advanced
ProQuest Library Science
ProQuest Central Korea
ProQuest Research Library
ABI/INFORM Complete (Alumni Edition)
ProQuest Computing
ProQuest One Social Sciences
ABI/INFORM Global (Alumni Edition)
ProQuest Central Basic
ProQuest Education Journals
ProQuest Computing (Alumni Edition)
ProQuest SciTech Collection
Advanced Technologies & Aerospace Database
ProQuest One Business (Alumni)
ProQuest Education Journals (Alumni Edition)
ProQuest Central (Alumni)
Business Premium Collection (Alumni)
DatabaseTitleList ERIC

ProQuest One Education


Database_xml – sequence: 1
  dbid: ERI
  name: ERIC
  url: https://eric.ed.gov/
  sourceTypes: Index Database
– sequence: 2
  dbid: 8FG
  name: ProQuest Technology Collection
  url: https://search.proquest.com/technologycollection1
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Education
Computer Science
EISSN 2574-3872
ERIC EJ1384160
EndPage 93
ExternalDocumentID A738114692
EJ1384160
GeographicLocations United Kingdom
GeographicLocations_xml – name: United Kingdom
GroupedDBID -W8
.4I
.GO
0-V
29K
2WC
5GY
77I
7SW
7WY
8AO
8FE
8FG
8FL
8FW
8G5
8R4
8R5
8VB
96U
AAHSB
AAKPC
ABDBF
ABUWG
ACGFO
ACIHN
AEAQA
AFAZI
AFKRA
AHQJS
AKVCP
ALMA_UNASSIGNED_HOLDINGS
ALSLI
ARALO
ARAPS
AZQEC
BENPR
BEZIV
BGLVJ
BJH
BNH
BNI
BNJ
BNO
BPHCQ
C1A
CCPQU
CJNVE
CNYFK
D-I
DWQXO
E3Z
EAP
EBO
EBU
EDJ
ELW
ERI
ESX
FRNLG
GNUQQ
GUQSH
HCIFZ
IAO
ICD
IEA
IER
INH
INR
ITC
K1G
K60
K6V
K6~
K7-
M0C
M0P
M1O
M2O
N95
OK1
P2P
P62
PET
PHGZM
PHGZT
PQBIZ
PQBZA
PQEDU
PQGLB
PQQKQ
PRG
PROAC
PRQQA
PV9
Q2X
QF4
QM7
QN7
QWB
REK
RWL
RXW
RZL
S0X
TAE
TAF
TH9
TR2
U5U
UNMZH
WWN
XH6
ZL0
~8M
3V.
4T-
4U-
7XB
8AL
8FK
AHOVV
JQ2
L.-
M0N
MBDVC
PKEHL
PQEST
PQUKI
PUEGO
Q9U
ID FETCH-LOGICAL-e1546-eb0274a4b54ea1c36f6a0612d5338df1cf66043e912447ec41b89036b196fce63
IEDL.DBID BENPR
ISSN 1055-3096
IngestDate Thu Aug 28 08:29:29 EDT 2025
Mon Oct 20 22:26:03 EDT 2025
Mon Oct 20 16:17:10 EDT 2025
Fri May 23 02:29:05 EDT 2025
Fri Oct 03 12:20:40 EDT 2025
IsOpenAccess false
IsPeerReviewed true
IsScholarly true
Issue 1
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-e1546-eb0274a4b54ea1c36f6a0612d5338df1cf66043e912447ec41b89036b196fce63
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
PQID 2774979686
PQPubID 25848
PageCount 12
ParticipantIDs proquest_journals_2774979686
gale_infotracmisc_A738114692
gale_infotracacademiconefile_A738114692
gale_businessinsightsgauss_A738114692
eric_primary_EJ1384160
PublicationCentury 2000
PublicationDate 2023-00-00
20230101
PublicationDateYYYYMMDD 2023-01-01
PublicationDate_xml – year: 2023
  text: 2023-00-00
PublicationDecade 2020
PublicationPlace West Lafayette
PublicationPlace_xml – name: West Lafayette
PublicationTitle Journal of information systems education
PublicationYear 2023
Publisher Journal of Information Systems Education
EDSIG
Publisher_xml – name: Journal of Information Systems Education
– name: EDSIG
SSID ssj0015966
Score 2.2227337
Snippet Educators who teach programming subjects are often wondering "which programming language should I teach first?" The debate behind this question has a long...
Educators who teach programming subjects are often wondering "which programming language should I teach first?". The debate behind this question has a long...
SourceID proquest
gale
eric
SourceType Aggregation Database
Index Database
StartPage 84
SubjectTerms Adaptive learning
Artificial intelligence
Coding
Comparative Analysis
Computer programming
Computer science
Computer Science Education
Difficulty Level
Error Patterns
Higher education
Individualized Instruction
Information Science Education
Information systems
Introductory Courses
Java
Learning Analytics
Learning Management Systems
Object oriented programming
Pedagogy
Popularity
Probability
Programming Languages
Python
Questions
Students
Syntax
Teachers
Teaching
Textbooks
Transition probabilities
Trends
Undergraduate Students
Undergraduate study
Title A Data-Driven Approach to Compare the Syntactic Difficulty of Programming Languages
URI http://eric.ed.gov/ERICWebPortal/detail?accno=EJ1384160
https://www.proquest.com/docview/2774979686
Volume 34
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVEBS
  databaseName: Academic Search Ultimate (EBSCOhost)
  customDbUrl: https://search.ebscohost.com/login.aspx?authtype=ip,shib&custid=s3936755&profile=ehost&defaultdb=asn
  eissn: 2574-3872
  dateEnd: 99991231
  omitProxy: true
  ssIdentifier: ssj0015966
  issn: 1055-3096
  databaseCode: ABDBF
  dateStart: 20040301
  isFulltext: true
  titleUrlDefault: https://search.ebscohost.com/direct.asp?db=asn
  providerName: EBSCOhost
– providerCode: PRVPQU
  databaseName: ProQuest Central
  customDbUrl: http://www.proquest.com/pqcentral?accountid=15518
  eissn: 2574-3872
  dateEnd: 99991231
  omitProxy: true
  ssIdentifier: ssj0015966
  issn: 1055-3096
  databaseCode: BENPR
  dateStart: 20020101
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: Proquest Library Science Database
  customDbUrl:
  eissn: 2574-3872
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0015966
  issn: 1055-3096
  databaseCode: M1O
  dateStart: 20020101
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/libraryscience
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest Technology Collection
  customDbUrl:
  eissn: 2574-3872
  dateEnd: 99991231
  omitProxy: true
  ssIdentifier: ssj0015966
  issn: 1055-3096
  databaseCode: 8FG
  dateStart: 20020101
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/technologycollection1
  providerName: ProQuest
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwfV1NT9wwEB3BcumlfLSoy8fKh1Y9WU1ix44PCC3sbhEqW1SKxC1yHJsTu7AJB_49HscpWgn14ostRXI8M88z4_cAviaaKa6koyZnOeV5VlPt4yp1mjOtaul0EJu4mouLW355l99twLx_C4Ntlb1PDI66XhrMkf_IPE5RUolCnD4-UVSNwupqL6Gho7RCfRIoxjZhK0NmrAFsnU3n13_-1RVyFaqXqApJWRKY-rsu5_f9cQgysx34GNEhGXe_cxc27GIPtnvlBRINcQ-1lmNfxie4GZOJbjWdrNBxkXEkCSftkpx3DebEgzxy87Jow4MoMsE0DTJuvJClI9ddg9aDD2HkV0xeNp_hdjb9e35Bo1QCtR4DCWorvF5qXuXc6tQw4YRG8FJ7NFfULjVOiIQzqzCcS2t4WhXKB6_KG6AzVrB9GCyWC_sFiDLc1FIm1gM5ropMW3-jkdI5pUWeSjaEfdyy8rFjwyinlynD2mUyhG-4iWVUz_RDg_mF5l4_N005lh4beLessiF8D-vQgtqVNjo-BPCfRy6qtZVHayv9yTfr0_3vKqPlNeXbOTn4__QhfEDp-C6dcgSDdvVsjz3AaKsRbBazn6N4dkbhSu3Hq_T3KzU80k8
linkProvider ProQuest
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV3Nb9MwFH8a3QEufAwmOgb4wMTJIo0duz5MqKyduq2rJrZJuwXHsTnRbk0m1H-Ov433EgdUCXHbJRdbSWQ_v_fz-_oBfEisMNLowF0mMi6ztOQW7SoPVgprSh1sQzZxPlfTa3l6k91swa-uFobSKjud2CjqcunIR_4pRZxitFFD9fn2jhNrFEVXOwoNG6kVysOmxVgs7Djz6594hasOT8a43wdpejy5OpryyDLAPcIHxX1BNzMri0x6O3BCBWXJ7pcIhIZlGLigVCKFN2QJtXdyUAwN6v0CZTc4rwS-9xFsS4G_14PtL5P5xdc_cYzMNNFSYqHkImmYAdqs6n_r_8aoHT-HpxGNslErPi9gyy924FnH9MDiwd8hbueYB_ISLkdsbGvLxytSlGwUm5KzesmO2oR2hqCSXa4XdVOAxcbkFqIOH2u2DOyiTQj7gSaTzaKztHoF1w-yaLvQWywX_jUw46QrtU48Akdphqn1eIPSOgRjVTbQog-7tGT5bdt9I5-cDgTFSpM-HNAi5pGtEx8V-TOq7_a-qvKRRiyCZsCkffjYzKMTW6-ss7HwAD9Pva82Zu5vzMST5jaHu-3K40mv8r9yuff_4ffweHp1PstnJ_OzN_CEaOtbV84-9OrVvX-L4KYu3kUJYvDtoYX2N4Y6CvU
linkToPdf http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1Nb9QwEB2VIiEuFAoVCy34QMXJbT4ce31A1arpql-USqVSb8FxbA6I3bLJCi0_jb_SP9OZxAEtQtx64JKLrURJxm-eZ8bzAN5EJtVCK89tlmZcZEnFDfpV7o1Ija6UN63YxPszeXgpjq-yqxX42Z-FobLKHhNboK6mlmLkuwnyFK20HMpdH8oizvPx3vU3TgpSlGnt5TQ6Ezlxi--4favfHeX4r7eTZHzwcf-QB4UB7pA6SO5K2pUZUWbCmdim0ktDPr9CEjSsfGy9lJFInSYvqJwVcTnUiPkl2q23TqZ433twX9E2gsoG4w-_MhiZbvOkpD_J06jVBOjqqf-O_K07G6_BTf8huiqWLzvzptyxP_7oEfl_fqnH8CiwbDbqlsUTWHGTdVjrFSxYALR10qwO9S1P4WLEctMYns_IAbBRaLbOminb7wr1GZJldrGYNO3BMpZTuIs6lyzY1LPzrtDtK1IBdhqCwPUzuLyT19yA1cl04p4D01bYSqnIISEWepgYhztDpbzXRmaxSgewQQZRXHddRYqD4zilHHA0gG0ykSKokOKlpjhN_dnM67oYKeRY6N50MoC37TxComZmrAkHKvDx1NNraebm0kxEELs83BtSERCsLn5b0Yt_D7-GB2hexenR2clLeJggB-wiVJuw2szmbgs5W1O-ahcHg093bWO3jm1Paw
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+Data-Driven+Approach+to+Compare+the+Syntactic+Difficulty+of+Programming+Languages&rft.jtitle=Journal+of+information+systems+education&rft.au=Lokkila%2C+Erno&rft.au=Christopoulos%2C+Athanasios&rft.au=Laakso%2C+Mikko-Jussi&rft.date=2023&rft.pub=Journal+of+Information+Systems+Education&rft.issn=1055-3096&rft.volume=34&rft.issue=1&rft.spage=84&rft.externalDocID=EJ1384160
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1055-3096&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1055-3096&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1055-3096&client=summon