Developing Data Products

Course Project

Dino Budimlija, 2016

Data Science Specialization

Johns Hopkins University

Coursera

What is it about?

  • This presentation is an integral part of the course project in Developing Data Products class on Coursera. The course itself is a part of Data Science Specialization created by Johns Hopkins University and featured on Coursera online learning platform.
  • The goal of the project is to make a functional Shiny application that solves a random problem by running R code and publish it on the web. The application should be reactive and produce some results based on input provided by user.

The project

Project is completely produced in R statistical language using Rstudio IDE and it comes in three parts:

FM synthesis visualization app

FM synthesis visualization app is a simple application used to simulate the basics of FM (frequency modulation) synthesis with sine and cosine waves. It allows user to provide parameters for three different functions that are combined into resulting waveform which is represented graphically in the interface.

User defined parameters include:

  • Function type (sin/cos)
  • Frequency
  • Phase
  • Amplitude

Application description

The purpose of this application is to show how simple waves can be combined into more complex wave. Three oscillators provide several basic parameters for basic trigonometry functions which can be tweaked. With addition of each new oscillator more complex waveforms can be achieved. This addition of simple waves is called frequency modulation and is a main principle behind early digital synths which can be heard in majority of popular songs from 1980's. Different types of sounds can be achieved by combining square, triangle or sawtooth waveforms which is not implemented in this version of the app.