Tuesday, September 21, 2010

Lemonade Stand - Money Counting

Unlike most computer scientists I actually really like graphics (although I am definitely not and artist) so one of the things I want to work on is not only improving the GUI for Lemonade Stand but also the user experience.

I should probably explain my background a little bit to give an idea of why I am interested in doing stuff with user experience. I already said in my introduction post that I am a 4th year Information Technology and Psychology with a minor in Computer Science. I switched into those majors from Computer Engineering so I do have some (but very limited) experience with hardware. I am also involved in eye-tracking research in the Multidisciplinary Visual Research Lab (MVRL) here at RIT. I have yet to decide what exactly I want to do as a career but I am hoping to combine my technical/coding skills with psychology to work as sort of a go-between for clients and programmers.

Anyway, back to Lemonade Stand... One of the things I want to work on is possibly changing the background image and another is adding a feature to help with calculation of money.

This is an image that I made in Photoshop of how I would like a user to be able to do money calculations. Basically it is an interactive form where the user can input numbers (in the gray boxes) signifying the amounts of each of the coins and they would get a total from those coins (0.10 & 1.25 in the example). At the bottom it would give a total number of coins and also a total dollar amount. For the dollar amount I would like it to remain black if the total is under the desired count, green if the total is the correct amount, and red if the total is over the amount. The idea behind this is that it would be more user friendly and a player could keep trying until they get the correct amount of money. I think this would better promote learning than simply loosing the money if they get the total incorrect.

My image also includes a total number of coins used to make the amount. I think it would be cool as a more advanced feature to have stipulations on the number of coins used such as fewest coins or even using a specific number such as 10. I think this would be useful because it would allow for more complicated problem solving and also would prevent the player from selecting all pennies to get the total.

Again, as I said previously, I have never programmed in Python and am new to the OLPC and open source community in general so I am not sure how feasible my idea are. Also, as a newbie, I welcome feedback/advice about any of my ideas or potential other ideas.


  1. Hi Sarah!

    Have you looked at GCompris money_cents interface for comparison?

    It presents all the available coins and allows you to click on the ones you want. I'm not sure if that's something that you would want or not, but not having to type is nice :)

  2. Pretty Pretty :)

    Keep in mind though, (as jlew said) you don't want to hardcode an American Currency, as students from all over the world will want to use this program.

    Something like Platinum/Gold/Silver/Copper, or some other similarly generalized currency would do it, but probably wouldn't fit the context of modern day (Unless you change the activity to "Ye Olde Lemonade Stand"). I'm sure you guys will figure out something.

    Be sure to talk with JT Mengel, as he has developed some art assets for the game already, and the two of you should collab so as not to recreate too many wheels.

    Keep up the great work, and I'm excited for Lemonade Stand this quarter to have your Pixel Ninja Skillz.

  3. If you've coded before (it sounds like you have), Python should be pretty easy to pick up - have you taken a look in the .py files yet? It's more or less executable pseudocode.

    A few minimal crash courses for folks who know other programming languages:


    (use either that or http://hetland.org/writing/instant-python.html - I prefer the latter first.)

    for super-extensiveness, see http://diveintopython.org/, which is... too much to digest before you start this project, but an amazing reference to work through if you really want to learn the language later on.

  4. Thank you Mel for the Python resources. I have programmed in Java and C++ before but never python. I have been told that Python is relatively easy to pick up so I am hoping I won't have too much of a learning curve.

    Decause, I did not know that anyone else has been working on graphics for the game. I will definitely talk to JT about ideas for the GUI.

    Thanks guys!