Monday, April 27, 2015

Tv Show Tracker

I watch a lot of tv shows and keeping track of which shows/seasons/episodes I have watched can be a daunting task if I don't stay on top of it. At any one time I am watching more than 1 show, but sometimes as much as 5 different shows in a given week. To help myself keep track of these things, I have been using a Google Doc Excel sheet which tracks my shows, seasons, and episodes I have been watching.

This is obviously not ideal because I have to do a lot of manual work and it's very archaic. So, for this reason, I have started tv-show-tracker. The idea behind this project is to make a more robust solution than all of my manual labor to keep my items in order. Right now this is in the very early stages, however the end goal could help me out quite a bit. I would eventually like to be able to:

  • Enter a show I would like to watch
  • Have it import all of the seasons and episodes
  • Keep track of which shows I'm currently watching and what episode I'm on
  • Allow multiple users to use this based on a login
Seeing that this site is an "easier" project (database layer, a couple of endpoints to hit, and a presentation layer) I decided to use a full Scala stack. Not only will this help me learn Scala better, but also get used to the open source projects Scala has because I'm choosing to use true Scala projects - not Java ones. The projects I've chosen to use on this site are:

As noted above, this is in very early stages of development, however that doesn't mean I am not making good progress. So far I have successfully wired up all of these projects and have the proof of concept working:
  • URL endpoints with request parameters - e.g."Shows"
  • Parse the request parameters and search the database
  • Return the "Show" and its "Seasons"
  • Render the results to the user
There's obviously a lot of work still to go, but now that I have a proof of concept working the rest should start to fall into place quicker - I just need to nail down the database schema and then work up the stack.

Friday, April 24, 2015

Scala Shell

I've recently been working on a new side project - scala-shell. As one might guess, this is a shell written in Scala. The idea behind this side project is to help further my Scala knowledge and dive into some more advanced topics such as:

  • Creating a GUI
  • Files and directories
  • Parsing user input
  • Processes
  • Packaging using sbt
I haven't had a lot of time to work on scala-shell, however I currently have the following items completed:
  • Creating a GUI
  • Packaging using sbt
  • Parsing user input
  • A few basic commands
    • exit
    • pwd
    • ls
  • Printing an error on invalid input

I realize that there's still a long ways to go to make this a "usable" shell, however I feel that it's coming along quite nicely and am happy with my current progress.