Python was the first programming language I learned at uni, I'm currently on my second year doing BSc and MSc in computer science. I had no previous programming experience (or at least nothing worth mentioning). It was about half way through 'programming fundamentals' (=the first course in python) I started playing with insim things - DarkTimes' library (and documentation and examples) are quite simply awesome. I had literally no idea how to do anything but just by experimenting with things I was actually able to do something useful with it.
As experience grew I started noticing better, more intelligent ways to do things I had previously done very time consumingly. Amazing how much you can learn about shit by just ****ing about with things
Now a year and a half (and many programming courses) later I look back at what I was doing previously and I've actually been trying to put some effort into completing something I started with last year. Problems that a year ago seemed unsolvable are now self explanatory.
So do you need a cs degree to do insim stuff? No, just a lot of practice. Remember programming skill isn't bound to a specific programming language (even though for example python is quite good to start with. I've still no clue how the C library works :| ). It is however a hell of a lot of work to do, starting with the basics and progressing to more 'complicated' design patterns. Many have the noble idea of learning something on their own and most of them fail - except for mr. DarkTimes apparently, massive props to you for learning something so comprehensively.