• Title/Summary/Keyword: Practical Programming Classes

Search Result 27, Processing Time 0.024 seconds

A Workflow for Practical Programming Class Management Using GitHub Pages and GitHub Classroom

  • Aaron Daniel Snowberger;Choong Ho Lee
    • Journal of Practical Engineering Education
    • /
    • v.15 no.2
    • /
    • pp.331-339
    • /
    • 2023
  • In programming classes, there is always a need to efficiently manage programming assignments. This is especially important as class sizes and assignment complexity grows. GitHub and GitHub Classroom makes the management of student assignments much simpler than uploading files and folders to a LMS or shared online drive. Additionally, git and GitHub are industry standard tools, so introducing students these tools in class provides them a good opportunity to start learning about how software is developed in the real-world. This study describes a workflow that uses both GitHub Pages and GitHub Classroom for more efficient classroom and assignment management. The workflow outlined in this study was used in two practical web programming classes in Spring 2023 with 46 third and fourth-year university students. GitHub Pages was used as a classroom website to distribute class announcements, assignments, lecture slides, study guides, and exams. GitHub Classroom was used as a class roster and assignment management platform. The workflow presented in this study is expected to assist other lecturers with the formidable tasks of distributing, collecting, grading, and leaving feedback on multiple students' multi-file programming assignments in practical programming classes.

Creating a Standardized Environment for Efficient Learning Management using GitHub Codespaces and GitHub Classroom

  • Aaron Daniel Snowberger;Kangsoo You
    • Journal of Practical Engineering Education
    • /
    • v.16 no.3_spc
    • /
    • pp.267-274
    • /
    • 2024
  • One challenge with teaching practical programming classes is the standardization of development tools on student computers. This is particularly true when a complicated setup process is required before beginning to code, or in remote classes, such as those necessitated by the COVID-19 pandemic, where the instructor cannot provide individual troubleshooting assistance. In such cases, students who encounter problems during the setup process may give up on the class altogether before even beginning to code. Therefore, this paper recommends using GitHub Codespaces as a tool for implementing standardized student development environments from day one. Codespaces provides Docker containers that an instructor can configure in such a way as to enable students to practice installing various coding tools within a controlled space, while also providing a language-specific, fully optimized development environment. In addition, Codespaces may be used more effectively in collaboration with GitHub Classroom, which helps instructors manage both the starter code and coding environment in which students work. In this paper, we compare two semesters of university Node.JS programming classes that utilized different development environments: one localized on student computers, the other containerized in Codespaces online. Then, we discuss how GitHub Codespaces and GitHub Classroom can be used to increase the effectiveness of practical programming classes while also increasing student engagement and programming confidence in class.

Analysis of Influencing Factors of Learning Engagement and Teaching Presence in Online Programming Classes

  • Park, Ju-yeon;Kim, Semin
    • Journal of information and communication convergence engineering
    • /
    • v.18 no.4
    • /
    • pp.239-244
    • /
    • 2020
  • This study analyzed the influencing factors of learning engagement and teaching presence in online programming practice classes. The subjects of this study were students enrolled in an industrial specialized high school, who practiced creating Arduino circuits and programming using a web-based virtual practice tool called Tinkercad. This research adopted a tool that can measure task value, learning flow, learning engagement, and teaching presence. Based on this analysis, learning flow had a mediating effect between task value and online learning engagement, as well as between task value and teaching presence. Increasing learning engagement in online classes requires sensitizing the learners about task value, using hands-on platforms available online, and expanding interaction with instructors to increase learning flow of students. Furthermore, using virtual hands-on tools in online programming classes is relevant in increasing learning engagement. Future research tasks include: confirming the effectiveness of online learning engagement and teaching presence through pre- and post-tests, and conducting research on various practical subjects.

The Mediating Effect of Learning Flow on Learning Engagement, and Teaching Presence in Online programming classes (온라인 프로그래밍 수업에서 자기조절능력과 학습참여, 교수실재감에 대한 학습몰입의 매개 효과)

  • Park, Ju-yeon
    • Journal of The Korean Association of Information Education
    • /
    • v.24 no.6
    • /
    • pp.597-606
    • /
    • 2020
  • Recently, as students' programming classes are being conducted online, interest in factors that can lead to the success of online programming classes is also increasing. Therefore, in this study, online programming classes were conducted for specialized high school students using a web-based simulation programming tool through TinkerCad. In these online programming classes, students' self-regulation ability and learning flow were set as variables that influence both learning engagement and teaching presence, and the predictive power of each was analyzed. As a result, it was found that both self-regulation ability and learning flow were predictive variables for learning engagement and teaching presence, and that learning flow played a mediating role between self-regulation ability, learning engagement, and teaching presence. This study is meaningful in that it suggested that self-regulation ability and learning flow should be considered more meaningfully in online programming classes, and a practical strategy for this is presented.

A Study on the Experience and Utilization of Generative AI-Based Classes - Focusing on Programming Classes (생성형 인공지능 기반 수업 경험 및 활용 방안에 대한 연구 - 프로그래밍 수업을 중심으로)

  • Jung-Oh Park
    • Journal of Practical Engineering Education
    • /
    • v.16 no.1_spc
    • /
    • pp.33-39
    • /
    • 2024
  • This study examines the changes in learners' positive/negative perceptions of classroom experience and actual utilisation of AI chatbots in response to the recent changes in education trends caused by generative AI. AI chatbots were utilised in web programming classes for six classes of engineering students over two semesters. The learners' experience and usage were analysed from the beginning of the semester through surveys until the submission of midterm and final examination reports. The study's results indicate that the chatbot enhanced learning by providing Q/A feedback and solving practical problems. Additionally, the perception of the chatbot improved from midterm to the end of the course. The study also drew meaningful conclusions about the issue of community disconnection (personalisation) in the classroom and how to use it as educational software. This research is significant for the development of generative AI-based software.

