Posts

Showing posts from December, 2018

DPS909 Retrospective

In general this course was an invaluable learning experience. It allowed me to explore and tinker with a variety of repositories. This included working with a server built on PHP and CSS that was hosted via Vagrant and used an Angolia api service to do searches, tinker with Rust as a beginner (with mixed results thanks to Rust's unique way of handling memory allocation), Try my hand at helping to generate issues and interest for a class repository, and work with a React server that served screenshots for a FireFox plugin, and a few other small things. What I got most out of the experience was mostly a greater appreciation for dev ops, and the ability/effort required to set up various code environments. One of my earlier pull requests had me installing an Ubuntu operating system on an old laptop, getting the repository's Vagrant virtual machine running, and accessing, a search api all so that part of a webpage could render so I could change a few lines of CSS. While bouncing b

Tinkering with Chrome Headless to Handle Mic Input

This pull request consisted of performing more research for the CodeTalker repository. One of the ongoing issues with the repository is figuring out how to make it easy to capture microphone audio across a variety of operating systems, and then process it in a way that is easy to set up across multiple user's devices (all of which have may use different operating systems). In an earlier attempt to make the development environment more accessible to potential contributors to the CodeTalker repo, I tried to mount all of the scripts that processed microphone audio to a Docker container. The advantage of this was that the Dockerfile, which defines how a docker image (virtual machine) is built can be configured to install and configure various dependencies. These dependencies in this case would be for processing microphone audio (Python libraries, and various microphone hardware handling libraries). This worked great for Unix style machines, because the microphone hardware (and other

Using Arrow keys to cycle through Mozilla Screenshots

Image
 The Mozilla-Services' screenshots add-on for the Mozilla Firefox browser is a nifty browser add-on that allows you to snip a portion of your browser's screen to create a screenshot that you can then either download to your computer, or host on Mozilla's servers. It also comes with some simple image editing tools to allow you to draw on top of your screenshot, etc.. Screenshots consists of both the add-on itself, and the server that it communicates with. The add-on allows you to capture parts of your browser's window and then save the resulting screenshot to your computer or the cloud. The server provides a UI to browse, edit, and download these screenshots after they have been uploaded by the add-on. The server is written with React, and NodeJs with express routing, and uses a Postgre SQL database to store screenshots and their metadata. I believe the add-on uses IndexedDB to store the current screenshot before it is either downloaded or saved to the cloud. The p