\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={Node. js Challenges in Implementation},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2017-01-15 (revised: 15 January 2017)}
\def\TheID{\makeatother }
\def\TheDate{2017-01-15}
\title{Node. js Challenges in Implementation}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Hezbullah  Shah}

             \author[2]{Hezbullah  Shah}

             \affil[1]{  SZABIST Dubai}

\renewcommand\Authands{ and }

\date{\small \em Received: 7 December 2016 Accepted: 1 January 2017 Published: 15 January 2017}

\maketitle


\begin{abstract}
        


Node.js gave rise to the Full Stack Developers who are now able to manage server and client side by their own. Node.js is fast and reliable for heavy files and heavy network load applications due to its event driven, non-blocking, and asynchronous approaches, where developers can also maintain a complete projects in single pages (SPA) and can use for IOT. The result of study concludes from a survey and from literature review the implementation areas and challenges of the Node.js. Lastly will provide suggestion on how to improve to overcome the challenges.

\end{abstract}


\keywords{node.js, javascript, SPA, IOT.}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{Introduction}]{Introduction}\par
eb based applications are increasing its popularity as they become easier to develop, maintain and secure. Also they are easily reachable to the clients and does not require additional installations in most cases and are quickly customizable \hyperref[b0]{[1]}. Web application is derived from web based system, which have additional functionality to execute business logic of an organization. These applications are totally web based instead of requiring to install a separate application on the operating system \hyperref[b2]{[2]}. Google Docs, Web based retail stores, Google Maps, and the web based email applications are kind of Web applications \hyperref[b0]{[1]} \hyperref[b3]{[3]}.\par
The Web development industry will find two kinds of developers. i.e. Front-end developers and Back-end developers \hyperref[b3]{[3]}. Front-end developers require to have knowledge of HTML, CSS, and a programming language to add effects and more to the front -end i.e. JavaScript. They build the web sites display and effects which are shown to the clients by converting the designer's design \hyperref[b3]{[3]}.Back-end Developers build the business logic behind any web application. The actions for instance adding and retrieving news highlights to and from a web applications, or sending email from a web based forms, or authenticating a visitors or clients credentials are all part of back-end developers. A backend developers need to know languages like PHP, .NET, Java, and others \hyperref[b3]{[3]} \hyperref[b4]{[4]}.Back-end developers should also have knowledge of databases like My SQL, Oracle, and SQL Server, or should hire or entrust a database administrator to work with the flow. A database administrator will take care of database server and ensure its smooth performance \hyperref[b6]{[5]}  \hyperref[b4]{[4]}.\par
Full stack developers are jack of all trades, and they are the one who do all. Mostly back-end developers are required to have skills of front-end developers and vice versa and have extra burden on them of learning additional skills set \hyperref[b4]{[4]}.So it is clear that for a developer to become full stack, he have to have expertise in languages of three kinds, i.e. Client Side languages such as Java script along with HTML and CSS, Server Side Languages such as PHP, .NET, Java, Ruby, etc, and database expertise such as SQL Server, MySQL Server, and Oracle. As depicted in Figure \hyperref[fig_0]{1}. Node.js is overriding the complication of learning multiple languages in the same time to become a Full Stack developer where a front-end developer who is confident in JavaScript just requires to learn some additional Server Side Functions and he becomes a Back-end developer \hyperref[b7]{[6]}  \hyperref[b8]{[7]}. Apart from this where Node.js is free, it is also used by thousands of developers around the globe \hyperref[b9]{[8]}.While the web application demands performance and scalability, history have already adopted threading and events W © 2017 Global Journals Inc. (US) either separately or its combination. But its daily internet traffic's increasing nature demand better and new solutions to improve the concurrent nature of the service. One solution is Node.js (which sometimes is also termed as Node \hyperref[b10]{[9]}) which is a lightweight, and fulfills the demands through event-driven and nonblocking I/O model and server-side JavaScript \hyperref[b11]{[10]} \hyperref[b12]{[11]}. Chrome's V8 JavaScript engine is the basis for Node.js as Node.js JavaScript runtime is built on it \hyperref[b12]{[11]}. Written in C++, V8 is an open source from Google as a high performance JavaScript engine. Google have used V8 in Google Chrome browser, and is capable to run standalone and can also be embedded into C++ applications. It is capable to run on different versions of Windows, Mac OS, and Linux \hyperref[b13]{[12]}. As Node.js is eventbased and not thread-based, it is also capable of scaling to millions of connections concurrently, while using an event loop within a single thread and not making overhead of multiple threads. Node.js processes its I/O operations asynchronously and is widely misunderstood with AJAX. While Node.js and AJAX are considerably different \hyperref[b10]{[9]}. a) Advantages of Node.js over others Node.js is built from ground for the purpose of handling asynchronous I/O as it is built of JavaScript and JavaScript is built as event loop. Like the on click event for a button in client side JavaScript is and event loop. While other environments do have this feature, they have it with using third party libraries or are not built from ground for the same purpose like the Node.js and hence they are often slow, or lags and does not belongs as a standard feature to them. Some of the examples are Event Machine -built for Ruby, Twisted -licensed under open source MIT License, it is introduced for Python and is available since Python 2 onwards, and network framework library for Apache named as Apache MINA which is also called "Networking Socket Library" and is another example of providing event-driven and asynchronous limited to APIs only. Similarly Apache AsyncWeb is built using Apache MINA and Perl's Any Event. Similarly an edge of Node.js over others will be that it will be capable of handling multiple request while it will act like a client towards the third party services by executing only a single thread. Other languages in this regard will block the processing until the remote server responds first for their initial request as a result they will be requiring multiple threading for executions. Comparatively in Node, all what you will use is asynchronous as it will become quite hard if you are to write non-asynchronous code in it. Also Node.js will never force to buffer data before outputting while the others like Event Machine, forces buffering in many cases to buffer the data \hyperref[b8]{[7]}[6][13] \hyperref[b14]{[14]}[15]  {\ref [16][17]}.\par
Being server side JavaScript, another admirable edge of Node.js over others is that a developer will be required to only have knowledge and experience of a single language i.e. JavaScript, no matter if he is developing client side scripts or scripts for server side. The developer is not required to swap his brain cycles from for one language at client side and then for another language at server side. Hence JavaScript end-to-end as depicted in the Figure \hyperref[fig_1]{2}. Here the database of JavaScript also store date like a JavaScript Object. Adding to this, it is also worth considering that Node.js is new and thus have benefit of taking precautions against the mistakes which other languages had come across in the past such as the mistake of backward compatibility \hyperref[b8]{[7]} \hyperref[b7]{[6]}. Figures shows that about 47\% of web surfers wants a website to be loaded within 2 seconds and a 3 second delay drops the customer satisfaction by 16\% \hyperref[b20]{[18]}. Here the Node.js leads as the interpreter of Node.js is smaller and fast compared to other languages like PHP. Here the server side apps are permanently kept ON unlike other languages where every initiation of the application will follow cycles consuming steps of for example loading configurations, followed database connectivity, acquire required information and finally render the markup language. Node.js on other hand reduces these steps by keeping an app permanently ON \hyperref[b21]{[19]}. A code in Node.js becomes fast growing, along with making it difficult to debug due to the fact that it is using event-driven/callback approach \hyperref[b8]{[7]}. Big drawback currently is the unavailability of ready hosting for Node.js environment. Complex topics of JavaScript language such as prototypical inheritance, anonymous function, callbacks make the language hard to learn, and thus becomes the choice to be learnt when one has mastered another easy language first \hyperref[b22]{[20]}. Node.js is not a mature language still and thus faces so much hesitation to get joined by expert programmers. Another issue is that being single-threaded, other requests are stopped if in case the CPU is occupied even for some parts of a second. And so the developers are also forced to think in asynchronous which is not easy to get used with  {\ref [21] [22]}.\par
The scope of the study is to make struggles for exploring the implementations of Node.js and try to catch on how it can be made easy to implement for new comers specially. Also it tries to explore challenges to Node.js that why it is still not being very widely implemented and why new comers to Node.js are less? Efforts will be made to combine the ideas with real experiences and not suffice just theories. The study will be exploring the issues in the Node.js implementations and adoption if any and provide recommendations for those challenges. This study will make the reader interested in the adopting of Node.js as the features and possibilities of Node.js will be uncovered to the reader. The result of this study will help developers to find out reasons and methods to quickly adopt the Node.js and help Node.js become popular in the market similar to other top languages like .Net Languages and PHP. This paper is organized as follows, section 2 will explore the review of literature, section 3 will talk about material and methods used for this study and section 4 will depict the results and finally discussion and future work will be discussed. 
\section[{II.}]{II.} 
\section[{Literature Review}]{Literature Review}\par
This section describes about the existing research on the Node.js as a server side language and areas where Node.js is implemented practically, along with having some general review about the same like History of Node, and some application areas of Node.js and is it efficient or not. a) About JavaScript and Node.js\par
The history of JavaScript dates back to the beginning of WWW and it started playing integral role in making the front ends of websites interactive. JavaScript introduced its concepts in AJAX in late 1990's which is again used to add real time like behavior to the web pages. Till this time the JavaScript was always believed to be a client side scripting language and that it has nothing to do with the server side programming. However by the development of server side JavaScript like Node.js, the concept changed and now the JavaScript is not only a client side scripting programming language, but also it is also capable of executing on server side. Node.js is one of the main competitor in the JavaScript on server-side era. Again it is important to mention that Node.js is different from JavaScript, while JavaScript is no doubt backbone of Node, Node.js is just build on top of JavaScript only and hence use the same language \hyperref[b10]{[9]}. b) History and Evolution of Node.js\par
The created Ryan Dahl was first motivated to build Node.js from a progress bar showing file upload at Flickr (a company of Yahoo dealing with pictures galleries \hyperref[b27]{[23]}) where the browser was asking server again and again about how much size of file is being uploaded \hyperref[b28]{[24]} \hyperref[b29]{[25]}. And on March, 2009 Node.js got its name for the first time and the package manager for it was also introduced in the same year in October and an early preview of npm (the Node.js Package Manager) was introduced. Later in the same year in November, the creator Ryan Dahl did the first talk about  {\ref Node}  \hyperref[b31]{[27]}. Later in end of 2014 some of the enthusiasts from Node.js team boycotted Node.js and created their own fork from Node.js naming it io.js or iojs. They boycotted as they were unhappy with the control of Joyent over the project \hyperref[b32]{[28]}. The following year, both of them again seem to merge together as they both voted to form a neutral Foundation of  {\ref Node.} With the build of Node.js, the web servers got event driven programming. Which made the web server fast and in a language widely popular i.e. JavaScript, and this is also the reason that the entire web development community got access to Node.js within no time. In Node.js developers are not required to make use of threading while creating greatly scalable servers. Node.js uses a very easy event-driven model which uses the triggering of callback functions upon completion of a task or generation of error. Ryan Dahl created the Node.js behind the idea that other programming languages makes it difficult to program things to make them work concurrently \hyperref[b36]{[31]} \hyperref[b37]{[32]}. d) Adoption of Node.js Node.js is adopted by giants such as PayPal, LinkedIn, Medium, and Netflix to mention among the many \hyperref[b38]{[33]}. Face book adopted Node.js and it proved for them extremely proficient and then they adopted it for production \hyperref[b39]{[34]}.Microsoft made a worthy change of making Node.js a part of the developer stack mainly since then developers can now use it on Azure platform also along others and is not restricted to only old Operating Systems  {\ref [35]}. Walmart adopted end-to-end JavaScript by using Node.js believing that Node.js will be helping them to front their services which they are providing all over the world. They mentioned they adopted Node.js also because it is not just introducing new thinking of how to build perfect software, but also great way to express the existing things in a new way \hyperref[b41]{[36]}.According to the statistics by GitHub, JavaScript is the most popular language. The statistics graph is shown in Figure \hyperref[fig_3]{3}[37]. Node.js was compared with PHP/Nginx for Performance and Scalability, where Node.js showed high performance and scalability compared to PHP/ Nginx. The two researchers developed web application on Dijkstra Algorithm and simulated load of concurrent user requests using some load generators \hyperref[b42]{[38]}. University of Notre Dame in \hyperref[b11]{[10]} had a project report issued where the author performed tests between Node.js and Ruby's Event Machine and Apache's threading model, which measured request time over the number of cores. Node.js had again beaten the other two especially when the number of cores were increased. Node.js based DPWS -Devices Profile for Web Services (termed as Node. DPWS) was evaluated for performance and compared with alternative DPWS tools. The researcher concluded that Node.js based DPWS was easy to use as well as light weight. Node. DPWS had beaten even the most striking substitute of it in the field of IoT (Internet of Things) \hyperref[b43]{[39]}. Node.js also plays important role in GIS field and a paper published in Journal of Korea Spatial Information Society used Node.js in Web GIS. They implemented Node map and concluded in their research that Internet GIS have its future bright in combination to the Node.js \hyperref[b44]{[40]}. Another analysis study at \hyperref[b10]{[9]} has shown that Node.js can be used to have complex real time applications and that these application can be served for millions of client connections. There is a web service named MAGI which is used in infrastructures of graphic processing unit (GPU) for the purpose of fast data analysis of Micro RNA-seq. While MAGI is based on Node.js, it did addressed the limitation of other similar tools to not being able to handle large files, and a burdensome error prone steps. Also MAGI helped uncovered the delay in downstream analysis as the others are time consuming and solved the issue of others of not being able to provide statistical tests \hyperref[b45]{[41]}. 
\section[{i. Single Page Applications}]{i. Single Page Applications}\par
Single Page Applications or SPA is a term given to web based applications which does not cause a page to reload during use. While SPAs have history from quite a long time, and is based on Java, Flash and JavaScript. It is known that JavaScript does not require any third party client plugins like the former ones. And that is the reason that Node.js as it is based on JavaScript becomes successful in competing the others in SPAs \hyperref[b46]{[42]}.\par
ii. NodeOS An operating system built on Java Scripit is Node OS. Its packages are managed by the package manager of Node.js which is npm hence any Node.js package is Node OS package. While packages in npm is about 300,000.NodeOSwon the Spanish 9th National Free Software Championship in the category of the Systems and is also honorably Mentioned in its 10th edition  {\ref [43]} [44]. 
\section[{iii. PoisonTap}]{iii. PoisonTap}\par
Poison Tap is built on Node.js to create backdoors even the locked computers. This USB just requires to be plugged to a running computer even if it is locked. It then installs continuous backdoors which operates even if the USB is removed later and allows the intruder to access also the router along with the target network and cookies of the web browser \hyperref[b47]{[45]}. When we asked the creator Samy Kamkar through email that why he choose Node.js for Poison Tap, he replied: "The browser based code must be in JavaScript, so it made sense to me to keep the backend in the same language". iv. Node.js in IOT Node.js is adopted by developers and researchers for IOT for the reasons that JavaScript fast and is familiar among the large number of web developers as they use it with HTML5 for programming front end User Interfaces, and important point is that JavaScript is best for embedded devices as its nature is to support asynchronous and event-driven functions. Also the programming model adopted by Node.js is a great fit for embedded devices as well as servers and the domain experts have already adopted Node.js for the purpose of IOT \hyperref[b48]{[46]}.Microsoft have also adopted Node.js for IOT development in its developer resources \hyperref[b49]{[47]}. 
\section[{III.}]{III.} 
\section[{Materials and Methods}]{Materials and Methods}\par
This study gains knowledge from the Node.js domain experts through intensive literature review. This study also gains knowledge from a surveys conducted from the professional developers. The survey was created on Google forms and ran for 1 month from the following link: ? https://docs.google.com/forms/d/e/1FAIpQLSc4Ghr oqubE5jQSnzmPOXEWuXzD8IcpRCtFPbSfFYscszX SVg/viewform?hl=en The survey was targeted to the developers groups on the LinkedIn, Facebook and also shared with professional developers.\par
IV. 
\section[{Results and Findings}]{Results and Findings}\par
The Literature Review concluded that Node.js can be useful and should be implemented in any place where there is processing of large files or requires large network load. Below are discussed some results in the same context. Due to Node.js a developer can easily become Full Stack Developer where he as a developer does not require separate colleagues for server side development and database development. Also the employers can reduce their cost by adopting Node.js as they will find a single developer taking care of performing all task at server side as well as at client side. Introduction of Node.js also introduced easy implementation Single Page Applications (SPA) where the web application developed in it are faster, as they use fewer resources of the server and fewer callbacks to the server while making the websites more interactive and user friendly \hyperref[b46]{[42]}. The literature review also concluded that the field of Internet GIS have bright future in combination with Node.js. Also to mention, that Node.js is proven to be faster than other to process graphics processing. As there are benefits of the Node.js, there are large chances of misusing it and one such case is the release of PoisonTap USB which create backdoors to a computer and the network through any running computer even if it is password locked. Due to the increased use of JavaScript among the developers, such backdoor software are also part of life of developers.\par
As the study is also based on the quantitative research, because a survey was conducted, below are mentioned the results of the same. The online survey was sent to several Professionals through LinkedIn, Facebook, and Personal Networking. Total 93 responses were received. Among them 80 responses were useful for this study as they were developers and as this study is related to developers' community. Among the 80 developers (respondents) which were reached within a month, 16.2\% did not know about Node.js. The rest 83.8\% of the developers proceeded with the rest of the survey questions and they were 67 in count as shown in Figure \hyperref[fig_4]{4}. Regarding learning challenge; the respondents shows that is somehow hard to learn the Node.js as only 31.3\% said it wasn't a challenge for them to learn Node.js. 23.9\% felt its learning as a challenge, 44.8\% felt little bit the learning as a challenge as shown in Figure \hyperref[fig_5]{5}. Regarding Database challenge; the survey concluded the results that as developers are familiar with the SQL databases, they find it difficult to adopt the NoSQL databases as quickly as only 31.3\% said that the NoSQL databases use and learning is not a challenge as shown in Figure \hyperref[fig_6]{6}. Regarding the Event-Driven feature challenge, the survey concluded that they felt difficulty with Event-Driven feature of Node.js as 40.3\% did not considered it as a challenge, the rest25.4\% felt it a challenge to some extent only, and the rest 34.3\% said they felt it as a challenge as shown in Figure  {\ref 7}.   Regarding the challenge of configuring server for Node.js; 61.2\% responded as they did not felt it as a challenge. Only 25.4\% felt it as a challenge, while 13.4\% felt setting up the server a challenge up to some extent only. The result of survey to this opinion is shown in Figure \hyperref[fig_10]{11}.  The challenge of market awareness is also a factor in implementing the Node.js. This is shown from the Figure \hyperref[fig_12]{13} as when asked from the online survey respondents about the market awareness factor, 44.8\% agreed to it as a challenge, 19.4\% agreed it as a challenge up to some extent. While only 35.8\% said it is not a challenge. As a result of the survey conducted, the greatly liked feature (by about 50\% developers) of the Node.js is the reality that the same consistent language is used on both the servers and the clients. While the other features like event-driven, non-blocking feature, and the use of JavaScript is also liked by about 46\% of developers. And some of them (which are 34.3\%) also liked its ability to make itself best fit in IOT. This is shown in Figure Discussion and Future Work
\begin{quote}
14\end{quote}
\par
The study got the finding about the implementation of Node.js. Below is discussed the implementations positive findings as a result of literature review and the survey. ? The Node.js have made Full Stack Developers' job a dream come true. In absence of Node.js it was hard for a developer to learn several different languages and environments to manage the complete system at server side and client side. ? Organizations and developers can now with the invent of Node.js build highly load bearable and faster applications and by using Single Page Applications (SPA) now the server calls are reduced and the applications are more user friendly and faster. ? Node.js made it easy to achieve high load operations like graphic processing and Internet GIS very quicker, and it can be reliably used in every field where the files sizes are high or the network bandwidth is highly consumed. Node.js will make such operations faster and with less need of bandwidth. ? Community like its feature that the same language is also being used at server side while JavaScript is always been used at client side for ages. Node.js have some challenges in context of its use in the community as well as its adoption by the developers and organizations over the existing programming technologies. No doubt that Node.js have great benefits, it have also some challenges to the community. One such challenge is the ability of misuse of the widely used language by developers. One enthusiast have made a backdoor software using Node.js on Raspberry Zero. It can create backdoors in the target computer and their network even if the computer is password locked. Although there are solutions from such backdoors but some seems impractical like totally blocking the USB ports, and closing the web browser every time the user leaves the computer. And other options are not implemented by majority and mostly might not be aware of it like using secure layer on ones websites (https), and enabling secure flags on the cookies which common users might not know about it \hyperref[b47]{[45]}. ? There is a plus point but as understood from the survey conducted that the community feel it hard to learn JavaScript for Node.js ? Also the developers having knowledge of other programming languages have complications in adopting Node.js. Even the setting up of server for their programming work is not an obstacle. This is as concluded from the survey results. ? Another plus points were event-Driven Programming, Non-Blocking I/O, and asynchronous feature. But according the survey results is that the features like event-driven programming, Non-Blocking I/O, and Asynchronous processing is a hindrance.\par
As a result of the survey, a challenge comes to front is that most organizations are not ready to adopt the new technologies like Node.js over their existing ones like PHP, .Net, etc. Also there is a lack of market awareness which is causing a barrier to adopt Node.js for implementation. At a developer level, there is a challenge which is seen from the survey results that they are not feeling it easy to learn the database working and using of the JavaScript environment. And there also seems a lack of enough knowledge among the developers as from the survey results a reasonable respondents to the questions on the important features like event-driven, non-blocking I/O and asynchronous processing is making the decision about this.\par
The community can be taken to the Node.js by little efforts of trainings, and conducting workshops to introduce Node.js to new and existing programmers and explain to them the benefits of Node.js features like event-driven programming, non-blocking I/O, and asynchronous processing. The community need to be updated about the features of how Node.js is faster in performing network related tasks specially when it come to the challenge of handling large files over the network and handling multiple callbacks in the other languages like PHP, .NET, etc, causing the server to overload or require more memory. Also organization should be briefed about the benefits of hiring Full Stack Developers based on Node.js and how they will cut costs related to server bandwidths and developers hiring and speed of the applications built over Node.js\begin{figure}[htbp]
\noindent\textbf{1}\includegraphics[]{image-2.png}
\caption{\label{fig_0}Figure 1 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{2}\includegraphics[]{image-3.png}
\caption{\label{fig_1}Figure 2 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-4.png}
\caption{\label{fig_2}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{3}\includegraphics[]{image-5.png}
\caption{\label{fig_3}Figure 3 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{4}\includegraphics[]{image-6.png}
\caption{\label{fig_4}Figure 4 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{5}\includegraphics[]{image-7.png}
\caption{\label{fig_5}Figure 5 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{6}\includegraphics[]{image-8.png}
\caption{\label{fig_6}Figure 6 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{78}\includegraphics[]{image-9.png}
\caption{\label{fig_7}Figure 7 :Figure 8 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{9}\includegraphics[]{image-10.png}
\caption{\label{fig_8}Figure 9 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{10}\includegraphics[]{image-11.png}
\caption{\label{fig_9}Figure 10 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{11}\includegraphics[]{image-12.png}
\caption{\label{fig_10}Figure 11 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{12}\includegraphics[]{image-13.png}
\caption{\label{fig_11}Figure 12 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{13}\includegraphics[]{image-14.png}
\caption{\label{fig_12}Figure 13 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{7114}\includegraphics[]{image-15.png}
\caption{\label{fig_13}© 20 7 1 GlobalFigure 14 :}\end{figure}
  \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{}
\end{longtable} \par
 
\caption{\label{tab_0}}\end{figure}
 			\footnote{© 20 7 Global Journa ls Inc. (US) 1} 			\footnote{© 2017 Global Journals Inc. (US)} 			\footnote{Year 2017 ( ) E Node.js Challenges in Implementation} 		 		\backmatter  			  				\begin{bibitemlist}{1}
\bibitem[ Web Application Basics]{b2}\label{b2} 	 		\textit{},  	 	 		\textit{Web Application Basics}  		Pearson Higher Education.  	 
\bibitem[Firehose and Firehose]{b22}\label{b22} 	 		\textit{},  		 			" Firehose 		,  		 			Firehose 		.  		 	 	 (Firehose Project) 
\bibitem[Flickr et al. (2016)]{b27}\label{b27} 	 		\textit{},  		 			" Flickr 		,  		 			Yahoo Flickr 		,  		 			Company 		,  		 			Yahoo 		.  		 \url{https://www.flickr.com}  		18 November 2016.  	 
\bibitem[
			Youtube
		 ()]{b19}\label{b19} 	 		\textit{},  		 			Youtube 		.  		2012.  	 
\bibitem[Announces New Members and Ratified Technical Governance Node.js Foundation Advances Community Collaboration (2015)]{b34}\label{b34} 	 		‘Announces New Members and Ratified Technical Governance’.  		 \url{https://www.linuxfoundation.org/newsmedia/announcements/2015/06/nodejs-foundation-advancescommunity-collaboration-announcesnew}  	 	 		\textit{Node.js Foundation Advances Community Collaboration},  				June 2015. 18 November 2016. 15 p. 29.  	 	 (The Linux Foundation) 
\bibitem[are-the-actual-dis advantages-of-using-nodejs-ciibz8fd3017yj3xtxqz 1r9 hs (2016)]{b26}\label{b26} 	 		\textit{are-the-actual-dis advantages-of-using-nodejs-ciibz8fd3017yj3xtxqz 1r9 hs},  		 \url{https://hashnode.com/post/what-}  		June 2016.  	 
\bibitem[Available (2016)]{b33}\label{b33} 	 		 \url{http://www.javaworld.com/article/2855639/open-source-tools/qanda-why-io-js-decided-to-fork-node-js.html}  		\textit{Available},  				18 November 2016.  	 
\bibitem[Available (2016)]{b15}\label{b15} 	 		 \url{http://twistedmatrix.com/trac/}  		\textit{Available},  				June 2016. p. 30.  	 
\bibitem[Available (2016)]{b23}\label{b23} 	 		 \url{http://blog.thefirehoseproject.com/posts/nodejs-vs-rails/}  		\textit{Available},  				June 2016. p. 30.  	 
\bibitem[Available (2016)]{b1}\label{b1} 	 		 \url{http://www.magicwebsolutions.co.uk/blog/the-benefits-of-web-basedapplications.htm}  		\textit{Available},  				November 2016. p. 25.  	 
\bibitem[Available (2016)]{b5}\label{b5} 	 		 \url{http://blog.udacity.com/2014/12/front-end-vs-back-end-vs-full-stack-web-developers.html}  		\textit{Available},  				November 2016. p. 25.  	 
\bibitem[Li (2016)]{b38}\label{b38} 	 		\textit{Available: https://arenli. com/architecture-of-node-js-internal-codebase-57c d8376b71f\#.koh166uay},  		 			Li 		.  		June 2016. 18 November 2016.  	 	 (Architecture of Node.js' Internal Codebase) 
\bibitem[Bretz and Ihrig]{b36}\label{b36} 	 		 			A Bretz 		,  		 			C J Ihrig 		.  		\textit{Full Stack Javascript Development With Mean},  				 	 
\bibitem[Developers (2016)]{b13}\label{b13} 	 		\textit{Chrome V8 | Google Developers},  		 			G Developers 		.  		 \url{https://developers.google.com/v8/}  		May 2016. p. 27.  	 	 (Google) 
\bibitem[Chhetri ()]{b10}\label{b10} 	 		\textit{Culminating Projects in Computer Science and Information Technology},  		 			N Chhetri 		.  		2016. p. 5.  	 	 (A Comparative Analysis of Node.js (Server-Side JavaScript)) 
\bibitem[Jun and Doh]{b44}\label{b44} 	 		‘Design and Implementation of Web GIS Server Using Node.js’.  		 			[ S H Jun 		,  		 			K T Doh 		.  	 	 		\textit{Journal of Korea Spatial Information Society}  		21  (3)  p. .  	 
\bibitem[Microsoft (2016)]{b49}\label{b49} 	 		\textit{Developer resources},  		 			Microsoft 		.  		 \url{https://developer.microsoft.com/enus/windows/iot/samples/expressnodejs}  		10 December 2016.  	 	 (Microsoft) 
\bibitem[Wales (2014)]{b4}\label{b4} 	 		‘Front-End vs Back-End vs Full Stack Developers’.  		 			M Wales 		.  	 	 		\textit{Udacity}  		08 December 2014.  	 
\bibitem[GitHub Language Statistics (2016)]{b50}\label{b50} 	 		\textit{GitHub Language Statistics},  		 \url{https://github.com/emmanuel-keller/github-language-statistics}  		November 2016. 2016.  	 	 (GitHub. Accessed 10 December) 
\bibitem[Hashnode]{b25}\label{b25} 	 		\textit{Hashnode},  		 	 	 (Hashnode) 
\bibitem[Node (2016)]{b12}\label{b12} 	 		‘Home page of Node.js’.  		 			Node 		.  		 \url{https://nodejs.org/en/}  	 	 		\textit{Joyent}  		2016. May 2016. p. 1.  	 
\bibitem[How did Microsoft adopt Node.js as part of its developer stack? Quora (2016)]{b40}\label{b40} 	 		‘How did Microsoft adopt Node.js as part of its developer stack?’.  		 \url{https://www.quora.com/}  	 	 		\textit{Quora}  		18 November 2016.  	 	 (How-did-Microsoft-adopt-Node -js-as-part-of-its-developer-stack) 
\bibitem[How Loading Time Effects Your Bottom Line (2016)]{b20}\label{b20} 	 		\textit{How Loading Time Effects Your Bottom Line},  		 \url{https://blog.kissmetrics.com/loading-time/}  		November 2016. p. 25.  	 	 (Kissmetrics Blog) 
\bibitem[Long (2012)]{b6}\label{b6} 	 		\textit{I Don't Speak Your Language: Frontend vs. Backend," tree house},  		 			J Long 		.  		 \url{http://blog.teamtreehouse.com/i-dont-speak-your-language-frontend-vs-backend}  		25 September 2012. November 2016.  	 
\bibitem[MAGI: a Node.js web service for fast microRNA-Seq analysis in a GPU infrastructure BIOINFORMATICS APPLICATIONS NOTE (2014)]{b45}\label{b45} 	 		‘MAGI: a Node.js web service for fast microRNA-Seq analysis in a GPU infrastructure’.  	 	 		\textit{BIOINFORMATICS APPLICATIONS NOTE}  		6 June 2014. 30  (19)  p. .  	 
\bibitem[Fysarakis and Mylonakis ()]{b43}\label{b43} 	 		\textit{Node.DPWS -High performance \& scalable Web Services for the IoT},  		 			K Fysarakis 		,  		 			D Mylonakis 		.  		 \url{https://arxiv.org/ftp/arxiv/papers/1503/1503.01398.pdf}  		2016.  	 	 (Accessed 21 May) 
\bibitem[Harrell (2013)]{b39}\label{b39} 	 		‘Node.js at PayPal’.  		 			J Harrell 		.  	 	 		\textit{PayPal Engineering}  		22 November 2013.  	 
\bibitem[Node.js Foundation Combines Node.js and io.js Into Single Codebase in New Release Node.js]{b35}\label{b35} 	 		‘Node.js Foundation Combines Node.js and io.js Into Single Codebase in New Release’.  	 	 		\textit{Node.js}  		p. 14.  	 
\bibitem[Mccune ()]{b11}\label{b11} 	 		\textit{Node.js Paradigms and Benchmarks},  		 			R R Mccune 		.  		2011.  	 
\bibitem[Combarro]{b51}\label{b51} 	 		\textit{NodeOS: Light weight operating system using Node.js as userspace},  		 			. J L Combarro 		.  		 \url{https://github.com/nodeos/nodeos}  		 	 
\bibitem[Dahl]{b18}\label{b18} 	 		\textit{Original Node.js presentation},  		 			Ryan Dahl 		.  		 	 
\bibitem[Pandji and Raharjo ()]{b42}\label{b42} 	 		‘Performance and Scalability analysis of Node.js and PHP/Nginx Web Application’.  		 			Y Pandji 		,  		 			D 		,  		 			W S Raharjo 		.  	 	 		\textit{INFORMATIKA}  		2013. 9  (2)  p. .  	 
\bibitem[Dahl (2011)]{b31}\label{b31} 	 		\textit{Porting Node to Windows With Microsoft's Help," Node.js, 23},  		 			R Dahl 		.  		 \url{https://nodejs.org/en/blog/uncategorized/porting-node-to-windows-with-microsofts-help/}  		June 2011. 18 November 2016.  	 
\bibitem[Mccool et al. (2015)]{b48}\label{b48} 	 		\textit{Programming the Internet of Things Using Node.js and HTML 5},  		 			M Mccool 		,  		 			R Peri 		,  		 			R S John 		.  		June 23. 2015. O'Reilly Solid Conference.  	 
\bibitem[Mardan (2016)]{b7}\label{b7} 	 		\textit{Programming Weblog},  		 			A Mardan 		.  		 \url{http://webapplog.com/php-vs-node-js/}  		January 2016. p. 28.  	 	 (PHP vs. Node.js) 
\bibitem[
			P
		 (2014)]{b32}\label{b32} 	 		‘Q\&A: Why io.js decided to fork Node.js’.  		 			P 		.  	 	 		\textit{JAVAWORLD}  		04 December 2014.  	 
\bibitem[Nemeth (2016)]{b30}\label{b30} 	 		\textit{Rising Stack Engineering},  		 			G Nemeth 		.  		 \url{https://blog.risingstack.com/history-of-node-js/}  		October 2016. p. 27.  	 
\bibitem[Ornbo]{b37}\label{b37} 	 		\textit{Sams Teach Yourself Node.js in 24 Hours},  		 			G Ornbo 		.  		 	 
\bibitem[Kamkar (2016)]{b47}\label{b47} 	 		\textit{Samy Kamkar},  		 			S Kamkar 		.  		 \url{https://samy.pl/}  		November 2016. 10 December 2016.  	 
\bibitem[Mikowski and Powell]{b46}\label{b46} 	 		\textit{Single Page Web Applications, MANNING PUBLICATIONS. 44. npm},  		 			M S Mikowski 		,  		 			J C Powell 		.  		 	 	 (Official Website of npm) 
\bibitem[Buckler (2016)]{b21}\label{b21} 	 		\textit{Site Point Smack Down: PHP vs Node.js},  		 			C Buckler 		.  		 \url{http://www.sitepoint.com/sitepoint-smackdown-php-vs-node-js/}  		January 2016. p. 28.  	 	 (Site Point) 
\bibitem[The Apache Software Foundation (2016)]{b16}\label{b16} 	 		\textit{The Apache Software Foundation},  		 Acce- ssed 30.  		 \url{http://mina.apache.org/}  		June 2016.  	 	 (Apache MINA) 
\bibitem[The Apache Software Foundation (2016)]{b17}\label{b17} 	 		\textit{The Apache Software Foundation},  		 \url{http://mina.apache.org/async-web-project/index.html}  		June 2016. p. 30.  	 	 (Apache MINA) 
\bibitem[The benefits of web-based applications]{b0}\label{b0} 	 		\textit{The benefits of web-based applications},  		 	 	 (Online) 
\bibitem[Harris (2016)]{b28}\label{b28} 	 		‘The Birth of Node: Where Did it Come From? Creator Ryan Dahl Shares the History’.  		 			A Harris 		.  		 \url{http://siliconangle.com/blog/2013/04/01/the-birth-of-node-where-did-it-come-from-creator-ryan-dahl-shares-the-history/}  	 	 		\textit{silicon ANGLE}  		01 April 2016. 18 November 2016.  	 
\bibitem[tutorials point (2016)]{b9}\label{b9} 	 		 \url{https://www.tutorialspoint.com/nodejs/index.htm}  	 	 		\textit{tutorials point},  				November 2016. p. 25.  	 
\bibitem[Twisted Matrix Labs]{b14}\label{b14} 	 		\textit{Twisted Matrix Labs},  		 	 	 (Twisted Matrix Labs. Online) 
\bibitem[Bridge (2016)]{b3}\label{b3} 	 		\textit{What Types of Developers Are There?," tree house},  		 			F Bridge 		.  		 \url{http://blog.teamtreehouse.com/what-types-of-developer-are-there}  		June 2016. November 2016. 24 p. 25.  	 
\bibitem[Orsini (2013)]{b29}\label{b29} 	 		\textit{What You Need To Know About Node.js," read write},  		 			L Orsini 		.  		 \url{http://readwrite.com/2013/11/07/what-you-need-to-know-about-nodejs/}  		07 November 2013. 2016 November 2016.  	 
\bibitem[Kaplan-Moss and Quora (2016)]{b8}\label{b8} 	 		\textit{What-are-the-benefits-ofdeveloping-in-Node-js-versus-Python},  		 			J Kaplan-Moss 		,  		 			Quora 		.  		 \url{https://www.quora.com/}  		June 2016. p. 29.  	 
\bibitem[What-are-the-disadvantages-of-using-Node-js (2016)]{b24}\label{b24} 	 		\textit{What-are-the-disadvantages-of-using-Node-js},  		 \url{https://www.quora.com/}  		June 2016. p. 30.  	 	 (Quora) 
\bibitem[Dell (2012)]{b41}\label{b41} 	 		\textit{Why Walmart is using Node.js},  		 			J O Dell 		.  		 \url{http://venturebeat.com/2012/01/24/why-walmart-is-using-node-js/}  		24 January 2012. November 2016. p. 25.  	 	 (VentureBeat) 
\end{bibitemlist}
 			 		 	 
\end{document}
