I finally hashed out the design of my database. I had to read and reread examples of the database normal forms 1NF to 3NF to try to make sense of what my data should look like, and then I sketched out all the tables.
I fired up my SQL Pro for Mac and by right-clicking on everything, figured out how to add and edit tables. Even as I added new tables, my mind whirred and clicked, chewing over the normal forms, making suggestions for changes as I typed.
Even now after I’ve captured everything, my head continues to mull, making more changes. This is exhausting, and it is only step 1 of the development! But it feels a little like progress, and that eggs me on to the next step, once I’ve figured it out.
For now, I’ll continue and add data to the database. I’ll have to Google all over for the information, because although it is freely available, it doesn’t seem well aggregated, annoyingly, and the information is probably outdated.
I’ll also need to look into security for the database and server, to keep the hackers off the site. I hope this is too small a target, but I realise this is an unrealistic views. The hackers simply programme their tools to test every doorknob to see whether it’s locked, and if not, how far they can get in before they’re kicked out.
Internet security is not my domain at all, and I’m not at all looking forward to tackling the subject, but it has to be done at some point; probably best while I’m still putting everything in place.
Next I’ll attempt to create SQL queries to access, sort and filter all the data, and then an API (application programming interface) to allow remote applications to request information from or add it to the database. The API will be done on the server, and I’m kind of looking forward to that as I’ve never worked on server code before.
After the API development, I can either develop the mobile application, or the website for client access to the database. As I know mobile development, the mobile app will probably be the easiest of this whole process, whereas everything else has a learning curve.
I’ve done snippets of almost everything somewhere along my professional life, but all this means is I have just enough experience to do dangerous things, because my knowledge is outdated. I expect the going to get hard.
But the database is almost done, and I feel slightly optimistic about the rest.