- Teaching and Learning Programming
- Online Learning and Analytics
- Gene Regulatory Network Analysis
- Microbial Metabolic Engineering and Bioproduction
- Bioinformatics and Genomic Networks
- Open Education and E-Learning
- Scientific Computing and Data Management
- Educational Games and Gamification
- Distributed and Parallel Computing Systems
- Innovative Teaching and Learning Methods
- Experimental Learning in Engineering
- Software Engineering Research
- Data Management and Algorithms
- Online and Blended Learning
- Simulation Techniques and Applications
- Algorithms and Data Compression
- Data Visualization and Analytics
- Digital Image Processing Techniques
- Peer-to-Peer Network Technologies
- Parallel Computing and Optimization Techniques
- Software Testing and Debugging Techniques
- Intelligent Tutoring Systems and Adaptive Learning
- Geographic Information Systems Studies
- Advanced MIMO Systems Optimization
- Fungal and yeast genetics research
Virginia Tech
2014-2025
Assiut University
2024
University of Maryland, College Park
1983-2024
American Society For Engineering Education
2020
California Institute of Technology
2006
National Institute of Standards and Technology
1990
American University
1990
University of Michigan
1990
Carnegie Mellon University
1990
Engineering Associates (United States)
1990
We present findings regarding the state of field Algorithm Visualization (AV) based on our analysis a collection over 500 AVs. examine how AVs are distributed among topics, who created them and when, their overall quality, they disseminated. There does exist cadre good active developers. Unfortunately, we found that many low coverage is skewed toward few easier topics. This can make it hard for instructors to locate what need. no effective repositories currently available, which puts at risk...
This article presents a critique of conventional collaboration transparency systems, also called “application-sharing” which provide the real-time shared use legacy single-user applications. We find that systems are inefficient in their network resources and lack support for key groupware principles: concurrent work, relaxed WYSIWIS, group awareness. Next, we present an alternative approach to implementing provides many features previously seen only collaboration-aware applicaitons. Our is...
The OpenDSA Project seeks to provide complete instructional materials for data structures and algorithms (DSA) courses. Our vision a highly interactive eTextbook involves the use of many algorithm visualizations (AVs) wide range exercises with automated assessment. To realize this we require mix third-party custom software components that make up client/server-based web application. massive amount content development required compels us adopt an appropriate open-source practices will...
Abstract Computer science core instruction attempts to provide a detailed understanding of dynamic processes such as the working an algorithm or flow information between computing entities. Such are not well explained by static media text and images, difficult convey in lecture. The authors survey history visualization computer education, focusing on artifacts that have documented positive educational assessment. Changes how technology has affected development uptake recent changes leading...
Learning abstract concepts in data structures and algorithms (DSA) courses is often difficult for students. To improve understanding of DSA topics, numerous algorithm visualization (AV) systems stand-alone AVs have been developed, supporting a wide range different engagement strategies. Prior studies show that active students necessary to make educationally effective. In this paper, we introduce JSAV, new JavaScript framework creating engaging visualizations with learning features. JSAV...
Recursion is both an important and a difficult topic for introductory Computer Science students. Students often develop misconceptions about the that need to be diagnosed corrected. In this paper, we report on our initial attempts concept inventory measures student basic recursion topics. We present collection of difficulties encountered by students when learning as presented in typical CS2 course. Based collection, draft form series questions was developed evaluated, with question rubric...
This paper describes QUILT, a prototype geographic information system (GIS) that uses the quadtree data structure as underlying representation for cartographic data. While QUILT contains many features typically available in GIS, its primary purpose is to serve testbed design and testing of new structures algorithms use computer cartography. Quadtree variants region, point line are implemented using linear quadtree, organized on disk by B-tree. provides simple attribute attachment which...
We present our findings on the state of field algorithm visualization, based extensive search and analysis links to hundreds visualizations. seek answer questions such as how content is distributed among topics, who created visualizations when, overall quality available visualizations, are disseminated. have built a wiki that currently catalogs over 350 contains beginnings an annotated bibliography visualization literature, provides information about researchers projects. Unfortunately, we...
This paper contains measured data for 2.5 and 60 GHz in-building partition loss. Path loss measurements were recorded using a broadband sliding correlator channel sounder which over 39000 power delay profiles (PDP) in 22 separate locations modern office building. Transmitters receivers separated by distances ranging from 3.5 to 27.4 meters, variety of obstructions, order emulate future single-cell-per-room wireless networks. These may aid the development networks unlicensed 2.4 bands.
A data structure and update algorithm are presented for a prototype real-time collision avoidance safety system simulating multirobot workspace. The is variant of the octree, which serves as spatial index. authors use N-objects indexes collection 3D primitive solids. These primitives make up two seven-degree-of-freedom robot arms workspace modeled by system. Octree nodes containing mor than predetermined number N decomposed. This rule keeps octree small, entire world model application can be...
In this paper, we present our vision for OpenDSA, an open-source, community-based effort to create a complete active-eBook Data Structures and Algorithms courses at the undergraduate level. We define active-eBooks as going beyond classic hyper textbooks, being close integration of text images with interactive visualizations/simulations assessment activities. The OpenDSA project is meant proceed broad participation from CS Education community, maximum flexibility on reuse materials, ability...
The eukaryotic cell cycle is regulated by a complicated chemical reaction network. Although many deterministic models have been proposed, stochastic are desired to capture noise in the resulting from low numbers of critical species. However, converting model into one that accurately captures effects can result complex hard build and expensive simulate. In this paper, we first apply hybrid (mixed stochastic) simulation method such model. With proper partitioning reactions between methods,...
In computer science, procrastination and related problems with managing programming projects are viewed as primary causes of student attrition. Unfortunately, the most successful techniques for reducing (such courses in study skills) resource-intensive do not scale to large classrooms. this paper, we describe three course interventions that designed be scalable classrooms require few resources implement. Reflective writing assignments students consciously consider how their time management...
We present quantitative analyses performed on character-level program edit and execution data, collected in a junior-level data structures algorithms course. The goal of this research is to determine whether proposed measures student behaviors such as incremental development procrastination during their process are significantly related the correctness final solutions, time when work completed, or total spent working solution. A dataset 6.3 million fine-grained events from each student's...
Data Structures and Algorithms are a central part of Computer Science. Due to their abstract dynamic nature, they difficult topic learn for many students. To alleviate these learning difficulties, instructors have turned algorithm visualizations (AV) AV systems. Research has shown that especially engaging AVs can an impact on student DSA topics. Until recently, most systems were Java-based But, the popularity Java declined is being supplanted by HTML5 JavaScript content online. In this...
Non-computer science majors often struggle to find relevance in traditional computing curricula that tend emphasize abstract concepts, focus on nonpractical entertainment, or rely decontextualized settings. BlockPy, a web-based, open access Python programming environment, supports introductory programmers data-science context through dual block/text view. The web extra at https://youtu.be/RzaOPqOpMoM illustrates BlockPy features discussed the article.
Many algorithm visualizations have been created, but little is known about which features are most important to their success. We believe that pedagogically useful exhibit certain hold across a wide range of visualization styles and content. began our efforts identify these with review attempted an initial set candidates. then ran two experiments the effectiveness for subset from list. identified small number seem significant impact on pedagogical effectiveness, found several others appear...
Algorithm visualizations (AVs) are widely viewed as having the potential for improving computer science education. However, rate of AV use and overall impact on education does not match positive interest in their that instructors report. Surveys CS faculty show impediments to successful AVs classroom include difficulties finding quality desired topics, adapting a given setting, lack knowledge best way deploy AVs. This indicates need better support instructors, get them past these barriers....