EDBT 2026 Demo / reviewers in the wild / expert
Phillip Merlin Uesbeck
dblp:179/8599
· DBLP profile ↗
7ranked-venue papers
2as first author
0since 2021 · last 2020
0000-0001-8182-9942ORCID · reported
Domains — the database's venue-derived domains; a paper can count in several
Applied, interdisciplinary, general and emerging computing · 3Software engineering, systems software and programming languages · 2 · 2 first-authorArtificial intelligence and machine learning · 1Human-computer interaction and ubiquitous computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
2 papers |
Empirical software engineering · 50% Programming languages and type systems · 50% | |
| Interdisciplinary, comprehensive, and emerging computing
2 papers |
Computing education · 100% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Empirical software engineering
developer studies |
0.7 | 2 | 2020 | A randomized controlled trial on the effects of embedded computer language switching · ESEC/SIGSOFT FSE 2020 An empirical study on the impact of C++ lambdas and programmer experience · ICSE 2016 |
Programming languages and type systems › domain-specific languages
embedded domain-specific languages |
0.4 | 1 | 2020 | A randomized controlled trial on the effects of embedded computer language switching · ESEC/SIGSOFT FSE 2020 |
Programming languages and type systems
lambda expressions |
0.2 | 1 | 2016 | An empirical study on the impact of C++ lambdas and programmer experience · ICSE 2016 |
Computing education
programming education |
0.2 | 2 | 2020 | A randomized controlled trial on the effects of embedded computer language switching · ESEC/SIGSOFT FSE 2020 An empirical study on the impact of C++ lambdas and programmer experience · ICSE 2016 |
Methods — techniques the papers use, named apart from their topics
randomized controlled trial · 1.4
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | A randomized controlled trial on the effects of embedded computer language switchingabstractPolyglot programming, the use of multiple programming languages during the development process, is common practice in modern software development. This study investigates this practice through a randomized controlled trial conducted under the context of database programming. Participants in the study were given coding tasks written in Java and one of three SQL-like embedded languages. One was plain SQL in strings, one was in Java only, and the third was a hybrid embedded language that was closer to the host language. We recorded 109 valid data points. Results showed significant differences in how developers of different experience levels code using polyglot techniques. Notably, less experienced programmers wrote correct programs faster in the hybrid condition (frequent, but less severe, switches), while more experienced developers that already knew both languages performed better in traditional SQL (less frequent but more complete switches). The results indicate that the productivity impact of polyglot programming is complex and experience level dependent. Phillip Merlin Uesbeck, Cole S. Peterson, Bonita Sharif, Andreas Stefik |
ESEC/SIGSOFT FSE | 1 |
| 2020 | GPU Programming Productivity in Different Abstraction Paradigms: A Randomized Controlled Trial Comparing CUDA and ThrustabstractCoprocessor architectures in High Performance Computing are prevalent in today’s scientific computing clusters and require specialized knowledge for proper utilization. Various alternative paradigms for parallel and offload computation exist, but little is known about the human factors impacts of using the different paradigms. With computer science student participants from the University of Nevada, Las Vegas with no previous exposure to Graphics Processing Unit programming, our study compared NVIDIA CUDA C/C++ as a control group and the Thrust library. The designers of Thrust claim their higher level of abstraction enhances programmer productivity. The trial was conducted on 91 participants and was administered through our computerized testing platform. Although the study was narrowly focused on the basic steps of an offloaded computation problem and was not intended to be a comprehensive evaluation of the superiority of one approach or the other, we found evidence that although Thrust was designed for ease of use, the abstractions tended to be confusing to students and in several cases diminished productivity. Specifically, abstractions in Thrust for (i) memory allocation through a C++ Standard Template Library-style vector library call, (ii) memory transfers between the host and Graphics Processing Unit coprocessor through an overloaded assignment operator, and (iii) execution of an offloaded routine through a generic transform library call instead of a CUDA kernel routine all performed either equal to or worse than CUDA. Patrick Daleiden, Andreas Stefik, Phillip Merlin Uesbeck |
ACM Trans. Comput. Educ. | 3 |
| 2020 | Analysis of a Randomized Controlled Trial of Student Performance in Parallel Programming using a New Measurement TechniqueabstractThere are many paradigms available to address the unique and complex problems introduced with parallel programming. These complexities have implications for computer science education as ubiquitous multi-core computers drive the need for programmers to understand parallelism. One major obstacle to student learning of parallel programming is that there is very little human factors evidence comparing the different techniques to one another, so there is no clear direction on which techniques should be taught and how. We performed a randomized controlled trial using 88 university-level computer science student participants performing three identical tasks to examine the question of whether or not there are measurable differences in programming performance between two paradigms for concurrent programming: threads compared to process-oriented programming based on Communicating Sequential Processes. We measured both time on task and programming accuracy using an automated token accuracy map (TAM) technique. Our results showed trade-offs between the paradigms using both metrics and the TAMs provided further insight about specific areas of difficulty in comprehension. Patrick Daleiden, Andreas Stefik, Phillip Merlin Uesbeck, Jan Pedersen 0001 |
ACM Trans. Comput. Educ. | 3 |
| 2020 | Establishing Vibration-Based Tactile Line Profiles for Use in Multimodal GraphicsabstractVibration plays a significant role in the way users interact with touchscreens. For many users, vibration affords tactile alerts and other enhancements. For eyes-free users and users with visual impairments, vibration can also serve a more primary role in the user interface, such as indicating streets on maps, conveying information about graphs, or even specifying basic graphics. However, vibration is rarely used in current user interfaces beyond basic cuing. Furthermore, designers and developers who do actually use vibration more extensively are often unable to determine the exact properties of the vibration signals they are implementing, due to out-of-the-box software and hardware limitations. We make two contributions in this work. First, we investigate the contextual properties of touchscreen vibrations and how vibrations can be used to effectively convey traditional, embossed elements, such as dashes and dots. To do so, we developed an open source, Android-based library to generate vibrations that are perceptually salient and intuitive, improving upon existing vibration libraries. Second, we conducted a user study with 26 blind or visually impaired users to evaluate and categorize the effects with respect to traditional tactile line profiles. We have established a range of vibration effects that can be reliably generated by our haptic library and are perceptible and distinguishable by users. Jennifer L. Tennison, Phillip Merlin Uesbeck, Nicholas A. Giudice, Andreas Stefik, Derrick W. Smith, Jenna L. Gorlewicz |
ACM Trans. Appl. Percept. | 2 |
| 2019 | A Randomized Controlled Trial on the Wild Wild West of Scientific Computing with Student LearnersabstractScientific computing has become an area of growing importance. Across fields such as biology, education, physics, or others, people are increasingly using scientific computing to model and understand the world around them. Despite the clear need, almost no systematic analysis has been conducted on how students in fields outside of computer science learn to program in the context of scientific computing. Given that many fields do not explicitly teach much programming to their students, they may have to learn this important skill on their own. To help, using rigorous quantitative and qualitative methods, we looked at the process 154 students followed in the context of a randomized controlled trial on alternative styles of programming that can be used in R. Our results suggest that the barriers students face in scientific computing are non-trivial and this work has two core implications: 1) students learning scientific computing on their own struggle significantly in many different ways, even if they have had prior programming training, and 2) the design of the current generation of scientific computing feels like the wild-wild west and the designs can be improved in ways we will enumerate. Timothy Rafalski, Phillip Merlin Uesbeck, Cristina Panks-Meloney, Patrick Daleiden, William Allee, Amelia McNamara, Andreas Stefik |
ICER | 2 |
| 2016 | Predicting STEM Achievement with Learning Management System Data: Prediction Modeling and a Test of an Early Warning System
Michelle Dominguez, Matthew L. Bernacki, Phillip Merlin Uesbeck |
EDM | 3 |
| 2016 | An empirical study on the impact of C++ lambdas and programmer experienceabstractLambda functions have become prevalent in mainstream programming languages, as they are increasingly introduced to widely used object oriented programming languages such as Java and C++. Some in the scientific literature argue that this feature increases programmer productivity, ease of reading, and makes parallel programming easier. Others are less convinced, citing concerns that the use of lambdas makes debugging harder. This thesis describes the design, execution and results of an experiment to test the impact of using lambda functions compared to the iterator design pattern for iteration tasks, as a first step in evaluating these claims. The approach is a randomized controlled trial, which focuses on the percentage of tasks completed, number of compiler errors, the percentage of time to fix such errors, and the amount of time it takes to complete programming tasks correctly. The overall goal is to investigate, if lambda functions have an impact on the ability of developers to complete tasks, or the amount of time taken to complete them. Additionally, it is tested if developers introduce more errors while using lambda functions and if fixing errors takes them more time. Lastly, the impact of experience level on productivity is evaluated by comparing the performance of participants from different levels of experience with one-another. Participants were assigned one of five levels based on their progress in the computer science major. The five levels were freshman, sophomore, junior, senior and professional. The professional level was assigned to individuals out of school with 5 or more years of professional experience. Results show that the impact of using lambdas, as opposed to iterators, on the number of tasks completed was significant. The impact on time to completion, number of errors introduced during the experiment and times spent fixing errors were also found to be significant. The analysis of the difference between the different levels of experience also shows a significant difference. The percentage of time spent on fixing compilation errors was 56.37% for the lambda group while it was 44.2% for the control group with 3.5% of the variance being explained by the group difference. 45.7% of the variance in the sample was explained by the difference between the level of education. Therefore, this study suggests that earlier findings that student results are comparable with the results of professional developers are to be considered carefully. Phillip Merlin Uesbeck, Andreas Stefik, Stefan Hanenberg, Jan Pedersen 0001, Patrick Daleiden |
ICSE | 1 |