“April is National Autism Awareness Month. Two weeks ago, we didn’t know anything about autism, but that’s changed since then. Over 20 million people worldwide suffer from autism, and many of these individuals struggle with everyday tasks such as communication, emotion identification, and learning. And while there is no cure for autism, but it is possible to enhance the lives of those who have to live through autism, with the help of a little bit of coding and a little bit of technology. And for the past two weeks, we think we did just that. With love, your 2nd Place Autism App Jam winners and recipients of the Hype Award, Team Bubble Buddy – BryceLifts.”
Today was the last day of development for Bubble Buddy. In terms of programming, other than a few bug fixes (and a cute little cursor), nothing much has changed. And after adding 29 conversations and 24 questions (100 was really way too high of a number), Bubble Buddy is officially complete.
Of course, most of today was spent creating materials for the judging ceremony tomorrow. Among them: 1) a poster board that Arzang, Johnathan, Kevin, and Vincent are making, and 2) a video that Bryce edited together after finicking with LightWorks’ new free license system. You can watch the video below.
Our application is finally complete. Well, at least 99% of it. The only thing we need to do now is make a poster and video. And find a way to create a hundred questions. Whoop-dee-doo.
We thought it would be fun to come up with titles for everyone based off of everyone’s contributions. Behold!
Arzang Kasiri – Director Of Communication And Conversation
Bryce Tham – Director Of Programming Design And User Experience
Johnathan Tran – Director Of Web Frameworks And Modular Design
Kevin Yu – Social Media Master & CSS God
Vincent Tang – Director Of Creative Arts And Design
We moved our MongoDB server to mLab. Now the database is shared among all 5 of us, so no need to keep copying and pasting data to each other’s local databases. We also finished the settings modal to include the ability to erase all user data from the server… handy if you want to give yourself a new name!
Oh yeah, Vincent finished this background… and two versions of it too! There’s a day theme and a night theme. Check out the night theme below, plus our new Bubblegum font!
We have also added a sixth emotion: funny. We wanted Bubble to be able to tell jokes to the user on random occasions. In addition, a seventh “emotion” was added called neutral, which is not tied to any other emotion, but tied to some conversations that could appear at any time.
And so our last day of development slowly comes to an end. Hopefully we won’t run into any more bugs from here on out.
Helen Keller once said, “The best and most beautiful things in the world cannot be seen or even touched. They must be felt with the heart.”
Emotions. At first, we wanted to use the 6 basic emotions as established by the scientific community, but we decided to settle with 5 as seen from Disney’s popular animated movie “Inside Out” (with a few modifications): happy, sad, angry, scared, and disgusted. How this is implemented is simple: when the user starts up the application, Bubble is not happy (or in other words, one of the other 4 emotions). After interacting with him long enough though, his mood begins to change, giving positive reinforcement to conversing with others. In addition, conversations are linked to one of the 5 emotions in our application, and so depending on Bubble’s mood, he/she will say different things.
We also added the ability to create new user data. Kevin is working on a button that resets user data at the moment. There is just something so satisfying seeing Bubble as you, “What is your name?” when you first start up the app. It’s almost as if Bubble is alive…
We are reaching the final stages of development. In terms of design, everything looks almost complete. Maybe a few bugs here and there (and admittedly a few things left to be desired), but we have created the best application we could possibly have done within 10 days. Next up, the daunting task of coming up with 100 questions and 100 conversations.
So far, our team has finished implementing two of the three aspects that we envisioned of Bubble Buddy: learning (through the asking of questions) and communication (through learning from the user and contextualizing user data). Bubble J. Buddy may be a virtual communication companion, but Bubble is able to remember your past answers and use them in conversation. Bubble is growing up so fast!
Today we started work on the final aspect of our project: emotion. Vincent went ahead and made a few different expressions for Bubble.
We want to focus on the 6 basic emotions as described by Paul Ekman: happiness, sadness, fear, anger, surprise, and disgust. The goal is to help the user identify these emotions and hopefully teach them how to respond to each.
Aside from that, we made some more progress on our app. Kevin made a modal that contains user settings (such as turning that ridiculous soundtrack on and off) but forgot to push his changes… but that’s an easy fix. Bryce and Johnathan continued work on the application itself and finalizing some details in terms of design for both the conversation and emotion parts of Bubble Buddy.
Bryce made some really catchy music for Bubble Buddy today. Perhaps it is too catchy…
Bryce added the ability to save, load, and modify user data (examples: favorite color, number of math questions answered). Kevin fixed Bryce’s broken CSS on the application. Johnathan added a few routes to make it easier to add and modify questions. Vincent continued work on the background (it’s almost done!). Finally, Arzang is doing… actually we don’t really know what Arzang is doing, but it has to do with branching paths in conversations are something like that.
Tomorrow is the day we finally get to work on emotions… because we are CS majors and we have plenty of those.
A couple of things were done today. We were able to pull and randomly shuffle questions from the database and set a timer such that Bubble J. Buddy asks a new question every 10 seconds (at least for now). We also added conversation support: the ability for Bubble J. Buddy to give a monologue to the user. Oh yeah, and updated art.
(The background isn’t ours. We’re still trying to draw something ourselves, but this works for the time being. Vincent says it will be done by tomorrow.)
Bryce will be trying to make some music tonight using FruityLoops. Kevin, meanwhile, is busy on social media creating fan pages for our application and implementing a Google Form to help crowdsource the question creation process.
The next step: create a model for personal user data. Can’t wait to share that with you all soon!
Today was a bit of a hectic day. Johnathan spent most of the afternoon traveling while UCI’s annual Philipino American Culture Night (PACN) took over much of the night. Nevertheless, we got lots of stuff done today.
The backend logic for the questions is completely functional and, as far as we can tell, 90% complete. Our math problem generator actually works pretty well; for each math problem template, we randomize the numbers in the problem and provide different possible solutions every time. With our algorithm, it is possible to generate hundreds of different combinations of math problems on the fly. Pretty cool stuff.
Tomorrow is going to be pure work. The four of us who are still here will be finding quiet place to work and hopefully finish up some of our game’s assets and figure out a way to mass-produce questions. We’ll also begin work on a separate aspect of Bubble Buddy: conversation.
Lots of stuff happening here at the apartment. We have successfully integrated Mongo into the AngularJS code. Bryce has created an interface for free response questions. Johnathan created new routes for the questions. Kevin is working on creating a system to randomize math problems. Vincent started working on the art for the game. Look how cute he is!
That is all. Nothing else to report for now. We’ll try to merge all of our changes together for the time being. Next steps: bulk produce questions, start animating “Bubble J. Buddy” (yes, that is the name of our character), and create a system for conversations.
We have complete a prototype of Bubble Buddy. Lots of coding was done, lots of really bad drawing using Draw.io (Kevin says the smiley face is “super scary tho”). Here’s a look at our beautiful finite state diagram.
Isn’t it beautiful? And best of all, with a little bit of Bootstrap, and a little bit of Google Images, we were able to convert this diagram to a working prototype! All the buttons work and everything. We are quite proud of it.
That is all. Johnathan has Mongo working and a structure for our questions. We’ll start loading more questions and adding to the database tomorrow!