ccStack - Software Solution Components
- Operating System: Linux - Coding Commanders uses Ubuntu
- Web Server Software: ExpressJS - Serever framework for NodeJS applications
- Database: PostgreSQL - Postgres is an extreamly powerful open source relational database management system
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.
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.
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.
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.
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.
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.
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!
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 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