Building Websites in 2018 is a Lot of Fun
“React is Legos for adults”— Guillermo Rauch (@rauchg)
Building websites with React certainly feels like a fun puzzle at times. The idea of classifying every element on a page as a component is very intuitive and makes it easy for developers to spin up ideas quickly from scratch but also provide the opportunity to leverage code previously authored.
Further, the breadth of tools at our disposal is just amazing. Tasks that required significant back-end engineering experience, such as automated deployment pipelines, are now services that can be leveraged by front-end developers. For example, Netlify provides services that allow front-end developers to solely focus on the user interface/experience and leave the tedious deployment to them. Being able to push changes to the master branch of a repository and view them live a few minutes later is a fantastic developer experience. Want an SSL certificate? Just check a box. Need an AWS Lambda function to be integrated with your project? Just complete a few steps and you are all set.
I first learned how to build websites in the early 2000s in high school. Back then, we built our text-based projects using vanilla HTML and learned the classic workflow of 1) making a code change then 2) refreshing the browser to observe the results of the code changes. My classmates and I watched in astonishment as our changes in notepad were being reflected in real time in Netscape.
I attended a software developer bootcamp in 2017 and although I was astonished at the breadth of tools available to developers, I also was able to recognize a few familiar patterns from my high school days. Manual refreshing upon code changes has been replaced by hot reloading via Webpack and other tools but the thrill still remains. Two decades had nearly passed but the core development patterns were outside space and time.
Hearing and reading seasoned developers describe what it was like to build websites prior to modern tools such as React and Vue has been fascinating, as well. What about all that legacy code that is out there? Turns out, those tools were pretty resilient. Turns out, most of the websites and applications that we frequent on a daily basis were built with tools that predate the popular frameworks that we work with today.