Introduction to Volume 15 Issue 2
David Joinerpp. 1–1
A brief introduction to this issue of the Journal of Computational Science Education from the editor.
pp. 1–1
A brief introduction to this issue of the Journal of Computational Science Education from the editor.
pp. 2–4
https://doi.org/10.22369/issn.2153-4136/15/2/1@article{jocse-15-2-1, author={Elizabeth Bautista and Nitin Sukhija}, title={Creating Guidelines to Supplement the Data Analytics Program in Community College toward Preparation of STEM and HPC Careers}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={2--4}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/1} }
Data science continues to create opportunities in the technology and HPC industry resulting from growing data sets, the need for more insights, the necessity of automation, the evolving roles and changes in job descriptions as those positions are needed and the shortage in the workforce with this talent. However, despite the growing demand, not enough students are learning the basic skills or being able to be given opportunities for hands-on work. In the Northern California Community College system, many of the students return to school after having graduated with a bachelor's degree or find the need to gain new skills to enhance their resume or to change careers altogether. Unfortunately, in the community colleges, there are not enough classes or instructors who are trained in data science to teach the class. In the four-year university, the program is usually waitlisted for transfer students from the community college. This paper is a continuation of the work after the National Energy Research Scientific Computing Center (NERSC) partnered with Laney College to start a Data Analytics program. After two years, they are challenged with not enough instructors to the number of students that are interested in the program. Further, approximately 40% of students are struggling to continue the rigorous material they need to learn. These students may have to work to support families and are unable to put in the 20-40 hours of work to earn a living as well as the 20-40 hours of study and homework that the program requires. Therefore, Laney partnered with Codefinity, an online education program that has a track for Python Data Analysis and Visualization.
pp. 5–9
https://doi.org/10.22369/issn.2153-4136/15/2/2@article{jocse-15-2-2, author={Sandra B. Nite and Joshua Winchell and Marinus ‘Maikel’ Pennings and Dhruva K. Chakravorty and Keith Jackson}, title={Assessing the Impact of a CyberTraining Project: Expanding the Metrics}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={5--9}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/2} }
As training on cyberinfrastructure resources becomes more common, we show the progression of metrics used to measure the effectiveness and impact of informal computational training courses that are provided by the Texas A&M University High Performance Research Computing facility. These courses were built to support researchers from research groups that have a background in computing practices. As such, the courses were structured as information-sharing sessions with the primary method to measure course success being frequency of participation. While these metrics inform about the interest in these courses, they relied on researchers continuing the learning process in their laboratories. As computing becomes ubiquitous in research programs, researchers who have no peer-learning mechanisms participate in these courses. Researchers are now participating in a continuum of courses that cover introductory to advanced topics and rely on them to build proficiency in research computing technologies. We report on a pilot program that pivots along the way to support these researchers.
pp. 10–15
https://doi.org/10.22369/issn.2153-4136/15/2/3@article{jocse-15-2-3, author={Cody Stevens and Sean M. Anderson and Adam Carlson}, title={An Interdisciplinary Introduction to High Performance Computing for Undergraduate Programs}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={10--15}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/3} }
The new strategic framework of Wake Forest University seeks to build and strengthen signature areas of excellence in research, scholarship, and creative work that cross academic and institutional boundaries. To support this initiative, the High Performance Computing (HPC) Team has developed an Introduction to High Performance Computing undergraduate course that is accessible to students of all levels and of all academic domains. The objective of this course is to build a curriculum that presents HPC as an essential tool for research and scholarship, enables student-faculty collaboration across all disciplines, and promotes student participation in academic research during their undergraduate studies.
pp. 16–23
https://doi.org/10.22369/issn.2153-4136/15/2/4@article{jocse-15-2-4, author={Ezhilmathi Krishnasamy and Pascal Bouvry}, title={HPC Courses Training Organization and Experiences in Supercomputing Luxembourg EuroCC: National Competence Centre (NCC)}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={16--23}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/4} }
High performance computing (HPC) is a crucial field in science and engineering. Although HPC is often viewed as a pure field of computer science or a subset of it, it actually serves as a tool that enables us to achieve exceptional results in science and engineering. Since early on, computers have been primarily utilized for extensive arithmetic computations. However, recent advancements in electronics have also made edge computing integral to high performance computing. Additionally, we have witnessed remarkable growth in computer architecture, leading to the development of powerful HPC machines, with supercomputers now reaching exaflop powers. Nevertheless, there are still challenges in utilizing these powerful machines due to the lack of knowledge in integrating physics and mathematics into HPC. Furthermore, complications with the software stack and common parallel programming models that target exascale computing (heterogeneous computing) persist. In this context, we present our effective course design for HPC training, focusing on CUDA, OpenACC, and OpenMP courses, which aim to equip STEM graduates with HPC knowledge. We also discuss how our training stands out in comparison to other NCC training frameworks in the EuroCC context and promotes lifelong learning.
pp. 24–28
https://doi.org/10.22369/issn.2153-4136/15/2/5@article{jocse-15-2-5, author={Mark Matlin}, title={Scientific Computation in Jupyter Notebooks using Python}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={24--28}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/5} }
Computation is a significant part of the work done by many practicing scientists, yet it is not universally taught from a scientific perspective in undergraduate science departments. In response to the need to provide training in scientific computation to our students, we developed a suite of self-paced 'modules' in the form of Jupyter notebooks using Python. These modules introduce the basics of Python programming and present a wide variety of scientific applications of computing, ranging from numerical integration and differentiation to Fourier analysis, Monte Carlo methods, parallel processing, and machine learning. 1 The modules contain multiple features to promote learning, including 'Breakpoint Questions,' recaps of key information, self-reflection prompts, and exercises.
pp. 29–39
https://doi.org/10.22369/issn.2153-4136/15/2/6@article{jocse-15-2-6, author={Katelyn Reagan and Maryam Berijanian and Dirk Colbry}, title={A Case Study for using Generative Language Models in GUI Development}, journal={The Journal of Computational Science Education}, year=2024, month=nov, volume=15, issue=2, pages={29--39}, doi={https://doi.org/10.22369/issn.2153-4136/15/2/6} }
In the age of advanced open-source artificial intelligence (AI) and a growing demand for software tools, programming skills are as important as ever. For even the most experienced programmers, it can be challenging to determine which software libraries and packages are best suited to fit specific programming needs. To investigate the potential of AI-supported learning, this case study explores the use of OpenAI’s ChatGPT, powered by GPT-3.5 and GPT-4, by students to create an image annotation graphical user interface (GUI) in Python. This task was selected because good User Experience (UX) design is a deceptively complex task in that it can be very easy to build a GUI interface but extremely hard to build one that is well designed. The approaches employed in this study included creating a program from scratch that integrates the listed features incrementally; compiling a list of essential features and requesting ChatGPT to modify existing code accordingly; collaborating on specific segments of a user-initiated program; and creating a program anew using GPT-4 for comparative analysis. The findings of this case study indicate that ChatGPT is optimally utilized for responding to precise queries rather than creating code from scratch. Effective use of ChatGPT requires a foundational understanding of programming languages. As a learning tool, ChatGPT can help a novice programmer create competent initial drafts, akin to what one might expect from an introductory programming course, yet they necessitate substantial modifications for deployment of the tool even as a prototype.