I want to take a few minutes to write about the way my skills have built over the course of working on SOTU-db and the iterative process of creating the project as an interaction between ideas and constraints.
Originally, my vision for SOTU-db was enormous - I wanted to basically make a Voyant Tools for State of the Union addresses. Don't ask me where I got the idea that I could single-handedly create the equivalent of a mature product built by a team with far more expertise than I had. Kind of like the goal "build a tic tac toe game," it sounded simple until I begin to create it and realize all of the special cases and interactions that I would need to include in the program.
After spending some time in the reality of the command line, I realized I was never going to hit my milestones spending so much time fine-tuning the syntax of long terminal commands. At this point I'm realizing that SQL is my solution for the "database itself" and PHP is my solution for receiving user inputs and generating the output to send back to the user. I have basically given myself part of an evening to learn both SQL and PHP and use them to make a functional web app!
That's been part of the interesting experience of being in this COMP-330 Software Engineering class. I totally see the value of doing UML diagrams (I wish that's something I'd actually learned in one of my CS classes at Loyola, instead of just always being referred to) and figuring out structure before you start coding. I just don't have the understanding of how these languages work in order to make those diagrams, and still rely on a lot of trial and error to get things working. I'll consider it a big success when I get to the point where I can diagram out a program's classes and functions before starting and have confidence that I can mostly implement what I've diagrammed in code.
I received an email earlier today from my local pizza-vending establishment advising me that today is calzone day, so now seems like a good time to head home, order up a calzone, and get to learnin' PHP!