Which Programming Language Should Students Learn First? A Comparison of Java and Python

Programming is a fundamental ability for Computer Science majors. Most programming lectures use traditional languages, such as C, C++, or Java, as the first learning language for novices, which are effective for designing real applications and therefore are popular in industry. However, the complex...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:2015 International Conference on Learning and Teaching in Computing and Engineering S. 225 - 226
Hauptverfasser: Lo, Chieh-An, Lin, Yu-Tzu, Wu, Cheng-Chih
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: IEEE 01.04.2015
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Abstract Programming is a fundamental ability for Computer Science majors. Most programming lectures use traditional languages, such as C, C++, or Java, as the first learning language for novices, which are effective for designing real applications and therefore are popular in industry. However, the complex syntax of these languages is challenging for novices, which becomes an obstacle to novices' learning. Python has simpler syntax and high-level data structures to enable succinct programs. The multiple paradigms of Python also provide learners opportunities to learn various features of programming languages. Therefore, Python gradually becomes a new option of the first language for learning. This study investigates the features of the first learning programming language by comparing Python with the popular learning language Java. A questionnaire study will be conducted on both instructors and students to understand how the features of languages affect students' learning from the aspects of program translation and execution (interpretation vs. Compilation), variable declaration (dynamic vs. Static), the syntax of control structures, and the object-oriented syntaxes. For each aspect of questionnaire, questions are designed to understand whether and how the language features in this aspect influence program comprehension (including the occurrence of misconceptions or errors, and cognitive load) and program implementation. The research results will give instructors suggestions for selecting suitable learning languages in their lectures and designing adaptive instructional strategies/materials based on the features of the selected language.
AbstractList Programming is a fundamental ability for Computer Science majors. Most programming lectures use traditional languages, such as C, C++, or Java, as the first learning language for novices, which are effective for designing real applications and therefore are popular in industry. However, the complex syntax of these languages is challenging for novices, which becomes an obstacle to novices' learning. Python has simpler syntax and high-level data structures to enable succinct programs. The multiple paradigms of Python also provide learners opportunities to learn various features of programming languages. Therefore, Python gradually becomes a new option of the first language for learning. This study investigates the features of the first learning programming language by comparing Python with the popular learning language Java. A questionnaire study will be conducted on both instructors and students to understand how the features of languages affect students' learning from the aspects of program translation and execution (interpretation vs. Compilation), variable declaration (dynamic vs. Static), the syntax of control structures, and the object-oriented syntaxes. For each aspect of questionnaire, questions are designed to understand whether and how the language features in this aspect influence program comprehension (including the occurrence of misconceptions or errors, and cognitive load) and program implementation. The research results will give instructors suggestions for selecting suitable learning languages in their lectures and designing adaptive instructional strategies/materials based on the features of the selected language.
Author Lo, Chieh-An
Wu, Cheng-Chih
Lin, Yu-Tzu
Author_xml – sequence: 1
  givenname: Chieh-An
  surname: Lo
  fullname: Lo, Chieh-An
  email: 60108012E@ntnu.edu.tw
  organization: Nat. Taiwan Normal Univ., Taipei, Taiwan
– sequence: 2
  givenname: Yu-Tzu
  surname: Lin
  fullname: Lin, Yu-Tzu
  email: linyt@ntnu.edu.tw
  organization: Nat. Taiwan Normal Univ., Taipei, Taiwan
– sequence: 3
  givenname: Cheng-Chih
  surname: Wu
  fullname: Wu, Cheng-Chih
  email: chihwu@ntnu.edu.tw
  organization: Nat. Taiwan Normal Univ., Taipei, Taiwan
BookMark eNotj09LwzAcQCMoqLNXL17yBVbzp2nMSUbZplJwsMKO49fm1zawJiNthX17B_ou7_bgPZJbHzwS8sxZyjkzryVUrlingnGVcnVDEqPfeKbNlVyre5KMo6uZyHWumOQP5HDoXdPTXQxdhGFwvqMl-G6GDum-D_PJ0v00W_TTSEuE6OnGxXF6pytahOEM0Y3B09DSL_gBCt7S3WXqg38idy2cRkz-vSDVZl0VH8vye_tZrMqlM2xaWlHrVlmRW4ayEW1mlBZQZ8CNssZyyXMlaqZQGTSt4ihkhqAbm7FaSa3lgrz8ZR0iHs_RDRAvR81Ffl2Uv5vOUTQ
CODEN IEEPAD
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1109/LaTiCE.2015.15
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Education
EISBN 9781479999675
1479999679
EndPage 226
ExternalDocumentID 7126267
Genre orig-research
GroupedDBID 6IE
6IL
ALMA_UNASSIGNED_HOLDINGS
CBEJK
RIB
RIC
RIE
RIL
ID FETCH-LOGICAL-i90t-d2b7f5d26d0e3c2f49572ab4a195d9d131652b05e59e9f51e234ea7cd40b53773
IEDL.DBID RIE
IngestDate Wed Dec 20 05:20:24 EST 2023
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-i90t-d2b7f5d26d0e3c2f49572ab4a195d9d131652b05e59e9f51e234ea7cd40b53773
PageCount 2
ParticipantIDs ieee_primary_7126267
PublicationCentury 2000
PublicationDate 2015-April
PublicationDateYYYYMMDD 2015-04-01
PublicationDate_xml – month: 04
  year: 2015
  text: 2015-April
