Wednesday, September 30, 2020
Week 4: Form design
Thursday, September 24, 2020
Week 3: Prototype application
After reviewing some of the form functionality last week, I have been messing around with making a data entry application on the side. I am figuring out how this will work with an air gapped network for now, but I have decided to build the prototype layout first and work on that a bit later. I have plenty of other features I would want to implement that make the data entry experience much easier for the user, but I don't want to give out too much information yet.
Building the skeleton of the application |
Using Flutter makes this build very intuitive and easy from my end, and will help me stylize the forms to make it visually appealing for the users. When ready, deploying to Android is no problem, but publishing an application for iOS requires a developer license plus the application is made available to the public. Access control would be needed here but that is something for another time.
Thursday, September 17, 2020
Week 2: Database and form progress
This week I was able to work on a new form for data entry to the bat database. The existing PDF had issues with tab order, which also controls the order of parsed elements placed into the array. PDF designing applications will arrange tab order based on the first element being the lowest index, with the most recent being the highest index. With tab order fixed, it is easier to navigate using the tab key and also simplifies the code for parsing documents. The only requirements to fill out the form are Adobe Acrobat which is present on both Android and iOS.
For now this method is a temporary solution. There are easier methods of filling out forms without the need to manually fill each entry and reduce the risk for errors or other issues. I currently have the submission page set to that it rejects uploads that do not have the appropriate forms filled, prompts users to check their form data, and try again.
The existing data from previous surveys has been uploaded to the database and resides in a central table. I am working out a system where submissions are added to the table and flagged for review, so that acceptable entries can be verified.
Tuesday, September 8, 2020
Week 1: Ozone update, BATMON, and more
Database table entries created from a PDF parsing script! |
So far in this first week, I was able to pick up where I left off last semester with the BATMON project (PHP, HTML, MySQL). I am really excited to have this going again! I took a slightly different approach to uploading data and implemented some measures to prevent injection attacks (server will not be public but always good practice). After some reworking of the structure I was able to get the system generating new database tables for each upload, which is the foundation of what needs to be done! Next step will be to add data to an existing table that holds all previous survey records. Retaining uploaded documents, storing audio files, features for registered users, and some input validation are next on the to do list. I need to thoroughly test things before adding more complexity so working in small steps is the best approach right now. So far so good!