Showing posts from September, 2019

Preparing For Hacktoberfest

Over the course of October, I will be participating in Hacktoberfest, an event promoting open source development. As part of this event, I will be contributing to various open source projects with both bug fixes and improvements.
GoalsGet involved with something interesting If I am going to get involved with a project, I will be much more motivated if I'm personally invested in the product. Additionally, as I find myself using open source software on a regular basis, I want to I've back to the community by contributing my skills and ideas.
Learning more about Git Git is a powerful tool that I can see myself using for collaborative project both in personal work and in the workplace. However, I'm still very new to Git, so I want to take this opportunity to learn more about it and its various features.
Issues For the 3 issues I selected, I picked with issues for projects that interested me while still being within the scope of my skills.
Mint: Improvements to UI Mint is a finan…

Contributing to Source Projects

For this assignment, we had to fix bugs and add features to existing source projects. This was to be done by submitting issue reports, then using Git creating new branches to push our changes to, before creating pull requests to request that the source project's owner merge out changes to the master branch.

Here are the bug fixes and features I implemented:


The bug I fixed was a bug where the "Note Saved" message would be displayed upon opening the web page for the first time, before any note had been entered. This was misleading, as there was no data besides the default string to be saved, and the program wasn't saving any data anyways.
The fix for this bug was simple, and only involved removing the placeholder text in the HTML element displaying the note's save status.
<spanid="status"class="saved"></span> Feature:

The feature I added was a manual save feature using a hotkey combination of CTRL+S. It uses JQuery to check for …

The Whiteboard Note Taking App

The Whiteboard Note Taking App lets you take quick notes on your browser and access them later. It can be accessed from both desktop and mobile, however the save feature only works on desktop.

The Whiteboard Note Taking App features a word count tracker, a save feature, a save indicator, and hotkey support. The app is written in HTML and JavaScript, and uses the Countable.js, Filerjs, and jQuery APIs. The word count tracker uses Countable.js and keeps displays the number of words in the note. The save feature utilizes Filerjs to save notes and retrieve them when the page is opened and jQuery to detect when the "Save Note" hotkey combination (CTRL+S) is pressed.

Whiteboard is hosted on GitHub Pages and the source code can be found on GitHub here.

While writing this application I learned about the contentEditable property as well as how to create custom hotkey combinations. I also learned about using Filerjs to save data without having to create a separate file to store it.

The Real Time Voice Cloning Toolbox

What Is Real Time Voice Cloning?
Real Time Voice Cloning is involves a deep learning framework that can generate computerized voices by listening to audio recordings. The framework creates numerical representations of the voices it listens to, which can then be used by a text-to-speech program to create a copy of those voices to read text aloud.

The Real Time Voice Cloning Toolbox is written in Pyton, and is an implementation of Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis or SV2TTS, which does the voice analysis. It is used alongside WaveRNN, Tacotron 2, and Generalized End-To-End Loss For Speaker Verification (GE2E) for voice synthesizing and encoding.

This project interests me because of its numerous potential uses. It could be used to give those who lose the ability to speak their voices back, as well as to create computerized voices that sound more natural. However, it also opens up the possibility of people voices being used without their …