In 2016, we can do better than Wordpress
Wordpress's blogging origins still limit its usefulness, and a just-use-a-plug-in culture have made it slow and highly insecure.
In many ways the features that have made Wordpress so successful such as plug-ins and themes are the features that now make it a poor choice for a serious website.
An over-reliance on plug-ins
On the face of it plug-ins seem like a great way to allow a single platform cater for millions of different users. But when plug-ins are needed to make wordpress a usable CMS, is it even a CMS?
Plugins are great if you're a non-technical user installing a site for yourself, but in my experience the use of plugins actually makes it harder to build what you actually need as you are limited by the options the plugin provides.
Security and performance
The need to allow plug-ins to hook into any part of the system architecture badly affects both performance and security. When ever Wordpress is updated to patch the latest vulnerability (quite commonly...) all the plug-ins will need updating too, or they might break all together.
Every time a plug-in is installed you are trusting that the developer of that plug-in knew what they were doing and didn't introduce any potential security exploits.
The plug-in - requirement gap
If you find a plug-in that achieves exactly what you need to do, brilliant. More likely the plug-in will sort-of-do-it sort-of-not and will either be a poor solution or will require a lot of hacking (causing massive issues when you try to update it in a few months time).
Most problems plug-ins solve are fairly trivial for a developer to create on a framework that allows it but it is far more work to create and maintain a plug-in.
Not enough core features
This problem is made worse by Wordpress refusing to add important functionality into the core.
Need to properly manage page titles and other SEO content? You'll need a plug-in. Need to manage more complex data that just a post? Plugin. Want to use a cache to speed up your site? Plugin. Import data? Plugin. Check for spam comments? Plugin. Contact form? Plugin. Generate sitemaps? Plugin.
You get the picture.
Far too many fundamental features are left as plug-ins when they should be built (really well) into the core, exacerbating the performance and security problems.
The problem of Themes
The main problem with themes is how they are used. Many developers simply stick a logo on a theme and sell it to the client as a custom site. The problem with this is that themes are of vary variable quality, often lacking the custom, semantic markup tailored to your business.
An outdated editing experience
The Wordpress back-end hasn't changed very much over the years and is now quite outdated. Add to this the need to use different theme 'tabs' to make Wordpress into a CMS capable of handling variant content and it's a bit of a mess.
More modern and customised solutions exist.