Not everything is bad
Easy to use
Easy to extend
npm install --save react-native-viral
and you instantly have a viral app. That's how easy it is to add new features to your application! (I may or may not be exaggerating).
The more the Merrier!
Finally, it's awesome because we lower the level of tech experience needed to get into programming. We can start teaching programming to an ever younger population enabling them to produce innovation for this world! This is probably the most amazing part of it all.
My main beef is that by lowering the skills for level of entry, you get people who do stuff monkey style. Oh he did that, let's copy paste this thing and see if it works. Oh it doesn't work, let me post to StackOverflow, someone is gonna answer my question! By providing "pre-chewed food" straight to digest, people do not actually understand what they are doing most of the times. This leads to a generation of programmers that in their majority are straight up incompetent. We need to provide a framework within which new programmers are able to understand what they are doing and why. How their choices impacts their code and so forth. Which brings me to my second point.
Lack of fundamental CS knowledge
You can code alright, but do you even know what the O notation is? Do you understand time complexity and how to make your application not consume battery like it's a motherducking cucumber demon trying to consume cucumber from a cucumber field? No business today is innocent on this. Most major corporations do not care about hardware limitations, they only want to provide users with an easy way to get addicted to something. Battery drainage? Ain't nobody got time for that! That being said, this kind of coding standards (code fast, as long as it works) are partly exacerbated by the lack of fundamental CS knowledge from new developers. If they cannot understand why it's bad to do 48 nested loops to retrieve an element, by itteratively checking a bunch of lists, then I wonder if they understand limitations. Now to the next point
It's rare nowadays to see people actually understanding how hardware works, even on a high level. RAM? Registers? Cores? What is this? I just want a happy catto to do a thing on my phone screen! Well, let me tell you a thing or two on that. If you cannot understand what an integer is (a couple of bytes, depending on your cpu architecture) and how it differs from a float, then how can you expect to understand why your new application doesn't run on 8GB devices? Abstraction on programming languages, and relying on this abstraction to actually function, has made us oblivious to how hardware works. By not understanding how hardware works, you will never achieve exploiting it to its full potential. Go look up GameHut on YouTube, and check out how his team made an FPS on hardware that barely supported some of the stuff we now take for granted. Only then will you understand how much your hardware can do nowadays. For crying out loud, we got people to the moon on 4.077MHz. Let me put this on the scale that we understand nowadays, 0.004077 GHz. We should be able to do so much more with what we have, but we lost our way somewhere along our path.
Have a good one!