MixMaster @ PennApps 2012: Simplicity

January 17, 2012 :: 11:06 pm

Scan. Mix. Drink. Repeat.

This year I entered PennApps again together with my good friends Jinyan Cao, Connie Ho and Cynthia Mai. The app that we developed is called MixMaster.

What is MixMaster?

MixMaster is a mobile application available for Windows Phone 7.5, iPhone and Android. It helps you find recipes for drinks that you can make out of available ingreidientes that you have at home.

How it works

MixMaster is very simple to use. First, scan the barcodes of the drinks that you have available. After that is done, the application will give you back the recipes for the drinks that best match what you have available. It's that simple!

The Database

Using Drinkmixer.com and regular expressions, we modeled an API that gives access to over 12 000 available recipes. With the help of the Bing API we linked each recipe to a unique picture that identifies the drink (we tried to be as much accurate as possible).

The API

If you wish to use our API, you can access it at this address:

http://www.pennquiz.com/barmaster/index.php?key=key1,key2,key3...keyN

Every key should be an ingredient such as "vodka", "rum", "organge juice", etc. The key words should be comma separated without extra spaces. Ingredients can have spaces though. Valid examples are:

http://www.pennquiz.com/barmaster/index.php?key=gin,tonic
http://www.pennquiz.com/barmaster/index.php?key=orange juice,vodka,rum

The response is a JSON object that is easy to parse.

The Technologies

The Windows Phone App is developed in C# with the help of Microsoft Visual Studio 2010 and Microsoft Blend

The iPhone app is developed in Objective-C

The Android app is developed in Java with the help of Eclipse and the Android SDK

The API is developed with Java, PHP, XML, and SQL

Where's George

November 20, 2011 :: 9:40 pm

In the beginning of the year we talked in class (MKSE 112) about an experiment in which dollar bills are marked and then put into circulation. I thought this idea was cool even though I never actually encountered any of those bills. Until today! I accidentally received one of those marked bills as change from a guy working in my dorm’s shop.

Obverse side:

Obverseside
“Track me at www.wheresgeorge.com”, “Track this bill www.wheresgeorge.com

Reverse side:

Reverseside

“Make a nerd happy | Enter this bill at | www.wheresgeorge.com"

The experiment is called Where’s George. You can find more information about it here: wiki. My bill is numbered #55,661 but unfortunately it hasn’t traveled much distance – it was put in circulation on March 26th 2011 in Sicklerville, NJ and arrived to my place on November 20th 2011. This is 19 miles in ~ 240 days.

If you guys like this idea, you can mark one of your own bills and join the experiment!

Here are some screenshots:

(download)

CakePHP 2.0 Facebook Plugin

November 6, 2011 :: 7:30 am

Although many people don't like PHP for some odd reason (even though it can practically do anything for you because of its huge library), I still stick with this language. There is something beautiful in it that has made me keep using it for the past 6 years. In a chart I saw recently PHP was claimed to be the language that people have least troubles with, so thumbs up for PHP!

For a couple of months now, I have been studying the CakePHP platform and I am particularly impressed with its new 2.0 version. It now behaves more smoothly and provides very consistent functionality. Read more about it here: http://book.cakephp.org/2.0/en/

One thing that was missing up to now was Facebook integration for CakePHP 2.0. That is what made me download the source code of the only existing Facebook plugin for CakePHP from Nick Baker's popular technology blog that supported version 1.3.

After spending significant time converting all files' namespaces to the new conventions and updating some of the functions, so that they comply with the new Facebook policy, I am happy to offer the updated Facebook plugin that now supports CakePHP 2.0! This is a collaborative product between Nick Baker and me, so you can clone the source code from either of the repositories.

I am planning to work more on the plugin, so that I make sure everything works without crashing. Although Nick and me don't know each other personally, we both strive to offer products of best quality, so keep an eye on our blogs for updates regarding this plugin!

Hello World!

November 6, 2011 :: 4:21 am

"Hello World!" This is how it all starts!

Actually, this is how it has all always started. Even this time. Because we all comply with rules and this is not an exception. You know - in our world it all has to follow some patterns: to be nicely indented, well laid out, user-friendly and presented in the most beautiful way. Otherwise, you lose points and you don't want that to happen.

I don't know why I waited for so long to create my own blog. The truth is that I resisted to do that for many years. Maybe it was because I felt that I shared enough in conversations with friends and on the infamous facebook wall. But still, there are times when something pops up into your mind and you think its worth sharing. Those moments could be moments of enlightment or could just be wandering thoughts who randomly bumped you at 4am and you realize you can't really share them later (after you sleep for a few hours) because they will all be gone.

Blogging is a new universe for me, so hopefully, I will have a good journey around here. I don't know how long it will take but I know one thing for sure - it starts today. In this very minute!

Hello World!