by Alex Vervloet

Dear React: A thank you letter

Dear React,

I’m writing you this letter to express my gratitude for all that you have done for me. Without you, I would never have learned JavaScript as well as I have, in such a short amount of time. I would never have built my first full scale Web App. I would never have created a mobile app without learning a Native language. I would never have gotten my first job in the software industry.

I was another beginner Web Dev hopeful. I had dreams of creating grandiose websites, with tons of features and functionality. I was innocent and naive, not knowing just how many different moving parts were involved in professional Web Development.

You were my mentor, leading me by the hand, showing me the way with component structures, state management, lifecycle methods, and JSX. You didn’t try to confuse me with Observables, Directives, Services, Templates, and two-way data-binding. You told me to just stick to the basics, writing pure JavaScript, and then you would handle the rest.

You taught me to break down problems into small parts, building a tree-like structure that could easily be traversed. When it got too difficult to traverse, you gave me Redux, allowing me to abstract my logic and data away from the view layer, making it accessible for all. You also encouraged Functional Programming with pure actions and reducers.

You taught me concepts from Object Oriented Programming with Class Components. You taught me Abstraction with state. You taught me Encapsulation with parent components. You taught me an alternative version of Inheritance with props. You taught me Polymorphism with Lifecycle methods. But you also taught me that functions can be just as good with Functional Components.

Your Virtual DOM let me just write HTML, but also allowed me to add logic with ease, picking and choosing what I wanted to display and when. I didn’t have to write special templated loops or if statements. I didn’t have to change my HTML to make you happy (except for classes, of course, but I’ll forgive you for that one).

You played nice with RESTful APIs, and even offered me a great way to interact with them through GraphQL. You made asynchronous calls a breeze thanks to componentDidMount, as long as I didn’t forget my conditional rendering.

When I made a mistake, you made sure I knew. You kept me honest with my maps, making sure I gave keys to all elements. You protected me from messing up my code and rendering too often. If you yelled at me, it was for a good reason — and I could almost always figure out why.

Thank you, React, for being you. You’re not a framework, but you’re not just another library. You are so much more than that. I owe my successes to you, and I can’t ever repay you for it (or maybe I can someday, by giving back).

I can’t wait to see how you grow, and what you become in the future. You were created by community-minded people, for a community-minded purpose. This is what truly sets you apart from others. Even your little brother React Native is doing so well because of this community.

And finally, thank you for giving so much inspiration to spread your message. You’ve inspired great groups like freeCodeCamp, Udacity, and Codeacademy. You’ve touched great people too, like Stephen Grider, Andrew Mead, Maximilian Schwarzmüller, Tyler McGinnis, Michael Jackson, Ryan Florence, Azat Mardan, Nader Dabit, and many others whom you galvanized into making my journey easier.

For all that you have been and shall continue to be…

My sincerest thanks.

Alex Vervloet