Open Access. Powered by Scholars. Published by Universities.®

Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 6 of 6

Full-Text Articles in Engineering

Snr: Software Library For Introductory Robotics, Spencer F. Shaw Aug 2021

Snr: Software Library For Introductory Robotics, Spencer F. Shaw

Master's Theses

This thesis introduces "SNR," a Python library for programming robotic systems in the context of introductory robotics courses. Greater demand for roboticists has pressured educational institutions to expand robotics curricula. Students are now more likely to take robotics courses earlier and with less prior programming experience. Students may be attempting to simultaneously learn a systems programming language, a library API, and robotics concepts. SNR is written purely in Python to present familiar semantics, eliminating one of these learning curves. Industry standard robotics libraries such as ROS often require additional build tools and configuration languages. Students in introductory courses frequently lack …


Using Offline Activities To Enhance Online Cybersecurity Education, Sarah Padlipsky Dec 2018

Using Offline Activities To Enhance Online Cybersecurity Education, Sarah Padlipsky

Master's Theses

Since the beginning of the 21st century, the United States has experienced the impact of a technological revolution. One effect of this technological revolution is the creation of entirely new careers related to the field of technology, including cybersecurity. Continued growth in the cybersecurity industry means a greater number of jobs will be created, adding to the existing number of jobs that are challenging an under-educated and under-trained workforce. The goal of this thesis is to increase the effectiveness of cybersecurity education. This thesis studies whether an online course in cybersecurity can be enhanced by offline, in-person activities that mirror …


Polycommit: Building Better Habits Through Gamification, Elliot Fiske Jun 2018

Polycommit: Building Better Habits Through Gamification, Elliot Fiske

Master's Theses

Computer-assisted learning is older than Turing machines, and constantly evolves as technology improves. While some teachers are resistant to using technology in the classroom, “e-learning” techniques are becoming more common in almost every school, from K-12 to universities. As technology becomes more widespread, it becomes crucial to examine the various methodologies of computer-assisted learning and find the techniques that are most effective.

This paper explores the effectiveness of one such methodology, spaced repetition. This technique applies to homework assignments available to students online. We include an exploration of several existing apps that use this technique, and introduce our own novel …


On The Impact Of Android Api Evolution On Education Materials, Kennedy Owen Jun 2017

On The Impact Of Android Api Evolution On Education Materials, Kennedy Owen

Master's Theses

The recent growing popularity of mobile devices has led to the establishment of several popular mobile platforms such as the Android operating system. To foster growth in this evolving market, Application Programming Interfaces (APIs) were created to enable developers to create mobile device applications that utilize mobile device features and functionality for personal or widespread commercial use. However, as a result of excessive device and API evolution, mobile development faces increasingly complex issues, including an alarmingly rapid decay of development resources.

This thesis conducts a case study around one such resource: a series of Android app development lab …


Code Decomposition: A New Hope, Nupur Garg Jun 2017

Code Decomposition: A New Hope, Nupur Garg

Master's Theses

Code decomposition (also known as functional decomposition) is the process of breaking a larger problem into smaller subproblems so that each function implements only a single task. Although code decomposition is integral to computer science, it is often overlooked in introductory computer science education due to the challenges of teaching it given limited resources.

Earthworm is a tool that generates unique suggestions on how to improve the decomposition of provided Python source code. Given a program as input, Earthworm presents the user with a list of suggestions to improve the functional decomposition of the program. Each suggestion includes the lines …


Polyfs Visualizer, Paul Martin Fallon Jun 2016

Polyfs Visualizer, Paul Martin Fallon

Master's Theses

One of the most important operating system topics, file systems, control how we store and access data and form a key point in a computer scientists understanding of the underlying mechanisms of a computer. However, file systems, with their abstract concepts and lack of concrete learning aids, is a confusing subjects for students. Historically at Cal Poly, the CPE 453 Introduction to Operating Systems has been on of the most failed classes in the computing majors, leading to the need for better teaching and learning tools. Tools allowing students to gain concrete examples of abstract concepts could be used to …