Good movies are self-aware. Not everything needs to be a masterpiece of acting and cinematography, or have the best effects, or the best writing. But they have to know what they are. I don't mean breaking the fourth wall or self-deprecating humor. More like understanding their limits.
The people making Sharknado knew they were doing a campy action film (series) with sharks in tornadoes. Fun Movie. Would watch again.
M. Night Shyamalan is a great writer and director, but a lot of his films have a feeling of over-dramatized self-importance, where it seems like he really wants you to know how clever he is. So they get panned.
Chrisopher Nolan (I think) puts similar importance on symbols and archetypes with a dramatic and artistic style, but his movies have a feel of like "I don't give a shit if you get it, just enjoy the ride." He makes good films.