Palm Beach Tech Blog

The Palm Beach Tech Blog



ccStack: NodeJS + SQL + Linux

December 9, 2018

ccStack - Software Solution Components

NodeJS is a server-side JavaScript framework that is gaining popularity at an astonishing rate! It is known for its asynchronous nature.

  1. Operating System: Linux - Coding Commanders uses Ubuntu
  2. Web Server Software: ExpressJS - Serever framework for NodeJS applications
  3. Database: PostgreSQL - Postgres is an extreamly powerful open source relational database management system
  4. Programming Language: JavaScript - NodeJS is a server-side JavaScript framework

Why learn NodeJS?

Thanks to NodeJS, asynchronous software patterns are in to style. It is rumored that the next version of PHP will be asynchronous. You don't want to get confused when asynchronous code comes to your office!

NodeJS isn't just used for web development! Learning Node will broaden your programming horizons.

NodeJS Employment

Just starting your computer science journey?

NodeJS is also new! That gives newbs an earlier chance at higher level positions. Traditional languages, like PHP and C#, have experts with 20+ years experience. No one has 20 years of NodeJS experience.

Front-end Developer?

Do you want to switch to back-end or full stack development? Because NodeJS is a JavaScript framework and its hard to find experienced NodeJS developers, a lot of employers will count your front-end JavaScript experience as Node experience!

Architecting a software application and interacting with the database using a server-side language is completely different than most front-end programming. A lot of companies just think its the same thing.

No worries! Your JavaScript skills combine with what you'll learn in Coding Commanders NodeJS tutorials, will make you a Node superstar!

Escaping Web Development?

There are more web development jobs than any other type of programming. That means a lot of entry-level opportunity! I suggest learning a web software stack first. That will get you employeed.

There is nothing wrong with web development. It is really fun! But us scholars and adventures like to try new things!

NodeJS is used for more than just web development. A lot of organizations are experimenting with different typess of NodeJS applications. There are a lot of unique employment opportunities for NodeJS developers.

Overall Number of Jobs?

Even though Node's demand is growing, there are still a lot more jobs in PHP and C#. LAMP stack jobs are the most plentiful.

In my area, South Florida, most of the NodeJS jobs are coding bootcamp kind of full stack - Angular or React + noSQL and/or SQL + NodeJS + Express. Generally they want to see completed projects and don't care much about years of experience. However, this isn't the case in everyone's neighborhood.

Search "NodeJS" in your local job ads (or job ads in areas where you'd like to live) to preview the demand. Be realistic, but also take Node's growth rate into account.


ExpressJS

ExpressJS is a NodeJS framework used to write server code. One of the powers NodeJS gives you, is the power to write your own server code. ExpressJS makes it a little easier to write a web server and is the job market standard.

Most NodeJS employment opportunities will also want you to know ExpressJS. If you write server code with vanilla NodeJS (or even another server framework), you will be able to write an Express server. Unfortunately, recruiters and HR professionals don't know that. They want to see this bullet point!

Bullet points aside, the main reason I use Express is that everyone else is doing it and I didn't already have a preference.


PostgreSQL

PostgreSQL is a highly sophisticated open source relational databasemanagement system. It's functionality far surpasses that of MySQL.

MySQL is the most popular open source relational database management system. Postgres and MySQL both use SQL (structured query language).

Employment Overview

Like NodeJS, PostgreSQL is experiencing high growth. PostgreSQL does not dominate the market place, but its robust set of features will perpare you to program any SQL database management system. PostgreSQL is thought of as the open source Oracle SQL.

With SQL, employers don't really care if you have used the same database management system. "It's all SQL". However, they will care if you have programmed the desired functionality.

MySQL and PostgreSQL are the major open source SQL options. MySQL will prepare you adequately for web site development. But enterprise web applications tend to require a more powerful database management system. PostgreSQL is sophisticated enough to meet the needs of just about any organization. Even if that organization uses a different DMS, your Postgres experience will still count!


Linux

Commander Candy's Distro Choice - Ubuntu

Linux expertize makes programmers more marketable and sysadmins employed. Your computer's operating system isn't where the experience counts. Your actual device can have any GUI (or server) Operating System. All you need is access to a Linux command line.

I have tutorials to Setup Oracle VirtualBox with Ubuntu Server. Complete the tutorial and you will have your own virtual Ubuntu server!

Why Ubuntu?

Ubuntu is my personal favorite, so all my tutorials are done in an Ubuntu environment. If you have another preference, use it.

Programming tutorials are not effected by OS. However, setup and adminstration does differ between OS. The Linux commands used in Coding Commanders tutorials should work on any Ubuntu or Debian distro.

Learn LAMP: Linux, Apache, MySQL, PHP

Learn NodeJS Asynchronous Design

Asynchronous programming gives programmers more power over resource allocation and general application efficiency. But with great power, comes great responsibility. Coding Commanders has comprehensive tutorials on NodeJS Asynchronous code: NodeJS + Express + Ubuntu + PostgreSQL.

Share this article on your social media!

Palm Beach Techie Official T-shirt!!!

Palm Beach Techie T-shirt Shop

Follow Palm Beach Techie

Follow Coding Commanders

© copyright 2018 Palm Beach Techie