The concept of lazy loading is a design pattern where you only download the required scripts/content when the client needs it rather than when the page is loaded. The most iconic example is the "infinite" feed that social media sites like Instagram use. Rather than dump a ton of content to the client at once, Instagram dynamically loads more content once you reach the end of the page. This allows websites to save bandwidth by only sending the client what they need when they need it.
When a youtube video is embedded into a website, it pulls a ton of scripts which are required to play the video. However, when you embed a youtube video on a blog post, most people are not going to watch that video. Even if the visitor wanted to watch that video, there is no reason why all the scripts should be loaded when you initially land on the page. Rather than embed the video normally, you can instead simply have a the thumbnail of the video with a play button on it. When the client clicks the play button, the youtube scripts are then loaded.
It is a well-known fact that a fast website is critical towards having high user retention. Google looks favorable upon websites which are well optimized and fast. If you are using a CMS like WordPress or Wix, a lot of optimization is done automatically. If you like to build stuff from scratch like me, there is a ton of work required to optimize a website. This post will cover the 8 things that I did to decrease the load time of this blog written in node by two seconds.
This is the result for a single blog post.
The major benefit with PHP is the low development time. You can write a website in PHP much faster than you could with Node.js. PHP is simply easier to work with than Node.js. Things like GET, POST, and SESSION information is simply a variable that you reference. Doing the same things in node.js is trickier because they require node dependencies – which vary in quality. Next, PHP was built to work nicely with databases like Mongo, and MySQL. In PHP you can make database query without falling into the callback hell that you experience in Node.js. It is not impossible or impractical to work with databases in node.js, I have done it plenty of times. However, synchronization of the database calls can be tricky and requires more code than it does in PHP.
WordPress currently has a bad reputation on the internet. Many people argue that the technology WordPress uses(PHP) is out of date. Tons of people leave WordPress for sites like Wix and squarespace simply because they are easier to use. There are valid points to these arguments. However, I would like to argue that WordPress is honestly not that terrible. There are hundreds of themes and plugins which make WordPress a very robust platform to use. Content management on WordPress is also very easy to manage. It may take more time to set up a WordPress site; however, it is well worth it in the end. WordPress is definitely not the solution for every website, but it is still adequate for blogs.
Jrtechs initially started as a static HTML site that I created early 2014 to build my HTML skills. I initially chose the name Jrtech, but that name was taken so later changed it to Jrtechs. My old computer running ubuntu 12.04 hosted this website. This website went though a lot of revisions as I learned more HTML/CSS. When every you opened the webpage, the images slowly appeared since I was hosting it on a DSL connection. This website never got any real traffic since it mostly just hosted a few pictures of projects I was working on. My vision for this website was just to be a place where I hosted projects that I was working on.
In 2015 I moved my website to the cloud and started a WordPress site. The website was focused on turorial like blog posts.