Rubber Plate was a site I created in order to learn more about developing a web application backend. I created it starting summer of 2012 and worked on it into 2013. Development dropped off because I didn’t have enough time to devote to really cleaning it up and marketing it.
The initial plan was to create a site that people could use to log their workouts, track their progress, and maybe receive automated workout plans if things got that advanced.
The site was created with PHP for several reasons. I knew HTML/CSS/JS, so I liked that I could get my feet wet with PHP by just dropping it into HTML to sort of fill in the blanks. I also knew that it was the language used to create WordPress and it had been around for a long time, so it seemed like a pretty decent choice.
Development of the site involved a lot of trial & error. I had been working professionally with Python for about a year so I was comfortable with the coding side of it, but a lot of the web/sysadmin side was all new to me. Handling accounts/sessions, designing the database, and dealing with the interaction between models, views, and controllers was uncharted territory. I didn’t use a framework of any sort, so I was able to learn a great deal about how everything interacts and fits together. That also meant, however, that I spent a great deal more time working on small annoyances that a framework would have taken care of for me.
Once the site was functional on a basic level, a friend of mine who owns a gym began providing more of a direction for development. For example, he wanted to be able to use the site to pre-enter each day’s workout so members could easily just fill in the results once they had completed the workout. For a couple weeks, there were ten to twenty people using the site to log their workouts.
The site fell by the wayside in early 2013 for a few reasons. For one, I’m not a good visual designer. What made sense to me layout/functionality-wise didn’t always make sense to the end user. It was a side-project for me, so I wasn’t able to push updates in a timely-enough manner to correct these issues. Additionally, I was feeling quite constricted by my initial design. Integrating new features in with the existing database design was a particular struggle because every time I made a change, I had to update my SQL statements and alter the tables manually. I had since done more research into other web frameworks, and I strongly considered re-writing the site in Django (which I’ve since used on several other sites), but in the end I decided it wasn’t worth the effort. There were other sites out there that did what mine did in a much more mature fashion (such as Beyond the Whiteboard or My Fitness Pal). I had learned quite a bit about web application development so the project had served its purpose well.