Why I prefer React

Jul 2, 2017 18:47 · 586 words · 3 minute read react angular frameworks

However isolated scope creates a new problem: if a transcluded DOM is a child of the widget isolated scope then it will not be able to bind to anything. Fot this reason the transcluded scope is a child of the original scope, before the widget created an isolated scope for its local variables. This makes the transcluded and widget isolated scope siblings

Slide from Rethinking Best Practices

Up and Running

During my web dev bootcamp, I heard lots of people tell me that learning web frameworks is much harder than learning a programming language. Once you know the basics of a particular language, you can pick up a new one in about a week, give or take… Your main emphasis is learning language specific syntax and implementations, allowing you to leverage most of the knowledge you’ve already accrued from previous languages. This notion was reinforced with resources such as Learn X in Y, a site where you can easily digest the most common features of a variety of languages.

The same thing may not be said about frameworks. If picking up a new language usually takes a week, then getting comfortable with the basics of a framework may take up to a month or more (so I heard).

I couldn’t really believe these statements…

giphy-downsized.gif

After all, a language should in theory be a much more complex beast than the framework itself. Right? As a growing developer, I’ve tried not to get too comfortable with the same tools I’ve already learned and set out to explore various frameworks and tools. By doing this, I’ve discovered how true these previous statements have been in my experience.

Angular, An Actual Framework

One of the frameworks that I kept going back to and then getting turned off by was Angular. I spent a lot of time on their docs, reading through ‘Up and Running’ sections, only getting frustrated by the snail speeds of the experience. At the time I just wrote it off as lack of experience, which is to be expected, however, I also felt like there was more to it. I just didn’t know what it was. My only reaction was to move on to something else and come back to it when I felt I had gained that elusive experience.

It was only when I stumbled upon the set of slides referenced above that I started to understand why I liked libraries like React or Vue.js much more. I enjoyed the composability of React components way more than the highly decoupled Angular directives with their separate templates and services. Sure, Angular is a much larger tool, after all, it prides itself on being a real framework covering all stages of the MVC model. However, I can’t stop to think how this emphasis on decoupling concerns can hurt the development process.

I’m not closing myself off to Angular forever, I’m just happy I have a better understanding of the reasons why for now I much rather invest my time with React.

Kindred Spirits