Contents
Applied User Data Collection and Analysis Using JavaScript and PHP
Kyle Goslin
TU Dublin
Dublin, Ireland
Markus Hofmann
TU Dublin
Dublin, Ireland
First edition published 2021
by CRC Press
6000 Broken Sound Parkway NW, Suite 300, Boca Raton, FL 33487-2742
and by CRC Press
2 Park Square, Milton Park, Abingdon, Oxon, OX14 4RN
2021 Taylor & Francis Group, LLC
CRC Press is an imprint of Taylor & Francis Group, LLC
The right of Kyle Goslin and Markus Hofmann to be identified as authors of this work has been asserted by them in accordance with sections 77 and 78 of the Copyright, Designs and Patents Act 1988.
Responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged, please write and let us know so we may rectify in any future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers.
For permission to photocopy or use material electronically from this work, access
Trademark notice: Product or corporate names may be trademarks or registered trademarks and are used only for identification and explanation without intent to infringe.
ISBN: 978-0-367-75682-6 (hbk)
ISBN: 978-0-367-75680-2 (pbk)
ISBN: 978-1-003-16354-1 (ebk)
Typeset in Computer Modern font by KnowledgeWorks Global Ltd.
I would like to thank Amanda for her continued support allowing me to hide away in my office to write and review no matter the weather inside or outside the house. Your opinions and sentiment mean more to me than any other. I would also like to thank my parents, Ted and Claire, for their unwavering support of all things academic. The pursuit of knowledge and taking risks were always encouraged, as the reward was always better once failure had, many times, been achieved. I would also like to thank my brother, Darragh, for being the ears of patience when frustration or writers block dawned.
I would also like to thank Daniel McSweeney, head of the Department of Informatics at TU Dublin Blanchardstown campus, for his support and encouragement. Ideas were always met with guidance and reflection. I cannot forget my co-workers in Peter Alexander, Tara Cambell, Jane Hanratty, and all others in office A57 for their ongoing support and encouragement. The experience is always better when shared. I would also like to thank Philip Kavanagh for his technical review of this book.
This book was the combination of many ideas and concepts derived from teaching at TU Dublin, Blanchardstown campus. I would like to thank my students, who are the lifeblood of academia.
Kyle Goslin
For Amanda and Noah.
For when distraction was needed, and for when it was not. Kyle
In memory of Johann Trautwein, who, as an early adopter of computing, not only paved my path to the world of informatics but also instilled many other values I cherish. A true gentleman - missed but never forgotten by all who knew him. Markus
The driving force behind any web application is the users of the application and the developers creating the application. During development, however, the interests and needs of the user can often fall behind, in favor of what the developer thinks they need. This development style often leads to complicated user interfaces, poor design choices, and content overload.
To mitigate against this, the daily interaction a user can have with an application and their overall opinion should be considered paramount during development. This book aims to provide the tools and knowledge required for the collection and analysis of data, irrespective of the format or source.
This book places a dividing line between the types of data that can be collected from users. Active data is defined as data that is collected by providing the user with the means to enter their opinion, and sentiment, toward a feature or topic. These solutions can often be seen on websites in the form of rating systems, feedback boxes, and user surveys. In contrast to this, passive data is defined as the data that is collected in the background without any direct user interactions. This data takes the form of browser fingerprinting, IP addresses, geolocation data, time spent on pages, and the location of the mouse during interactions with an application.
With the advent of cloud storage solutions, more data is being retained than before. Sales data, transaction logs, and user surveys all become sources for data analysis. Data can come from a number of different sources, some of which may have existed before an application has been developed. Emphasis is placed on collecting this data and placing it in a usable format for analysis.
After this data has been collected, the analysis process can begin. For each different data typee.g., numeric or textstatistics and visualizations can be generated. This book provides the foundations for creating meaningful insights and visualizations from the data that are relevant to both business and developer needs.
As with any new technologies, a common issue with any new solution is integrating it into an existing system or implementation. To aid development, each of the examples in this book has been developed in isolation to allow for easy integration. An emphasis is placed on the diversity of technologies to provide a well-rounded understanding of what is available.
The complete development life-cycle is described in this book, outlining how data can be collected, analyzed, and reported to the key stakeholders in a project.
Understanding a users needs and requirements is one of the main driving forces for any business. Collected data provides insights into how users feel about a given feature or topic and how they work on a day to day basis. This data can be gathered directly from users by providing simple questions and allowing the user to select an option from a predefined list, or to enter their own text-based responses.
Although asking a user for their opinion is possible, other methods can be used to gather data. Data can be collected indirectly through a web application by monitoring the interactions and behaviors a user has with it. The collected data can be processed to generate meaningful statistics and visualizations, providing both overviews and a deep-dive analysis of user interests and needs.
Each different data type, such as numerical data and text data, comes with methods of identifying importance and relevance. Both quantitative and qualitative analysis approaches can be used to extract these insights. In this book, we explore the different methods available for data collection, extraction, and analysis. This book aims to describe the many different approaches that can be taken with the aim to capture as much data as possible for analysis.
To provide a complete solution, the process of developing and deploying the developed solutions on a cloud-based server is explored with additional features such as report generation and delivery. An emphasis in this book is placed on the diversity of technologies exposing you to many different alternatives for data collection and analysis, providing you with the tools needed to develop a well-rounded solution.