Mine was both good and bad. They weren't compulsory but I took it every year (only half a year in my final year). First 2 years we had this IT teacher that was really good at what she did, She taught us how to use Powerpoint, Word, Excel, and some other random freeware we had on the school network. I (and my friends) already knew how to use these effectively and she noticed that and gave us harder work and I personally appreciated the challenge.
My 3rd year was when shit hit the fan. The previous (good) teacher had left and this new one came in. Never had I wanted to murder someone so badly. Not only did we not get along but we didn't agree on how anything should be done. If she wanted records of URLs that we used for information, that's fine I can do that. But she wants records of every URL we come to whilst searching for information, the date and time we saw it, a rating of 1-10 of how useful it was, and the name of person/company/etc whose Intellectual Property it was (which lead me on a wonderful trip of looking for the page with that information on it), and it had to be done in this stupid format. A double line here, this has to be italicised, this has to be in bold, but on second thought lets change the entire format when you're half way through re-typing it. She could not make up her mind on anything. This along with some other stuff caused me just to design my project then work backwards and make up half my information.
My 4th year was much better. The school decided to try something new and split the computing subjects available into 3 different classes. Business, Design, and Systems. I went with systems because I was interested in programming and hardware more than anything else. That class was heaven. We got a new teacher who was a competent teacher. We did some HTML, built servers of about 4-6 computers running off Windows 2000, and had LANs on them. This was great until my teacher of the previous year complained to the principal that we weren't learning anything that would help us outside of high school, so our new teacher was let go and the old one took over. She had no idea what to do with the systems class because she was very incompetent in that area. I remember one lesson we had to sit in one part of the classroom and look at her new customised designed laptop that she got and she got angry because I was trying to do some HTML work that the previous teacher had left us and then gave me a detention when I told her "I don't give a fuck about your new fucking Mac". Fair enough, I swore at a teacher but she's the only that has made me loose my cool like that.
My 5th year nothing had changed except that she started getting rather verbally abusive towards the students as well. One person left, then another, soon half the class left (including me) and she was fired because of complaints from students, parents, and the students dropping the subject. Last words she said to me were "You're an arrogant ****".