Blog 305— JS311

  1. How does Node.js handle child threads?
  • Node.js is a single-threaded language and uses the multiple threads in the background for certain tasks as I/O calls but it does not expose child threads to the developer.
  • But node.js gives us ways to work around if we really need to do some work parallelly to our main single thread process.
  • Child Process in Node: The child_process module gives the node the ability to run the child process by accessing operating system commands.
  1. How can you listen on port 80 with Node?
  • What I do on my cloud instances is I redirect port 80 to port 3000 with this command:sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000 Then I launch my Node.js on port 3000. Requests to port 80 will get mapped to port 3000.
  1. What tools can be used to assure consistent style?
  • Without adopting a new style, the team members of any project can modify a project easily. For this style generally, Standard and ESLint tools are used.
  1. List out the differences between AngularJS and NodeJS.
  • Both NodeJS and AngularJS are widely used and open source JavaScript-based technologies. AngularJS is a JavaScript framework, whereas NodeJS is a cross-platform runtime environment. As a client-side JavaScript framework, AngularJSAngular enables developers to create dynamic web applications based on model-view-controller (MVC) architectural pattern and using HTML as a template language. At the same time, NodeJS helps programmers to build scalable server-side applications by using JavaScript as a server-side programming language. Hence, NodeJS and AngularJS differ from each other in the category of architecture, functionality, performance, and usage.AngularJS was developed by Google as a web application development framework. Unlike other JavaScript frameworks, Angular is written completely in JavaScript. It even follows JavaScript syntax rules. On the other hand, NodeJS was developed as a cross-platform runtime environment based on Google’s V8 JavaScript engine. It was written in a number of programming languages — JavaScript, C, and C++.
  1. What are the advantages of NodeJS?
  • One of the key advantages of Node.js that I found is that developers find it easy to scale the applications in horizontal as well as the vertical directions. The applications can be scaled in horizontal manner by the addition of additional nodes to the existing system.
  1. What is meant by JSON?
  • JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.
  1. Discuss your understanding of Agile so far.
  • Quite simply, agile is a hype word that the IT industry uses to describe an alternative method of project management.
  1. How is scrum different from waterfall?
  • The main difference I found between Agile and Waterfall methodology is that Agile approach to software development has no strict structure. It is usually performed by a team of developers that contacts the customer constantly, so he is always involved in the process of work.
  1. What are the Three Amigos in Scrum?
  • The Three Amigos normally consisting of BA, Developer, and Tester it is one of the key ways to change the culture of the team to be more Agile, and encourage more collaboration. The Three Amigos ensures a common understanding for a story in the team; a session between Product Owner (Business), Developer, Tester
  1. What is the “timeboxing” of a scrum process called? Describe, please.
  • Timeboxing” is allotting a fixed, maximum unit of time for an activity. That unit of time is called a time box. Scrum uses timeboxing for all of the Scrum events and as a tool for concretely defining open-ended or ambiguous tasks.
  1. What are the roles of a scrum master and product owner?
  • In Agile development methodology, Scrum Master cares about that how the team’s work. Increases team efficiency, motivate his team, spins, argues for changes that will ensure quality and timeliness.The Scrum Master ensures that daily stand-ups are held at a fixed time every day for up to 15 minutes. The Product owner should know the business value of product and customers demanding features. And should be available to the development team for the consultation, so that the team can implement the features correctly.Product owner needs to understand the feature/program from the point of view of end-user, not from the point of view of the developer.