Collaborative Doodles

I love to doodle. On the Caltrain between San Jose and San Francisco I listen to music and sketch out thoughts.

I'm currently taking a Programming Paradigms class at San Jose State. The class is centered around learning about the history and types of programming languages that exist, and why things are as they are.

We've learned about rise of Object Oriented programming, the importance of abstraction, encapsulation, and code efficiency. We've talked about functional programming, and implemented a sorting algorithm in Racket. It has been incredibly enlightening to learn to think in different ways about the same coding problems.

Back to doodling. For this class' term project, we split in to teams to teach the class about different programming languages. My team, nicknamed BruteForce, chose Ruby. Ruby is a popular, interpreted, modern multi-paridigm language that is extremely prevalent in server-side programming. On top of a paper on the language and presentation, we were tasked with creating a "small" example program. I took the challenge, and created a small Ruby on Rails app to share doodles collaboratively.

This was my first foray into the land of Rails; I enjoyed it immensely. Once I got past figuring out how everything worked together, it was a breeze getting everything working. Features I want to add are drawing deletion, drawing history view, and a drawing compilation page.

I gained experience using Foreman, Heroku, a ton of Gems, CoffeeScript, SCSS, jQuery, HTML canvas, and Postgres.

Check out the code on Github or give the live version a shot!

Drawing made with web board.