With a serious time investment I've managed to assemble a system that far surpasses OSX in usability, performance, and aesthetics (see /r/unixporn). I also bought a laptop with Linux in mind with 100% driver support in the kernel.
It wasn't easy learning to use ArchLinux, customizing it, learning how to not break it [1], and finding the right combination of window managers/desktop env/themes/fonts/etc. But it was worth it because I like hacking on systems and learning how they work. Plus I spend all day, every workday on it.
[1] my install has become very low maintenance now that I no longer feel the need to spend hours tweaking every detail, I now know which /etc/ or /usr/ files not to mess with, and have hardware and software that is well supported across every ArchLinux update.