PublicationDecade 2010
PublicationTitle 2015 International Conference on Learning and Teaching in Computing and Engineering
PublicationTitleAbbrev latice
PublicationYear 2015
Publisher IEEE
Publisher_xml – name: IEEE
SSID ssib026765031
Score 1.5714701
Snippet Programming is a fundamental ability for Computer Science majors. Most programming lectures use traditional languages, such as C, C++, or Java, as the first...
SourceID ieee
SourceType Publisher
StartPage 225
SubjectTerms Comprehension
Debugging
Education
Error Patterns
Java
Mixed-method approach
Programming
Programming profession
Spoken-Tutorials
Syntactics
Title Which Programming Language Should Students Learn First? A Comparison of Java and Python
URI https://ieeexplore.ieee.org/document/7126267
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEA6tePDkoxXf5ODRtLt5bDYnkdIiUkqhhfZW8pile3ArfYH_3mR3rR68SC5hCIRMAplMvvk-hB6ZSa2hXBBlqSDcSEZS6oAYG8jbmaVgbCk2IUejdD5X4wZ6OtTCAEAJPoNO6JZ_-W5ldyFV1pUx9fG3bKKmlElVq_V9drzZxxosrnkZ40h1h3qa9_oBvSU6QfX2l3pKeXkMTv837Rlq_1Th4fHhfjlHDSgugspyjchoodlsmdtlGBMgVu9-EB7W6Uc8WQbtajypqCs3uORRxYPcB3vP-AX3DvKDeJXhN73XWBcOjz8DlUAbTQf9ae-V1EIJJFfRljhqZCYcTVwE3ruZf_NIqg3XsRJOuZjFiaAmEiAUqEzEQBkHLa3jkRFMSnaJjopVAVcI-xVFxjcOSvEEbJowAGtcxn1gIDJ5jVrBP4uPigpjUbvm5m_zLToJ3q-ALnfoaLvewT06tvttvlk_lPv3BZACnYo
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEA61Cnry0Ypvc_Dotrt5NJuTSLFUXUuhC-2tbJJZuge30hf470121-rBi-QSkkDITCCT5JvvQ-iOqlArwrgnNeEeU4J6ITHgKe3I26kmoHQhNiEGg3AykcMaut_mwgBAAT6DlqsWf_lmrtfuqawtAmLjb7GDdjljxC-ztb53j-2w0QYNKmbGwJftKImz7pPDb_GW0739pZ9SHB-9w_9NfISaP3l4eLg9YY5RDfITp7NcYTIaaDyeZXrmxjiQ1bsdhKPqARKPZk69Go9K8solLphUcS-z4d4DfsTdrQAhnqf4JdkkOMkNHn46MoEmintPcbfvVVIJXib9lWeIEik3pGN8sPZN7a1HkESxJJDcSBPQoMOJ8jlwCTLlARDKIBHaMF9xKgQ9RfV8nsMZwnZFvrKFgZSsAzrsUACtTMpsaMBTcY4azj7Tj5IMY1qZ5uLv5lu034_fomn0PHi9RAfOEyXs5QrVV4s1XKM9vVlly8VN4csv8Eqg0Q
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%3Abook&rft.genre=proceeding&rft.title=2015+International+Conference+on+Learning+and+Teaching+in+Computing+and+Engineering&rft.atitle=Which+Programming+Language+Should+Students+Learn+First%3F+A+Comparison+of+Java+and+Python&rft.au=Lo%2C+Chieh-An&rft.au=Lin%2C+Yu-Tzu&rft.au=Wu%2C+Cheng-Chih&rft.date=2015-04-01&rft.pub=IEEE&rft.spage=225&rft.epage=226&rft_id=info:doi/10.1109%2FLaTiCE.2015.15&rft.externalDocID=7126267