I didn't take classes for my development, but I can tell you that finding the reference materials you need can be a complete pain in the @$$. It's made worse when you find a tutorial or directions to do the thing you want to do, only for the person teaching to have no Idea how to explain what they're talking about.
A lot of what I've come up with has just been a process of trial and error with multiple bad instructions out there.
I think that overall Programming is tough in a sense. I think the hardest part is coming up with an idea on how you're going to do something, for example if i'm coding a quest system for a game. I have to come up with the best way to structure the system and make sure that it will work flawlessly.
I'm currently using windows 7, but I was using Ubuntu for a while there. I moved back because I wanted support for a bunch of games. So, what operating system are you currently running?
You can't say it isn't unless your someone who works for like Jagex, Gearbox or any big programming groups it is hard because your being pressured for example in a game called Runescape they often make bad mistakes so the userbase turn bad on them because they don't like the updates, problem with programming if you make a mistake you could mess up your project well you won't if you have backups but if your like me who messed up 5 months of work then you can.
Your iMacs probably use OS X. You can check your current version on your iMac or try with wikipedia's info.
Anyway, my PC is pretty old and bad, so I can only use Windows XP. I'm satisfied with it. Don't play much games anyway, don't do any graphical design, video editing or something like that that requires a good OS or hardware.
I have used ubuntu before and it's meh. Good design but I'm so used to Windows that I can't really use anything else.
Yes, it is a very tough job especially for me. I think that all programming languages are difficult and they need much time in order to learn them and get experienced with them. Although, if you learn them, you will never forget them, they are like the alphabet.