Clayton Ferner

Learn More
Early undergraduate Grid computing courses generally took a bottom-up approach to Grid computing education starting with network protocols, client-server concepts, creating Web and Grid services, and then progressing through the underlying Grid computing middleware, security mechanisms and job submission all using a Linux command-line interface. We describe(More)
North Carolina students studied grid computing in a course taught across multiple universities in fall 2004 and fall 2005. This department describes the student assignments and the instructors' general experiences in offering the course. we described a grid computing course taught across multiple North Carolina universities using the North Carolina Research(More)
Grid computing is now mature enough and important enough to be studied as a full course at the undergraduate level for upper-level computer science majors. We have developed such a course, including a set of lecture slides, assignments, and assignment handouts specifically targeted for this audience. The sequence of assignments is a key part of the course.(More)
In this paper, we describe an approach for teaching parallel and distributed computing at the undergraduate level using computational patterns. The goal is to promote higher-level structured design for parallel programming and make parallel programming easier and more scalable. A pattern programming framework has been developed to create a distributed(More)
— We have developed two new approaches to teaching parallel computing to undergraduates using higher level tools that lead to ease of programming, good software design, and scalable programs. The first approach uses a new software environment that creates a higher level of abstraction for parallel and distributed programming based upon a pattern programming(More)
Since Fall 2004, we have been co-teaching a class on Grid computing to several NC institutions using the North Carolina Research and Education Network (NCREN). In this paper, we focus on a new teaching approach. In Fall 2008, we introduced a more integrated co-teaching or " pair-teaching " approach to the course. Our experiences are particularly relevant(More)
Parallel programming has been taught for many years but has recently taken on greater significance with introduction of multicore and many-core processors. Still, most teaching has followed a traditional path of focusing on learning low-level tools such as MPI. This workshop introduces a new educational approach based upon first selecting a computational(More)
—In this paper, we describe the results of teaching a parallel programming course using a pattern programming approach in a course taught across the State of North Carolina on a televideo network in Fall 2013. Five universities participated in this study. The course begins with a higher-level tool called the Seeds framework that creates and executes(More)