InstaUberSnapagram-Viking Code School Week 4

Aug 1, 2016

So this past week of Viking Code School we were finally introduced to Ruby on Rails. While Rails won’t be the only framework we learn during the course, it is the one we will spend the most time on. The meat and potatoes of the course, if you will. As you can imagine, I’ve been really excited to finally get my hands on it. I believe this is the point where we truly begin making the transition from toy apps to real ones that actually serve some sort of purpose. My reasons for believing this are two-fold. One, we have just begun to touch on databases, which are crucial to any truly comprehensive application.

The second is due to the project we completed this past week. We had a Hackathon! It was the first project in which we were given mostly free reign to do what we wanted, so long as it was a Rails app and utilized an API. After some consideration, I decided to base mine around the Youtube API. Although I have a Spotify account, I often find myself listening to music on Youtube and when I do, I like to sort a channel’s videos by “Most Viewed.” Unfortunately, when I do this it is necessary for me to manually navigate to the next video in the list lest I find myself in the weird part of Youtube again. I found myself cursing this anti-functionality the morning of the Hackathon and immediately knew what I would be working on that day.

I wouldn’t describe it as all that straightforward, but at the end of the day, I had a deployed, working application on Heroku capable of taking a provided channel URL and automatically generating a playlist out of it’s ten most popular videos. Additionally, the playlist is generated under the particular user’s youtube profile, that is whoever happens to be using it. The OAuth required to sign in on behalf of the user was the most difficult feature to implement and didn’t leave me with much time to devote to UX, resulting in a fairly barebones application. But UX is trivial to implement, and so I was fairly pleased with the final product. From idea to implementation in one day, not too bad!

It’s because of this Hackathon that I get the impression we will begin focusing our efforts towards full-fledged applications soon. And so that’s got me thinking about some potential projects I might like to make! The rest of this post will be dedicated to detailing some ideas I’ve had.

Mealer

So the first idea I had is something like a “meal scheduler.” I imagine it as being a solution to the problem of having to write out grocery lists or worse, just guessing once you get to the store. Basically a user is allowed to schedule meals in advance using some sort of calendar. The user also defines these meals in advance in terms of the ingredients needed to make them. Then as the user eats their scheduled meals throughout the week, their stock of food is kept track of automatically by the application. As their pantry begins to become sparse, the application could potentially notify them and automatically generate a list of food to buy based off the meals the user has specified they would like to have. I could even see it being integrated with Amazon’s grocery delivery service, AmazonFresh. Essentially streamline the whole operation of deciding what to eat, what to buy, and when to buy it. At risk of overcomplicating things too much up front, it might even make sense to keep track of calories and food intake for nutritional and dietary purposes. With the popularity of nutrition and fitness on the rise as well as Amazon’s popularity, I could see a great deal of utility in such an application if executed properly.

FitMe

So my next idea is a type of fitness application. As I noted earlier, fitness is currently booming in America. I’ve taken part in the hype to some extent myself, and so I’ve got a pretty good idea of the solutions out there. I’ve noticed that there is a ton of misinformation about nutrition circulated constantly. Chocolate is the sole reason for obesity in America one day and the solution to it the next. If you happen to be really serious about the whole deal you might find some sane advice if you’re lucky (reddit’s /r/fitness is a great resource.) But not everyone’s a redditor so I see an opportunity to create a custom solution.

At the end of the day, nutrition is an equation. That isn’t to say that it’s simple by any stretch of the imagination. On the contrary, there is still much to be understood in the field and it is the focus of many research dollars currently. But there has also been much progress and among that progress it has been generally agreed upon that the more food you eat, the larger you become. More calories = more size. If your goal is to gain muscle, you need to eat more, and vice versa. The research backs this conclusion up unequivocally, but one would be surprised at the level of disagreement on this point by the general population. Essentially there is a knowledge gap, an education opportunity.

I imagine the application as a general purpose solution to dietary and fitness goals. The user would be required to fill in their relevant attributes on sign up, like gender, weight, height, and activity level. Then the user would detail their goals, for instance if they would like to lose weight. Finally the application would generate custom advice based on the provided information and would generally do its best to keep the user on track. Obviously there are already apps that do this to some extent, like MyFitnessPal but I don’t think they fill quite the same use case. MFP tends to keep track of information but it doesn’t really supply advice. I’m not really sure why, maybe there are some interesting legal implications. But the point remains that there are a lot of people interested in fitness and no particularly good solutions.

NoHTML

So I imagine this application as being a solution to website creation for the non-tech savvy. Basically it would be a dead simple, drag and drop sort of application for creating web pages. It could include support for site navigation, picture and information presentation, and nice modern looking layouts. It wouldn’t be useful for dynamic applications of course, but should target small businesses that are interested in staking out their presence on the web.

Has Wordpress come to mind yet? To be honest I’m not totally sure that there’s any room for another WYSIWYG editor, but I have a couple reasons for pressing on. One is simply that I think this would make for a very interesting project! The other is that I think Wordpress has the potential to be overly complicated. I think it gives users too many options up front instead of providing guidance when it is needed.

Conclusion

Don’t worry, I haven’t fooled myself into believing I have the next InstaUberSnapagram on my hands. I do think these applications would make for very interesting projects though and if they actually provide some value to other people than even better!