Yeah, the simplicity is a godsend. Lets you pump out a minimally viable client/bot in minutes with whatever language you like, without having to mess around with an existing framework or library.
I'll second that. For example, here's a bot that logs every channel you invite it to...in 50 lines of shell. How big would the equivalent XMPP bot be (libraries included)?
50 lines of clean comprehensible shell code even! Written with the traditional code-golfed style of shell scripting I bet you could half that without even trying. ;)
The idiosyncracies that you have to get into when you want to write a proper client for humans, and what you actually have to worry about if your aim is just writing tools that use IRC (internal deployment bots, or whatnot) are miles apart. The vast majority of users will only be interested in the second.
Just follow the RFCs for the features that you need, and ignore everything else.
Anyway, IRC is plainly simple if you look at it's competition. I can use IRC with netcat without any significant effort; there are not a lot of other things I can say that about.