HTML Architecture, a Novel Development System (HANDS)

Posted on by : admin Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

In this paper, a very compelling proposition is presented, a novel approach for web development that is a hybrid of Single Page Applications (SPA) and server side applications. The proposed architecture lowers the entry to web development by providing a simplistic approach for development. The focus is on HTML, JavaScript, Cascading Style Sheets, and Node.js. The architecture provides all the components required for students to start developing web applications and web services. The HTML Architecture, a Novel Development System (HANDS) is a hybrid approach leveraging the simplicity of plain old HTML pages, the AJAX injection of HTML from SPA frameworks, and the serverside processing found in the Node.js framework. An open source starter kit and examples are provided.

Web development has become one of the most in-demand skills. To meet this need, the addition and retention of students in this field is critical. Web development has a steep learning curve and many obstacles. One obstacle is getting students developing HyperText Markup Language (HTML), JavaScript (JS), and Cascading Style Sheets (CSS) applications that include server side processing. The typical approach to web development training includes a brief introduction to HTML.

Very quickly courses introduce a framework that hides the complexities of front-end and backend (server side) development. Often this is to give students confidence that they can create complex web applications. The downfall of this approach, students learn the details of the framework and not the in-depth details of the foundational elements of web applications. As shown in figure 1, the primitives of HANDS include HTML, JS, CSS, and Node.js. This is compounded when the student enters into a corporate software development position.

The majority of companies have a well-established framework (open source or propriety) for development. This has formed a void in the in- depth understanding of the fundamentals. Often, the simple request and response concept is not understood. This is especially apparent in software development shops that have rich libraries that wrap web functionality and where the development is strictly divided between client-side and serverside resources.

After developing HANDS, the question was asked: If the primitive, foundational elements can deliver any type of web application, why introduce libraries that hide functionality and increase complexity? The position of this paper is to build an architecture where the focus is the HTML page while only introducing libraries after understanding the concepts delivered in such libraries.

With this approach, when issues occur later in the development phase, the developers have the foundation to find and understand the root problems and provide solutions. In this paper, the focus is on HTML, CSS, and JS. A basic website is created and studied. An understanding of the basic elements are required before moving on. The goal is to propose HANDS as an approach to learning web development and to provide a foundation for enterprise development.