1. What is node.js?
- Node.js is an event-based, non-blocking, asynchronous I/O runtime that uses Google’s V8 JavaScript engine and libuv library.
2. In your own words, what is Chrome’s V8 JavaScript Engine?
- V8 is the name of the JavaScript engine that powers Google Chrome and the variety of other chromium browsers. It was designed with performance in mind, and executes our JS while browsing with chromium browsers.
3. What does it mean that node is a JavaScript runtime?
- it is a program that we use to execute JS while on our computers.
4. What is npm?
- it is a package manager, along with being the world's largest software registry.
5. What version of node are you running on your machine?
- v14.17.4
6. What version of npm are you running on your machine?
- 7.24.0
7. What command would you type to install a library/package called ‘jshint’?
- npm install -g jshint
8. What is node used for?
- it allows us to run JS on the server
- It's single threaded and event driven, meaning that everything that happens in Node is in reaction to an event.
- it can be used as a scripting language to automate retitive or error prone tasks on your PC.
- It can also be used to write your own command line tool, to scaffold out new projects.
- building cross-platform desktop apps
- creat your own robots.
1. What are the 6 reasons for pair programming?
- 6 reasons
1. Greater efficiency - two people focusing on the same code base find mistakes faster, research answers faster, and it also enhances technical skills, team communication, and even enjoyability of coding in the workplace.
2. Engaged collaboration - keeps people more engaged and focused on the task at hand. Stops people from checking social media or procrastinating if someone is counting on your help. It builds confidence to ask for help when needed.
3. Learning from fellow students - everyone has a different approach to problem solving, and working with others can lead people to learning a different way to solve problems they would have never thought of. Also devs have different skill sets that can be taught to others that might be less knowledgable in certain areas than others.
4. Social skills - forces people to develop social skills, as communication is key in pair programming. They are also able to develop their interpersonal skills and how to work well with others.
5. Job interview readiness - prospective employers might have you participate in pair programming with an employee at the company to get a feel as whether you might fit in with the environment, your communication skills, as well as your techinical skills capacity(or ability to learn different skills.)
6. Work environment readiness - prospective employers expect to gain people who need to be taught how to actually deliver a product, but CF grads will already know how to do this with pair programming.
2. In your experience, which of these reasons have you found most beneficial?
- Engaged Collaboration, as it helps people find answers to problems they wouldn't find by themselves normally. It also allows you to stop the procrastination that might be tempting you with the various forms of social media and the like.
3. How does pair programming work?
- It requires 2 or more individuals to work together, with one person, the driver, writing all the code on their laptop(desktop) that is told to them by another individual, the navigator. While the navigator is telling the driver the steps to take and what code to put down, that doesn't stop the driver from commenting about ideas that come to their head or potential problems that might arise within the code. At some point, the two individuals will switch jobs, and continue where they left off. Both individuals are expected to polite, respectful, and listening to what the other has to say. This doesn't mean you don't disagree with the other, but that you at least listen, and try to understand where the other is coming from.