- Teaching and Learning Programming
- Online Learning and Analytics
- semigroups and automata theory
- Open Education and E-Learning
- Experimental Learning in Engineering
- Logic, programming, and type systems
- Educational Games and Gamification
- Software Testing and Debugging Techniques
- Innovative Teaching and Learning Methods
- Software Engineering Research
- Gender and Technology in Education
- Distributed and Parallel Computing Systems
- Algorithms and Data Compression
- Formal Methods in Verification
- Natural Language Processing Techniques
- Information Systems Education and Curriculum Development
- Software Engineering Techniques and Practices
- Model-Driven Software Engineering Techniques
- Multimedia Communication and Technology
- Machine Learning and Algorithms
- Innovative Teaching Methods
- Big Data and Business Intelligence
- Embedded Systems Design Techniques
- Higher Education Learning Practices
- Parallel Computing and Optimization Techniques
Duke University
2013-2023
University of Glasgow
2021
Hinchingbrooke Hospital
2012
Mary Lyon Centre at MRC Harwell
2004
Medical Research Council
2004
Rensselaer Polytechnic Institute
1993-2002
Purdue University West Lafayette
1988-1994
Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, of little educational value unless engages learners an active learning activity. Drawing on a review experimental studies visualization effectiveness, we motivate this position against the backdrop current attitudes and best practices with respect use. suggest new taxonomy learner engagement technology. Grounded Bloom's...
Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, of little educational value unless engages learners an active learning activity. Drawing on a review experimental studies visualization effectiveness, we motivate this position against the backdrop current attitudes and best practices with respect use. suggest new taxonomy learner engagement technology. Grounded Bloom's...
Programming is a complex task that requires the development of many skills including knowledge syntax, problem decomposition, algorithm development, and debugging. Code-writing activities are commonly used to help students develop these skills, but difficulty writing code from blank page can overwhelm novices. Parsons problems offer simpler alternative by providing scrambled blocks must be placed in correct order solve problem. In 16 years since their introduction computing education...
JAWAA is a simple command language for creating animations of data structures and displaying them with Web browser. Commands are stored in script file that retrieved run by the applet when applet's page accessed through Web. commands allow creation movement primitive objects (circles, lines, text, rectangles) structure (arrays, stacks, queues, lists, trees graphs). A can be generated as output program written any language.
This paper describes the integration of Alice 3D virtual worlds environment into a diverse set subjects in middle school, including development tutorials, example and lesson plans. In summer 2008 our experiences with school teachers included three-weeks training guidance Our students involved two one-week camps instruction Alice. We found both strongly engaged The created plans to interactively teach topic other which build an world on particular either from scratch or using template world....
This paper describes the implementation and evaluation of a program that uses active recruiting peer-led team learning to try increase participation success women minority students in undergraduate computer science. These strategies were applied at eight universities starting fall 2004. There have been some impressive results: We succeeded attracting under-represented who would not otherwise taken CS course.Evaluation shows our significantly improves retention rates grades, especially for...
We describe the results from a two-year study with fourteen universities on presenting formal languages in more visual, interactive and applied manner using JFLAP. In our majority of students felt that having access to JFLAP made learning course concepts easier, them feel engaged enjoyable. also changes additions we have based feedback users. These include new algorithms such as CYK parser user-controlled parser, resources online tutorial, wiki listserv.
This paper describes the implementation and evaluation of a program that uses active recruiting peer-led team learning to try increase participation success women minority students in undergraduate computer science. These strategies were applied at eight universities starting fall 2004. There have been some impressive results: We succeeded attracting under-represented who would not otherwise taken CS course. Evaluation shows our significantly improves retention rates grades, especially for...
An automata theory course can be taught in an interactive, hands-on manner using a computer. At Duke we have been the software tool JFLAP to provide interaction and feedback CPS 140, our course. is for designing running nondeterministic versions of finite automata, pushdown Turing machines. Recently, enhanced allow one study proofs several theorems that focus on conversions languages, from form another, such as converting NFA DFA then minimum state DFA. In addition, enhancements combined...
We present JAWAA 2.0, a scripting language for creating animations easily over the web. includes primitives, easy creation of data structures and operations on these structures, an editor complex objects. show how to use in range computer science courses including CS 0, 1, 2 advanced courses. Instructors can quickly build demos lecture, students enhance their programming projects with animation.
Students get more out of an interactive lecture than a passive because they are given time to think. This allows them determine if understand concept, and not ask questions. understanding is crucial when concepts build on one another. We describe our positive experiences in teaching sophomore-level computer science courses format with the classroom.
As a report of working group at ITiCSE 2006, this paper provides vision how visualizations and the software that generates them may be integrated into hypertextbooks course management systems. This integration unique synergy we call Visualization-based Computer Science Hypertextbook (VizCoSH). By borrowing features both traditional systems, VizCoSHs become delivery platforms address some reasons why have failed to find widespread use in education.The heart describes these explains, from...
Students are often asked to learn programming by writing code from scratch. However, many novices struggle write and get frustrated when their does not work. Parsons problems can reduce the difficulty of a coding problem providing mixed-up blocks learner rearranges into correct order. These include distractor that needed in solution. Distractor common errors, which may help students recognize fix such errors. Evidence suggests find engaging, useful for learning program, typically easier...
We present a collection of new and enhanced tools for experimenting with concepts in formal languages automata theory. New tools, written Java, include JFLAP creating simulating finite automata, pushdown Turing machines; Pâté parsing restricted unrestricted grammars transforming context-free to Chomsky Normal Form; PumpLemma proving specific are not regular. Enhancements previous LLparse LRparse, instructional LL(1) LR(1) grammars, LL(2) displaying parse trees, any grammar conflict resolution.
This paper describes the integration of Alice 3D virtual worlds environment into many disciplines in elementary school, middle school and high school. We have developed a wide range instructional materials including tutorials for both computer science concepts animation concepts. To encourage building more complicated worlds, we template classes worlds. With our materials, teachers students are exposed to computing while using create projects, stories, games quizzes. These were successfully...
Online education supported by digital courseware will radically alter higher in ways that we cannot predict. New technologies such as MOOCs and Khan Academy have generated interest new models for knowledge delivery. The nature of Computer Science content provides special opportunities computer-supported delivery both traditional online classes. Traditional CS textbooks are likely to be replaced materials tightly integrate with visualizations automatically assessed exercises. We refer these...
In this paper we describe how to increase the visualization and interaction in automata theory course through use of tools JFLAP Pâté. We also new features these that allow additional interaction. New include addition regular expressions exploring their conversion from nondeterministic finite (NFA), increasing grammars. Pâté display a parse tree while parsing unrestricted grammars, improved with transformation
Programs that use animations or visualizations attract student interest and offer feedback can enhance different learning styles as students work to master programming problem solving. In this paper we report on several CS 1 assignments have used successfully at Duke University introduce reinforce control constructs, elementary data structures, object-based programming. All the involve either by which mean graphical displays evolve over time, include static display of images. The do not...
We present a hands-on approach to problem solving in the formal languages and automata theory course. Using tool JFLAP, students can solve wide range of problems that are tedious using pencil paper. In combination with more traditional problems, study wider-range on topic. Thus, explore concepts computationally visually theoretically without JFLAP. addition, we new feature Turing machine building blocks. One now build complex machines by other as components or
For forty years programming has been the foundation of introductory computer science. Despite exponential increases in computational power during this period, examples used courses have remained largely unchanged. The incredible growth statistics at all levels, contrast with decline students taking science courses, points to potential for introducing many levels without emphasizing process programming: leverage expertise and role-models provided by high school mathematics teachers studying...
We describe the results from a two-year study with fourteen universities on presenting formal languages in more visual, interactive and applied manner using JFLAP. In our majority of students felt that having access to JFLAP made learning course concepts easier, them feel engaged enjoyable. also changes additions we have based feedback users. These include new algorithms such as CYK parser user-controlled parser, resources online tutorial, wiki listserv.
article Free Access Share on An overview of visualization: its use and design: report the working group in visualization Authors: Joe Bergin Pace University UniversityView Profile , Ken Brodie Leeds, UK UKView Marta Patiño-Martínez Universitat Politecnica de Madrid, Spain SpainView Myles McNally Alma College CollegeView Tom Naps Lawrence Susan Rodger Duke Judith Wilson Temple Michael Goldweber Beloit Sami Khuri San Jose State Ricardo Jiménez-Peris Authors Info & Claims ACM SIGCUE...
We describe the instructional software JFLAP 4.0 and how it can be used to provide a hands-on formal languages automata theory course. doubles number of chapters worth material from 3.1, now covering topics eleven thirteen for semester has easier interactive approaches previous covers many new including three parsing algorithms, multi-tape Turing machines, L-systems, grammar transformations.