Netsplits happen once in a blue moon nowadays (on freenode at least), nick collisions are also solved (you can register your nick on freenode and other networks), and you can totally set up logging on your channel and unlike Slack it won't disappear after 10,000 messages. You can also make it accessible through the web so people can easily see past history.
File transfers are definitely an issue over IRC but https://send.firefox.com/ solves that problem very well. For sharing code, there's gists (which I often send directly through my code editor which makes it seamless).