![](https://cdn.statically.io/img/lh5.googleusercontent.com/-I_R1ToYW9v8/AAAAAAAAAAI/AAAAAAAAAAA/jvLlTWMVWTM/photo.jpg?sz=128)
I'm a computer programmer by day, and a cat behaviourist by night ... no, wait, I'm not related to Jackson Galaxy.
I code for food (i.e. for pay) and I code for fun. I used to do internet radio for kicks. Which led me to maintaining and extensively rewriting edcast after it's author abandoned the project, so edcast-reborn
was born (redundant!) I did that for a few years, adding ASIO, pre-emphasis, limiting, and a one off special version which read from ASIO 8 different audio tracks and streamed them to 8 different servers.
When that stopped being fun, I learned Haxe, and wrote a functioning (core functions at least) alternative to Flash Media Server, then bolted on Shoutcast DNAS functionality so one could stream with winamp (or other shout/ice-cast sources) and listen (and watch, who remembers Shoutcast TV) natively in Flash.
Using Haxe, I then wrote a flash app that could play shoutcast audio that is in HE-AAC format. Sure, other people did it, but their apps either slowly ate up ALL your ram, or had to be subtly stopped/started every couple of hours to avoid the memory leak. Mine was only one of two that I know that could handle HE-AAC without the memory leak, and also play VP6 or MP4 Shoutcast TV
Just for laughs, I re-wrote Edcast in javascript for nwjs, with a little help from external ffmpeg for the grunt work of encoding the stream, and managed to connect it to a DNAS version 2 server using ultravox 2.1 protocol.
As you may have guessed, my current programming language addiction is javascript. While I'm a (self proclaimed) javascript guru at work, I feel like a javascript noob when I read some answers here, but that's good, because I like to learn at least one thing every day of my life.