Node.js (Current Installed Version: v14.18.0):
- Definition: JavaScript Runtime (can execute code directly on a computer) that is built off of Google Chromes V8 JS Engine.
- the Chrome V8 JS Engine is what takes written JavaScript code and compiles it into executable code.
- since node only runs on one runtime (V8) you don't have to worry about compatibility issues with other engines.
- Uses:
- installing and running various build tools
- running JavaScript on the server
- Benefits:
- Node.js is event driven, so if a blocking event occurs Node.js will generate a callback and move onto processing the next event. Once the blocking event has finished the server will execute the callback and continue working on the original event.
- long story short: very little server overhead
- you can clone a Node.js app to share the workload in order to scale
- Downsides:
- single threaded
- well suited for real time interactions/collaboration
- handling a lot of I/O driven requests
- data streaming
- scripting language to automate tasks
- writing a command line tool
- cross-platform desktop apps
- Advantages:
- scalability
- Front End/Back End are written in the same language
- it can understand JSON and pass it cleanly from Front End to Back End
- "easy to learn"
Npm: (Current Installed Version: 6.14.15)
- Definition: the JavaScript package manager, which is also the world's largest software registry with over 1 million packages of JS code available for download
- to install a library/package called 'jshint':
npm install -g jshint
- to install a library/package called 'jshint':
Pair programming allows you to focus on improving listening, speaking, reading, and writing, all while still learning to code!
6 Reasons for pair programming:
- Greater Efficiency
- while it make take longer up front, the code developed is usually higher quality
- Engaged Collaboration
- when working with someone you are both focused and less easily distracted
- Learning From Fellow Students
- exposure to different problem solving styles and techniques
- Social Skills
- getting comfortable talking
- Job Interview Readiness
- learning to talk to and through code
- Work Environment Readiness
- this is a common practice in the workplace and its worth knowing
GeoCoding API Axios Docs MDN Async & Await
- TBD