Technical Summary

Clark Data Science


A platform for offering data science services.

Dev Ops

In managing the app development project, I generated a timeline, milestones, goals, and desired feature lists. I then broke these down into coding units to develop. Each of these features passed through an iterative improvement process of coding and testing.

HTML, CSS, and PHP for UI/UX

The app is a web app and is viewed through HTML pages generated using PHP code. Styling is organized into three tiers of CSS files. There is a global theme for my entire website. There is an app specific theme that specifies the styling applicable to multiple pages within the app. Individual pages have a CSS file for any styling intended for that page. The PHP code is used to include the header and footer information and to perform various user authentication checks (see 'Cybersecurity' section below). The app is responsive to mobile and desktop screen widths. The navigation menu is intuitive and snappy.

SQL and Database Admin (Data Engineering / Architecture)

I used SQL extensively throughout the app development process to set up the database tables. The various pages in the app use prepared SQL statements to query the database to generate page content. The database admin tasks associated with designing, implementing and querying the database were certainly some of my favorite parts of the app development process.

The database contains tables for users, pages, and sessions.


Data security is an important component of any data management system. The login system authenticates users. User passwords are stored in encrypted form (not plaintext). Sessions are created and logged for each login. The connection between the database server and the client's device (mobile phone or computer) is encrypted via the HTTPS protocol so that data transer cannot be easily read while in transit. All database queries are performed via prepared SQL statements and all form inputs are sanitized before they are used to add robustness against SQL injection attacks. The navigation menu is generated based on the pages that the user's role is granted access to.

Last Updated: 2023-11-13