One thing I really find myself having a hard time working with WordPress themes is that many of them are bloated and require so many plugins. The amount of css/js files that are required to load a page in a premium WordPress theme averages around 30+ files (at least from what I have seen working with WordPress themes).
>The amount of css/js files that are required to load a page in a premium WordPress theme averages around 30+ files
HTTP/2 alleviates most of this, but there are plugins that can concatenate and minify css/js. It is a shame though that most of the attractive themes are so bloated.
> It is a shame though that most of the attractive themes are so bloated.
The target audience just doesn't care (or dont even know). Theme authors want to solve as many problems as possible to increase the chances someone buys their theme. It's in their best interest to sell something with everything but the kitchen sink (V5.0 now with kitchen sink!)
Sure. But it's more than that. For example, they take 3 pieces of functionality and make them all emit separate js/css. Often with copy/paste code duplication for common functions. Or pull in some huge 3rd party library to use one tiny piece of it that you could do in vanilla js anyway.
A simple (to install) solution for this is Google PageSpeed Module - https://developers.google.com/speed/pagespeed/module/. It's like a proxy in front of your website that will serve optimized / minified / concatenated versions of the theme and such. It inlines small stuff, resizes images where needed, all that good stuff.
I don't have it on my current webserver though, I'm not comfortable manually having to compile nginx, it seems like there's a lot that can go wrong there.
One thing I really find myself having a hard time working with WordPress themes is that many of them are bloated and require so many plugins. The amount of css/js files that are required to load a page in a premium WordPress theme averages around 30+ files (at least from what I have seen working with WordPress themes).