Admiring The Poetry Of Code – Hacker Noon

Why I Still Love Writing HTML, CSS, and JavaScript

Believe it or not, I’ve made a career for the past decade out of writing pure HTML, CSS, and JavaScript. While I do run my own business as a software engineer, coding mostly with PHP and JavaScript, I am still learning how to write code in NodeJS and ReactJS, because that is technically what most tech companies are looking for nowadays. Most companies won’t even acknowledge you if you have no experience with JavaScript, but my actual living for the past decade has come from web design, specifically in writing pure HTML, CSS, and JavaScript — and for the past few months, I’ve also found great work as a technical writer for RunCloud.

A recent article made me realize just how much the world of web design is starting to experience The Great Divide: those who know JavaScript design and those who don’t. In short: on one side, an army of developers whose interests, responsibilities, and skill sets are heavily revolved around JavaScript. On the other side, an army of developers whose interests, responsibilities, and skill sets are focused on other areas of the front end, like HTML, CSS, design, interaction, patterns, accessibility, etc.

Photo from CSS Tricks: The Great Divide

We rarely acknowledge or recognize it, but the latter is being phased out quickly and hushedly, while the former remains highly in demand. The shift in what companies are looking for requries the latter educate themselves in order to remain relevant in modern technology. The salary demands of the former are also much higher than the latter. There are hundreds to thousands of jobs that need to be filled every year, but often go unfulfilled. Unfortunately, it is the way of the world, and I strongly recommend the latter hop on board and start learning JavaScript fast.

When programming or designing, I reflect back on the days when I thought HTML, or HyperText Markup Language was the best thing that happened to the world. It was a language that I knew that the world barely knew. To the rest of the world, the magic just happened. To me, this HTML code made the magic happen. I didn’t know HTML and the way I learned it was by simply clicking on View Source. What I saw the frontend and what it revealed to me on the backend was vastly different, yet magical. We often take for granted such code. Most people today have no idea that CSS and JavaScript did not always exist and we all relied on HTML for our “visual” needs. Many years ago, we couldn’t do half of the things we do so easily today.

In 1995, JavaScript came to fruition, and you could mostly do simple commands like alert and write. More importantly, you could write more complex commands like mathematics and accept user input. Netscape Navigator paved the way for such a language to progress and expand. Internet Explorer, Opera, and later on, Firefox and Chrome would use and accept JavaScript as if it was a given. VBScript also had its reign for quite some time, but the advancement of JavaScript has allowed it to thrive into new decades, expanding upon its usefulness and functionality.

Before 1995, every page needed to be designed and many designers would have to copy the same template over and over, creating individual HTML pages that looked similar, or might be different, all hand coded into the templates themselves. This could easily number into the hundreds to thousands of individual page creation, which would eventually give rise to DHTML, or Dynamic HTML, and then ultimately, to the CMS, or Content Management Systems, where pages could be loaded through database calls and eventually, a caching system, for fastest loading speed times.

The result being that instead of creating hundreds to thousands of pages individually, you could load a single page every time and a call to a database for that web page would load up the content, eliminating the physical need of page creation. Once CSS, or Cascading Style Sheets, came to full adoption by the entire web community, it made things much easier, as pages could look the same in a single line of code. The beauty of CSS was that you could still place CSS inline to change templates while still having the general template look like every other page.

The Great Divide, as mentioned above, creates a barrier for the fact that most companies are now looking for the former: JavaScript soldiers while completely writing off the knowledge of the HTML/CSS workers. The reason likely being is that backend and frontend programming can easily be mixed with the available npm libraries, making the syncing process of frontend developers and backend devleopers easier. Therefore, the former are more likely to get hired rather than the latter, and the latter must now work to update their knowledgebase to include JavaScript. If they do not, they are likely to become obsolete and there is nothing they can actually do about it. Luckily for the companies I have worked for, they had only required me to know the latter, but in applying to newer companies, I realize that I now have to meet their required standards.

ReactJS and NodeJS and all things that require more complex JavaScript beyond just adding a script to the page are far different than just looking at “View Source” and figuring out how things work. Instead, it requires full knowledge of working JavaScript, understanding how to setup and use ReactJS, and learning the complete work of NodeJS. You can also add in Vue.js to the knowledgebase. Learn all of these — and you will find yourself having a job for the next 20 years until they come up with something new and different and hip with “modern company standards”.

In fact, with no relation at all, but my total respect to him, you should probably just follow Flavio Copes and read everything he writes, as he seems to know everything there is to know about JavaScript. There is no doubt that although Medium FreeCodeCamp’s website says it takes 91 minutes to read his complete JavaScript Handbook, it probably took Flavio months to actually write it, and sharing it with the community for free at large — makes him one of the most generous people in the world, when it comes to teaching and kindness.

As I continue to write code and choose my designs and libraries, I still can’t help but take a look at the code that makes everything I do possible. Oftentimes, I’m fixing bugs, but there comes a point where most of the bugs are gone and I just get to admire my work. The evolution and beauty of the code, made possible by the web browser, to magically render all things we see on the frontend and process them on the backend. With a combination of JavaScript, HTML, and CSS — and focus on frontend development, we often forget the poetry of code that streamlines and makes our world possible.

read original article here