More and more people have incorporated GIF in their messaging these days and often send gif as a reply. GIF is Graphics Interchange Format and is a short-animated picture without a sound. Searching a trivial gif with a regular emotion is easy to find but if some iconic expression is...
People like going on trips with friends and tend to plan their trips well in advance to have the best possible experience of a destination and get the most out of the places they visit and/or the activities they plan to partake in. Right now, the Internet provides a wealth...
New MS in CS students in the Electrical Engineering and Computer Science school at OSU are required to file their Program of Study by the end of their 2nd term. Many of them, especially international students, are in a totally new ecosystem, so they find it overwhelming to choose the...
Online survey data collection is becoming popular because it provides benefits in cost, ease of collecting and managing data, flexibility in format, and access to a diverse population. Surveys are often used for health studies such as Oregon State University’s WAVE Project, which utilizes the WavePipe system, a server enabling...
Uploading everyday information about food intake, sleep, number of steps and then generating consolidated peer visual reports for participants in large-scale health studies, often divided into multiple treatment groups, can be challenging.
This challenge is even bigger if subjects are young teenagers between the age of 14-19 active in sports,...
Debugging, an integral part of software development, is difficult for end-user programmers, especially in the case of complex programs. The process of isolating errors is time consuming without the help of debugging support provided by the tool. For example, the visual programming tool LondonTube supports creation of custom mobile-cloud-web applications,...
Surveys are often used in health studies to collect data about participants for scientific research. An increasing number of health scientists are turning to online data collection methods because they are less costly and can reach a large diverse population quickly. Online surveys also make it easy to track and...
Software maintenance tasks often require finding information within existing code, which is time-consuming and difficult even for professional programmers. For example, programmers may need to know what code implements certain functionality or what is the purpose of certain code. In response, researchers have developed tools to help programmers find information...
Application Programming Interfaces (APIs) enable software developers to utilize and create functionality that would otherwise take a lot of time and effort to build from scratch. Consequently, an essential part of software engineering training is for students to learn how to use APIs effectively. The existing jTutors system enables an...
Visual programming languages (VPLs) have been widely used to support end-user programming. However, end users are still not able to reuse code as actively as professional programmers, even when given abundant resources such as a large VPL program repository. One reason may be that current VPL development environments lack features...
For building robust software applications, it is important for the software engineer to make efficient use of the available building blocks. Learning the basic language constructs is only the first step in this process. It is becoming increasingly important for software engineers, especially students, to get acquainted with the available...
With the overwhelming number of open-source resources available online, the developer community is always looking to expand their knowledge. Collaborative development has been recognized as an efficient method of learning by several students and industry professionals. Hence, developers seek to obtain more hands-on experience while collaborating with people of similar...
People find it difficult to do tasks which are related to maintaining correct posture. For activities related to performing a posture routine correctly by oneself, unfortunately there aren’t many systems out there which help people to do so and provide feedback on what went wrong and how they could improve...
Safety at home and other indoor venues is one of the most important aspects of everyday life. Yet according to the National Fire Protection Association (NFPA), in 2018, approximately 3000 people died in home fires, while 11.7 thousand people were injured. Most household fires start as cooking accidents, which can...
More than 50% of American families have at least one pet nowadays, and the number is still rising. Pet caring needs are also growing with it. When people need to leave home for work or vacation, leaving pets home alone might bother some pet owners. Unfortunately, existing approaches all have...
Collaboration with people in a team environment to build software is common. In the beginning stage of a team project, it is required that a team decides what tools and services to utilize to control the source code for the project, communicate with the members, and manage the tasks. In...
Significant increases in the amount of data being streamed, collected, and processed have resulted in widespread adoption of the use of microservices to build scalable software applications. Unfortunately, current tools and frameworks are often insufficient at providing a simple, unified experience for the design, development, and deployment of microservices. They...
The design of programming tools is slow and costly. To ease this process, we have developed a design pattern catalog aimed at providing guidance about how to design tools for developers. This guidance is grounded in Information Foraging Theory (IFT), which empirical studies have shown to be useful for understanding...
End-user programmers often struggle to create programs that run quickly and effectively, which can be a major deterrent in completing their tasks as desired. Current research has primarily focused on catching user mistakes, such as errors or misused formulas. However, end users deal with issues other than just correctness. In...
Software engineers often need help with discovering and learning how to use APIs. For example, software engineers who are starting to learn Java, and they want to implement a certain feature in a program, they might want to reuse existing APIs in order to save time versus rewriting it themselves...
Spreadsheets are a widely used end-user programming tool. Field audits have found that 80-90% of spreadsheets created by end users contain textual and formula errors in spreadsheets. Such errors may have severe negative consequences for users in terms of productivity, credibility, or profits. To solve the problem of spreadsheet errors,...