JavaScript (JS or js) is a dynamic computer programming language [4]. It is added to an HTML page and used by the web browser to implement client-side (in the user’s browser) interaction, control the browser, communicate asynchronously, and alter the HTML document content that is displayed. It is also used in server-side network programming with frameworks such as Node.js. In figure 3, the example shows how to embed scripts written in the JS language which affect the behavior of HTML web pages.


Web browsers can also use Cascading Style Sheets (CSS) to define the look and layout of the HTML page. Think of CSS as the artist of web development; changing the color of elements, the font sizes, and the layout. The W3C, maintainer of both the HTML and the CSS standards, encourages the use of CSS [5]. CSS is designed primarily to enable the separation of document content from document presentation, including elements such as the layout, colors, and fonts [6]. This separation can improve content accessibility, provide more

flexibility and control in the specification of presentation characteristics, enable multiple HTML pages to share formatting by specifying the relevant CSS in a separate .css file, improve team dynamics by allowing separation of responsibilities, reduce complexity and repetition by reuse of common presentation formats, and reduce maintenance change impacts. Extending the example from figure 3, the use of CSS is shown in figure 4.

The position presented in this paper is a novel approach for web development called HANDS. This approach is a hybrid, leveraging the simplicity of plain old HTML pages, the AJAX injection of HTML from SPA frameworks, and the server-side processing found in the Node.js framework. HANDS provides a design pattern that is easily picked up by students while providing the foundation for enterprise applications. HANDS allows for the addition of client or server side packages to extend the foundation. While extensibility is enabled, the paper takes a position that all packages used should be well understood.