Scott Stensland

225
reputation
4
10

in the language go wrote a system to translate an input image into its audio equivalent where none of the information is thrown away ... it parses the image at the pixel level starting in one corner and traversing a path using a Hilbert Curve to visit each pixel and record light intensity at each pixel ... now you have an array of light intensity values ... assign to one end of this array a low frequency within the human audible range ... give other end of array a very high frequency and give each array element inbetween a frequency inbetween ... synthesize an audio oscillator at each element at its given frequency and drive its amplitude by the light intensity at that element ... aggregate all those oscillators into a single raw audio curve in PCM format ... this is the audio output equivalent to the input image ... it performs the functional equivalent to an inverse Fourier Transform ... this half of the system is done

now instead of having an input image synthesize output audio write a new golang server route callback to implement the reverse of above algorithm ... namely send this second route input audio and it wil synthesize an output image

when I was able to tie the above two processes together such that the audioA output of first algo was used as input audioB of second algo and the output imageB matched the original input imageA ... I knew the system worked ... I have this all working ... next step is to productionize ( speed up to become real time to handle 20 images per second ( streaming input video ) this and make available to the blind ( it may allow the blind to see with their ears ) ... and visa versa for the deaf ... also looking into other uses

Above was a recent fun side passion project ... I also write servers and server side processing as well as DevOps ...

Initially built a nodejs/mongo RESTful server, created a testing harness ... whipped together an encrypted email server using postfix ... then from scratch did everything to run the 5 container app in the cloud Google and AWS ... wrote DevOps code to synthesize templated configs for kubernetes, nginx, meteor/nodejs ... did all the TLS certs setup for nginx ... basically everything other than UI side

in golang wrote a SMTP parser content filter which gets launched by a postfix server to read incoming email traffic and persist portions of the email body and to handle arbitrary attachments

in golang wrote a log file parser which identifies error conditions to trigger alarms

wrote the orchestration code in bash to scale up/down aws instances for some flavors of our containers ... used the aws golang SDK to parse our instances, security groups etc. to synthesize the scale up/down ... avoided using aws cloud formation so we remain as vendor neutral as possible

in 4 days using golang wrote a resource usage monitor and visualization system to plot real time CPU/ram