Exploratory Data Analysis on the Connection of the Software Curriculum between the Primary and Secondary Curriculums and the Higher Curriculums (초중등 교육과정과 고등교육과정의 소프트웨어 교과의 연계 문제에 대한 탐색적 데이터 분석)

  • Mi-yeon Kim;Choong-ho Lee
    • Journal of Practical Engineering Education
    • /
    • v.16 no.3_spc
    • /
    • pp.283-290
    • /
    • 2024
  • Software education is an important subject in the era of forth industrial evolution generation, and the number of hours is gradually expanding in Korea's elementary and secondary curriculum, and universities have also opened software-related courses to take liberal arts mandatory regardless of major. The Ministry of Education presented elementary and secondary school programming achievement standards and emphasized the connection between prerequisite subjects as educational goals. Applicants for programming classes at H University also completed information classes in elementary and secondary courses, but many students were new to programming without taking related classes. Therefore, this study analyzed the data using the survey data and achievement scores of programming learners. As a result of the analysis, information classes completed in elementary and secondary courses were not linked to higher education courses at all, and improvements for problem solving were derived. This study is meaningful as a study for effective software education in higher education courses.

A Study on the Possibility of Block-based Programming Courses for Visual Impairments (시각장애 학생을 위한 블록 기반 프로그래밍 수업의 가능성 분석)

  • Eunbong Yang;Jamee Kim;Wongyu Lee
    • Journal of The Korean Association of Information Education
    • /
    • v.26 no.5
    • /
    • pp.361-374
    • /
    • 2022
  • The National Institute of Special Education developed and distributed software textbooks for disabled students according to the necessity of practical course in elementary school and information in middle school in the 2015 revised curriculum. It is a textbook provided from the perspective of education opportunity equity but the content of programming education for visually impaired students was insufficient. Therefore this study was conducted for the purpose of confirming the effectiveness of programming education for visual impaired students and providing the direction of future programming education. In order to achieve the purpose, programming classes were conducted for blind students in the 6th grade of elementary school. As a result of a study using "Blocks4All", a block-based programming tool with robots, students participated in classes actively and efficacy, intrest, and usefulness of programming are high. This study is meaningful in that it confirmed the possibility of programming education for visually impaired students.

A Case Study on Running a Game-based Programming Class for Lower Grades (저학년을 위한 게임 기반 프로그래밍 수업 운영 사례 연구)

  • Do-hyeon Choi
    • Journal of Practical Engineering Education
    • /
    • v.16 no.2
    • /
    • pp.151-157
    • /
    • 2024
  • Most of the existing game-based education programmes for lower grades are simple block-coding studies, and there is a lack of examples of programming-intensive classes. In this study, we implemented a Minecraft-based Python coding fundamentals class for 3 classes at a local elementary school during a 2-week school holiday. The learning programme was reorganised from the standard learning programme on the official website, such as building quests through LAN-PARTY and self-scripting in-game, to improve class interest and motivation. In addition, we analysed the satisfaction and preferences of the class topics through a survey, and obtained meaningful results for future educational program development. This study is significant as a basic research for the design and development of game-based educational programmes for all age groups.

Study on Strategy for Applying Flipped Learning Method for Programming Practice (프로그래밍 실습을 위한 플립드러닝 교수법 적용 전략 연구)

  • Kim Hyun Ah
    • The Journal of the Convergence on Culture Technology
    • /
    • v.9 no.3
    • /
    • pp.753-761
    • /
    • 2023
  • This study investigates strategies to increase learning efficiency for programming subjects to which flipped learning teaching method is applied targeting non-major students. Design a learner-centered flipped learning-based programming class and get strategies for effective application methods for field application. Also, the purpose is to explore the efficient application of the flipped learning teaching method to the computational thinking subject of liberal arts classes at this university. By applying the flipped learning teaching method, one of the innovative teaching methods, we consider ways to improve the quality of programming subject classes, the efficiency of practical education, and the improvement of learner achievement. The purpose of this study is to design an efficient learning model for software education targeting non-majors by applying various teaching methods and learning design models convergence away from the traditional teaching method.

The Development of Instruction Model for SW Education using the Minecraft Platform (마인크래프트 플랫폼을 이용한 소프트웨어교육 교수학습 모형)

  • Lee, Myungsuk
    • Journal of Korea Society of Digital Industry and Information Management
    • /
    • v.15 no.3
    • /
    • pp.119-128
    • /
    • 2019
  • Minecraft game is a sandboxed game based on a high degree of users' freedom; the game encourages its users to recreate various play patterns to increase their immersion. Although recently there were many studies that use Minecraft game techniques to improve the teaching methods but still not well adapted due to being applications-based techniques. In this paper, we present a teaching model that utilizes the same concept of the Minecraft games in where learners customize the class concepts based on their needs. Moreover, Minecraft-based learning games attempt to be used for learner-led, creativity and programming instruction, to overcome these use-cases limitations, by our study we aim to include the Minecraft-based learning games in class teaching activities, theoretical and practical lessons. In this way, we intend to increase interest in programming lessons, and to increase immersion as another way of game learning. In the future, we attempt to measure various effects of the uses of Minecraft-game-based teaching in programming classes compare to the traditionally used methods.