Use of Commercial Online Training to Augment Programming Language Education

Use of Commercial Online Training to Augment Programming Language Education

Use of Commercial Online Training to Augment Programming Language Education David P. Harvie, Keith E. Major, Tanya T. Estes This paper was completed and submitted in partial fulfillment of the Master Teacher Program, a 2-year faculty professional development program conducted by the Center for Faculty Excellence, United States Military Academy, West Point, NY, 2019. ABSTRACT This paper describes the motivation and utilization of commercial online training in programming languages to augment student learning. The number of languages introduced during the course required students attain a fundamental level understanding of each language at a fast pace. The choice to use a commercially available training course, specifically Code School, removed the burden from instructors to build and maintain similar content. However, commercial online courses have the challenge that they are built and maintained by third parties which requires instructors to adjust to changes implemented by those third parties. Student feedback indicated that the online training courses assisted them in achieving a basic understanding of the languages. However, it is critical to select the appropriate online course to match the students’ prior computing background. INTRODUCTION The purpose of this paper is to describe and assess the efficacy of using commercial online training to augment programming language education. This paper will describe the motivations and objectives of including online training followed by an assessment of that training with recommendations for the future. Beginning in the academic year of 2016–2017, sophomore students at the United States Military Academy (USMA) majoring in either of the offered computing disciplines, specifically computer science or information technology, simultaneously take two common courses during the fall semester: an introductory programming course and a survey course of computer science and information technology topics. The survey course, designated CY355 Cyber Foundations – Computing, covers topics such as databases, web applications, networking, and cyber security. The students learn MySQL [7] and MongoDB [6] for the databases block, and they learn HTML, CSS, JavaScript, and Meteor (a full-stack JavaScript platform) [4] for the web applications block. The introductory programming course is taught in Python. The introduction of two database query languages plus HTML, CSS, and JavaScript over the course of one semester is daunting to novice computing undergraduate students. The challenge is how to present the material in a manner that will allow the students to more rapidly attain foundational knowledge of these programming languages. Given the time constraint of a one-semester course, the students must spend time outside of the classroom to learn the material. Commercial online training in programming languages has existed for years. A quality online course may quicken the ability for a student to learn the basics of a programming language. 2 RELATED WORKS The method of instruction where students complete work prior to class to prepare for the lesson is referred to in literature as flipping the classroom. This method benefits students by allowing for self-paced learning. Additionally, students learn how to learn and take ownership of the educational process [9]. Our use of a commercial online course allows a student to acquire the fundamentals of a language, preparing them for the material provided during class. This concept has been studied previously [1, 10], and shown that it is possible to improve student scores and understanding of the material. Flipping the classroom requires the instructor to create instructional materials: videos, readings, and online quizzes. These tools enable students to interact with the subject matter prior to class. Studies have shown that creating the online material for a class is initially very time intensive for the instructors, but afterwards frees up instructor resources [2, 3]. A Massive Open Online Course (MOOC) is similar to a flipped classroom as it requires significant preparation time for the instructor to prepare class materials [2]. The difference in the proposed method to a traditional flipped classroom or MOOC is the utilization of commercial online materials versus instructor created content; decreasing the instructor preparation time, at the cost of not being personalized for the course. MOTIVATION Using commercially available online training will help facilitate student learning of programming languages and help augment the student’s computing education. Additionally, online training will enable students to gain basic proficiency of programming languages at a faster rate. This more rapid attainment of basic proficiency will mitigate the risk of introducing several programming languages in a foundational computing course. METHODOLOGY The first step in incorporating online training into the curriculum was to decide whether to build or purchase the material to use. The overhead of building and maintaining an online training course by the same faculty also teaching the course was too burdensome. Thus, a commercial solution was the only feasible means to incorporate online training that could persist. The second step was to choose an appropriate commercial online training curriculum. The curriculum selected was Code School [8]. Code School was identified by senior faculty as a great online training site to learn programming. Likewise, Code School was rated “Excellent” by the editors of PC Mag [5] in 2015. A key reason in selecting Code School is that each online course assessed student understanding through interactive challenges, to include writing the appropriate code to a challenge. A student could only progress and ultimately complete the course by successfully completing these interactive challenges. These challenges reinforced the learning and enabled instructors to receive feedback on their students’ progress. Code School offered online training in SQL, MongoDB, HTML, CSS, JavaScript, and many other languages and topics. Code School, however, did not offer online training in the Meteor platform. Students were provided with paid site licenses to access all the courses offered by Code School. The required online training courses shown in Table 1 were assigned as required homework at the beginning of the semester; due dates coincide with when those specific languages would be taught in class. The students were assessed based on their successful completion of each course, indicated by a badge in their Code School profile, within the allotted time. Instructors ran a script that pulled all the badges earned by each student and the corresponding completion time stamps and compared that data to required badges and their course due dates. Table 1: Required Code School Courses Course Title Topic Try SQL SQL The Sequel to SQL SQL The Magical Marvels of MongoDB MongoDB The Elements of Web Design Web Design Front-end Foundations HTML/CSS Front-end Formations HTML/CSS ES2015: The Shape of JavaScript to Come JavaScript Students had the freedom to begin the courses as soon as they wanted, and they had the ability to take courses beyond the required training. The material covered in the online training was reinforced by in-class exercises and assessed on individual projects and examinations. ASSESSMENT OF ONLINE TRAINING Sixty-seven sophomores majoring in either computer science or information technology enrolled in CY355 in the fall semester of 2016. During the semester, anecdotal evidence indicated that the SQL training was well received, but the JavaScript training which included more complex JavaScript topics such as hoisting, was too much for students at their level in the computing discipline. The grades of the online training, based on completion date, was consistent with overall grades of the students. Several weeks after the conclusion of the course, the authors surveyed the former students in order to receive feedback regarding the course, to include the use of Code School. Twenty-nine students (43.2%) of the 67 sophomores responded to the survey. Twenty-eight of these respondents were CS majors, and one was an IT major. The majority of the respondents assessed Code School as being beneficial to their learning of the required computer languages as shown in Figure 1. When asked if they would recommend the continued use of Code School, most of the respondents did recommend continued use as shown in Figure 2. Figure 1: Student Assessment of Code School Figure 2: Student Recommendation of Code School The students were also queried about whether to keep or get rid of specific Code School courses in CY355. As shown in Figure 3, the most popular courses to retain were the database courses, followed by web design and implementation, and then the JavaScript course. It is interesting to note that no one selected “None of the Above” which indicates that all respondents recommended the retention of at least one course. When asked about which course to get remove from CY355, the respondents overwhelmingly selected ES2015: The Shape of JavaScript to Come as shown in Figure 4. In retrospect, this course started at much too advanced a level than the other classes. Code School does offer more basic JavaScript courses, and one of those may better serve the students in CY355. It is also interesting that five of the respondents indicated that none of the courses should be discarded for the future offering of CY355. Students were then asked, “What are your thoughts about using

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us