diff --git a/entries/web-development/media/422d949d18969b9b2b8cf754ddc1e779.jpg b/entries/web-development/media/422d949d18969b9b2b8cf754ddc1e779.jpg new file mode 100644 index 0000000..7b11512 Binary files /dev/null and b/entries/web-development/media/422d949d18969b9b2b8cf754ddc1e779.jpg differ diff --git a/entries/web-development/media/fa157040d5849cc48de1cbec2c67ef69.jpg b/entries/web-development/media/fa157040d5849cc48de1cbec2c67ef69.jpg new file mode 100644 index 0000000..59fe049 Binary files /dev/null and b/entries/web-development/media/fa157040d5849cc48de1cbec2c67ef69.jpg differ diff --git a/entries/web-development/node.js-vs-php.md b/entries/web-development/node.js-vs-php.md new file mode 100644 index 0000000..d811813 --- /dev/null +++ b/entries/web-development/node.js-vs-php.md @@ -0,0 +1,63 @@ +![](media/fa157040d5849cc48de1cbec2c67ef69.jpg) + +It used to be the case that you wrote PHP for the backend and JavaScript on the +front end. However, that has all changed with the invention of Node.js. Some kid +invented a clever way to run JavaScript on the server. Now we can develop a +website that runs JavaScript on both the front and back end. This is good right? +We should all learn JavaScript. The one language to rule them all. Although +Node.js has taken the web by storm, I would argue that there are cases where PHP +is still relevant and even preferable. + +Where PHP Wins +-------------- + +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. + +Another key point is that PHP has been out for a longer amount of time so there +is an abundance of code on the web for reference. Not only is there more code +but there is also an abundance of tutorials, and books written on PHP. The last +reason why I love PHP is that it is really easy to deploy. If you updated a file +all you have to do is upload it to your apache web server. That’s it. With +Node.js you would have to upload the file and restart the server for the change +to take effect. + +Where Node.js Wins +------------------ + +If you only want to know one language, Node.js wins because you can now just +become a master at JavaScript. Many larger companies are starting to use Node.js +simply because it is faster than PHP. The asynchronous calls in Node.js is a +huge time saver for applications that heavily rely on database or API calls. The +brilliant use of callback functions can make your application run wickedly fast. +However, callback functions and synchronization promises can be a headache to +write. Once you get into the groove of it, it is not terrible, but it will add +development time to your project. + +Compared to PHP, Node.js is a newer language. There is currently a lot of people +actively developing for it. Therefore, the libraries that you are using are +newer and are often faster than their PHP counterparts. NPM is a lifesaver. NPM +offers thousands of modules at your fingertips which can easily add +functionality to your project. + +Conclusion +---------- + +I don’t want to sound like I hate Node.js, I enjoy using both PHP and Node.js. +PHP is better for smaller projects due to it’s fast development time. I would +recommend Node.js for any project that deals with heavy database usage. The +perfect use case for Node.js would be for a web API. If your project is heavily +dependent on HTML - like a blog- I would urge you to use PHP. + +If you are still undecided, just learn Node.js. It pains me to say it but, +Node.js is slowly taking over PHP. + +![](media/422d949d18969b9b2b8cf754ddc1e779.jpg)