When I was a DBA my attitude was don't upgrade until SP1 is out. Every upgrade represented a huge risk and consequent huge investment in time and money for very little perceived business benefit.
Switching across to open-source and NOSQL, albeit with commercial support almost every support ticket is "Upgrade to version x+". Quite often the upgrades had breaking changes in them. We soon learned to build a robust test suite around our application and database. The test suite also shaped our application design for the better. The prime requirement is for anything you write to be testable and in a robust way. As long as you adhere to that discipline upgrades hold far fewer fears.
Upgrades to SQL Server have cost implications, particularly with licensing. The last survey of version usage I saw indicated that many people are still using SQL2008R2 or earlier. The licensing seemed over complicated at the time but compared to the current situation it was merely moderately obscure and quite reasonably priced. There is definitely a cost barrier to upgrade but do we have adequate automated testing and forward fixing processes to ensure that the barriers to upgrade are merely financial?