Sand Beneath My Feet 🏝️ - The React Ecosystem

September 27, 2021

A long swim in a vast ocean 🌊 🐚 🦈 πŸ¦‘

I wrote my first line of code ever in October of 2017. I did so while going through a tutorial on Khan Academy - playing around in a browser based editor - using JavaScript - drawing shapes and round smiley faces and googly eyes - and filling them with color.

That is how I jumped into the ocean of programming.

Ocean Water

Photo by Anastasia Taioglou on Unsplash

Maybe a month later - at FreeCodeCamp - I learned some HTML and CSS. Enough to build a small web page. For the challenge part of the curriculum - after a guided tutorial - the assignment was to build a single page tribute website - the subject being someone living or dead - famous or unknown.

This is what I built 🀭

Next came learning the basics of programming in Python.

I had read somewhere that Python was a good language for people first learning programming.

So, JavaScript and web development took a backseat for a time - while I struggled with some coding exercises - without context or any real visual feedback outside of the Python REPL in my terminal. I did not know about Flask or Django at the time - nor did I really understand what a β€œbackend” was, either.

Soon I became frustrated with understanding where code blocks ended and began with Python’s strict indentation syntax - so I switched back to JavaScript and it’s curly brace syntax.

Eventually, the frustration with Python wore off and I decided to give it another chance.

This went on for several months - a time which included learning some Bash - as well as Git and GitHub.

I had no idea what kind of programming I wanted to focus on.

The world of programming is huge - and I knew so little.

I had an idea that I wanted to learn the craft - for a variety of reasons including:

  1. To make a better living
  2. To find work that I could truly grow with
  3. To have more and better professional opportunities

I wanted work that I enjoyed and that offered me satisfaction - including the ability to do it anywhere in the world and at basically any age.

My job at the time was not offering me those things. And I knew that I enjoyed programming - difficult as it was.

Figuring out what would be my focus - the part of the vastness I would truly master - was like asking: β€œWhich neighborhood in Paris would you like to live in?”

I have never been to Paris. I speak two or three words in French. I do not have any friends living in France. I have no freakin’ clue about which neighborhood suits me.

Paris from above

Photo by Rodrigo Kugnharski on Unsplash

I still don’t, actually πŸ˜‰

Programming was like that for me for quite some time.

I just kept cruising neighborhoods, talking with people in each one, reading a lot about what I was seeing, checking everything out.

Eventually, after two years or so, I settled on the arrondissement or district of web development. I was narrowing it down - albeit slowly.

More recently, I narrowed my vision down even further to the frontend of the stack. That is where I get the most joy and sense of accomplishment when I complete a task. For now, anyway. I am always open to evolving. But for now, I call myself a frontend web developer - and I happy to be focusing on that side of things πŸ˜„

Closer to DRY land πŸ– πŸ™

I wrote my first lines of React in a coding bootcamp - but I did not fall in love with it until after bootcamp. My own experience in bootcamp was that it was such a fast paced, stressful environment ( particularly at the beginning of the COVID 19 pandemic ) that I felt we only had time to go into the surface of the React library and ecosystem - during the few weeks we worked with it.

Like Vim, React has a pretty steep learning curve in the beginning, in my experience. We spent several hours on Day 1 learning class based components - and I spent that evening practicing class based component syntax and trying to grasp component lifecycle methods - then we immediately switched to hooks and function based components on Day 2. What made it even harder is that I did not have experience with ES6 Object and Array destructuring or with ES6 module syntax.

Learning React without a solid base of understanding for object destructuring or module imports and exports is like scuba diving at night without a light 😨


TIPS FOR PEOPLE ENTERING CODING BOOTCAMP:

Learn ES6 syntax and understand the differences between server JavaScript environments like Node and the browser based environment. I did not get that until bootcamp and I could have saved myself some grief by learning it before the 12 weeks started.

Also, I would have been well served to have become familiar with Promises and async code.

These things confused me to no end during bootcamp and I felt 1000% better about JavaScript and React when I became comfortable with the concepts.


It got better 🀟🏼

Post bootcamp, though, I am head over heels in love with React πŸ’•

And I am making it my home for the foreseeable future 🏑

Beach in the Tropics

Photo by Jessica Pamp on Unsplash

React is a wonderful library. And the community that has built up around it is brilliant and full of energy.

The world of React is only one island in the Frontend JavaScript archipelago - but for me it is a rich island and one that I intend to explore until I know every inch of it.

Commiting myself to the React ecosystem ( including Next.js, Gatsby, and the incredible number of libraries that have been built around the concept of the React component ) is like finally being able to stand up in the water of a island beach and walk toward the shore.

And this island has beautiful things on it. It has natural resources with which I can build all sorts of wonderful and practical creations with.

I am far from alone on this island.

Which, to me at this point in my journey as a developer, is very comforting. Especially after having been swimming in a huge ocean for a long time prior to touching sand.

Some Good Neighbors πŸŽ‰

The React ecosystem has amazing creators contributing to it on a daily basis.

In no particular order:

These are just a few well known, accomplished and influential participants.

But there are many, many more - and many satisfying moments to be had.

There are some amazing resources out there to thoroughly learn React.

Including Kent C Dodd’s Epic React course - which I am currently working through and about which I will have far more to write about in future blog posts.

Glad to Be Home πŸ™

Every programmer should eventually find the things that they want to dive deep into and become expert in. The ocean of knowledge is just too vast not to.

Sometimes I read a bit about other solutions for building user interfaces - such as Vue or Svelte.

I have no doubt they are wonderful, also, and maybe I will devote time to learning and using them in the future - particularly if I am employed by a company that is commited to them.

But for now I am going to stay on the island I am currently on and really take advantage of the dry land.

A programmer has to find their focus and walk on sand eventually 🏝️ 🚢🏼

I have learned, perhaps the hard way, that I certainly do πŸ™‚


Profile picture

A Programming Blog by John William Davis - Based in Seattle - I am interested in all things React, Node, Rust and Vim πŸ€“ Β  Follow me on Twitter Β βœ…