2. Software:

2.1. Relevant Software:


2.2. Projects:

Daniel's software education comes from Cleveland State University, Cuyahoga Community College, the Khan Academy, the Code Academy, and the Microsoft Virtual Academy. He has experience with embedded, desktop, and web development. His apps were used mainly for automated quoting, billing, medical coding, scheduling, and grading. A series of examples are shown below, from newest to oldest.

2.2.1. Full-Stack Development With Single Page Application(SPA) Architecture:

This section discusses apps Daniel built with the MEVN stack(Mongo-Express-Vue-Node). The Axios library was also used for API calls and the Vuetify library for UI material components. The database was hosted on Mongo Atlas(an Azure-based cloud service), whereas the application was hosted on Heroku. Daniel created the Apollo app below to automate a full-stack class he teaches at Case Western Reserve University. Apollo is similar to his Oswald app, but it is designed for computer science classes specifically as opposed to machine design courses. It does not have the ability to grade CAD drawings, but has a coding editor that color codes a series of popular languages and allows students to submit code easily. It also has an interface that makes it easier to grade use cases.
Daniel created the application below called OMA, as an educational tool for full-stack development. This app was never sold or commericalized but it was essentially a scheduler for surgery centers. It included a patient tracking dashboard and a digitized form used at surgery centers. OMA was designed to contain the barebone elements of every full-stack application such as a login, authentication, dashboard, and navigation buttons.
OMA screenshot
The Factuur app below was used to generate invoices for a doctor that traditionally did this by hand. The app saved the doctor about 100hrs per year.
Factuur screenshot
The k&a app below was used to generate invoices for an electrical engineering company that verified electrical schematics for skyscrapers. As opposed to sending e-mails back and forth to get quotes, this app allowed the user to login, select options, and generate a .pdf of the quote and all the disclaimers. The app would also send an email to archive all quotations.
K&A quoting screenshot

2.2.2. Full-Stack Development With Web Forms Architecture:

2.2.2.1. Oswald Version 2.0:

This section discusses apps built with web forms, the SPA framework predecessor. Oswald was Daniel's largest software project to date, and was created to run a class fully autonomously, meaning the instructor only had to lecture, and the app would take care of everything else, such as book-keeping, grading, and scheduling. Oswald was often rated better than Blackboard and Canvas because it had the ability to display grades in real-time, and provide data analytics to show students how they performed compared to other students. Another niche was that Oswald had the ability to grade CAD drawings, which is not something easily done or found online. Oswald 2.0 had 4X more functionality than version 1.0 and reduced administrative hours from 15% to 85%. It did this through the following improvements:
  • Automatically grade drawings, multiple-choice, data, and files.
  • Automatically update class grade, class average, class curve, and rank on a master grade sheet.
  • Automatically grade group contributions by using a voting system.
  • Improve student evaluation by randomly selecting questions for assignments and exams.
  • Improve class instructions by using text-to-speech, smarter validators, and targeted modals.
Through this project, Daniel learned about the full cycle of software development. Not only did Daniel understand the operations of running a class, but he also developed the application to run it autonomously. Some of Daniel's biggest lessons where about concurrency control, dateTime accuracy, database data types, server-client models, and designing apps to be intuitive.

In 2017, Daniel wrote an IEEE-format paper.pdf and in 2020 he wrote an official business proposal.pdf.
Oswald screenshot

2.2.2.2. Oswald Version 1.0:

The 1st version of Oswald only automated about 15% of the administrative tasks of running a class, and only met the following use cases:
  • Error-proofing submission information by controlling email addresses, studentId#s, and names.
  • Error-proofing submission files by using format/size validators and notifying the user accordingly.
  • Controlling the number of submissions delivered by the student.
  • Automatically grading late penalties on a per student basis.
  • Automatically grouping students into groups of three.
Version 1.0 ran for 2 semesters, and was succeeded by version 2.0, which came out in summer 2018.
i53StudentDatabase

2.2.3. Desktop Command-Line Utility / GUI Development:

The following selected applications were mainly created for various computer science classes at CSU and were coded using C# or Java. The GUIs either use a canvas or a series of panes with control items attached.



2.2.4. Frontend Application Web Development:

The following selected applications were created for the FCC Frontend Web Development Certificate and were mainly coded using JavaScript.


2.2.5. Data Visualization Web Development:

The following selected applications were created for the FCC Data Visualization Web Development Certificate and were mainly coded using the JavaScript library D3.


2.2.6. Frontend API Extraction Web Development:

The following selected applications were created for the FCC Frontend Development Certificate and were mainly coded using JSON and AJAX to extract the data from the APIs.


2.2.7. Frontend Webpage Development:

The following pages were created for the FCC Frontend Development Certificate and were mainly coded using HTML and CSS.


2.2.8. Embedded Development:

The following application was created for Daniel's Mechatronics master's degree project. It listens to communication and motor settings from the user, sends it to the apparatus, runs the motor, and acquisitions the data to a notepad file. The GUI interface was built using C# and the microcontroller interface was built using the C/C++ based arduino IDE. For more information, the report can be found under the Mechatronics tab of this website under section 3.2.1.
2.2.9. Systems Programming Development:

Daniel also has experience in systems development using Assembly and C/C++ using the Linux/Ubuntu operating system. He has experience programming data structures, algorithms, reading/writing files, pointers, shells, threads, memory allocation(per fit type), and process management. These projects mainly come from some of the computer science courses he took such as CIS340-Systems Programming, CIS335-Language Processors, and CIS580-Computer Architecture. Here are a few selected projects.


i66FileIcon         i66FileIcon         i66FileIcon         i66FileIcon         i66FileIcon