The reason is I learn "languages" best when it is adapted to something I am interested in.
"Banging the metal" is my forte and the AudioScope is an example of my abilities, albeit with a somewhat primitive coding style presently.
Any language that can create a BASIC interpreter no matter how small usually has some tricks up its sleeve(s), and this is the main reason.
I respect those coders who can create OSes, (I am a member of MikeOS), and have contributed HW related stuff:-
MikeOS - simple x86 assembly language operating system
One being a modified USB KB to give a slow serial I/O for a BIOS only OS.
Also those who can create compilers and interpreters get my vote too.
When studying the code for these things I learn a great deal.
UNIX style shell scripting is my new "platform" FTTB and with your input I am learning complex stuff very quickly. I still search continuously via Google for strange requirements for the Scope and enjoy every minute of it.
You have inadvertently become my mentor and all I can say is thanks...
Now you know... ;o)