March 12th, 2019
Mr. Plow is a web-application that my two other classmates and I worked on as the final project at Bitmaker. Since we live in Canada, we thought that we could suggest a solution for full-time workers having no extra time to shovel their driveway. Therefore, Mr. Plow can connect shovelers and homeowners with ease, while saving their time and earning extra cash through shoveling snow. We built this application with the mindset of separating the Ruby back-end and React front-end so that it would be easier one day to migrate it into becoming a mobile application. Mr. Plow was also inspired from the original Mr. Plow, Homer Simpsons, where in one episode he created his own home shoveling service. With this in mind we came up with a schema where this application would act similar to Uber, and to utilize several API’s; Open Weather Map, Leaflet, and Mapquest Geolocation.
The data structure of this application was very fun to build; it involved constant role playing, questioning, and incorrectly spelling shoveler within the two weeks we had to build the application. To summarize, the data structure had one user model which had a relationship to both a shoveler and homeowner model. Both of these models then had a one-to-many relationship with the job model as both users can request or accept jobs. We also constructed a seperate weather model where the back-end could ping the Open Weather Map API depending on the time of day.
With the data structures finished, we utilized a trello board to ensure that each individual knew what was needed to be done. We also adopted a daily sprint plan to ensure all concerns were taken care of by having a short meeting at the start and end of the day. The website posed one major challenge, which was that we wanted to build it in React and this wasn’t part of the Bitmaker curriculum. Additionally, the application was built using the Model, View, Controller pattern, and Sorcery for authentication. The two weeks flew by, and before we knew it we had a viable product with constant weather updates, homeowners, shovelers, and the ability for either of those two users to create and accept job postings, respectively.