I think a lot of what people assume to be "complexity" are actually just different mental models.
People think that Linux is hard, for example, but the people who generally think that are the ones who are expecting it to act like Windows and are frustrated when it doesn't. You see similar struggles when people switch from Windows to OSX, or from OSX to Windows. None of them are harder than the other, but your brain has already spent time wrapping itself around a bundle of concepts, and so it has molded itself into expecting that.
I think this is true of React as well -- if you're coming from a linear programming mentality, or OOP, then the functional paradigm requires a dramatic reassessment of things you've taken for granted. But if you're coming from Elixir, or Scala, or something that was already a functional paradigm, then React is easy, and OOP is the difficult thing.
I think a lot of what people assume to be "complexity" are actually just different mental models.
People think that Linux is hard, for example, but the people who generally think that are the ones who are expecting it to act like Windows and are frustrated when it doesn't. You see similar struggles when people switch from Windows to OSX, or from OSX to Windows. None of them are harder than the other, but your brain has already spent time wrapping itself around a bundle of concepts, and so it has molded itself into expecting that.
I think this is true of React as well -- if you're coming from a linear programming mentality, or OOP, then the functional paradigm requires a dramatic reassessment of things you've taken for granted. But if you're coming from Elixir, or Scala, or something that was already a functional paradigm, then React is easy, and OOP is the difficult thing.
Yeah, you're truly right.