Hacking Cozmo: Teaching kids to be kind

For this week’s assignment we had to develop an activity for the Cozmo AI toy. I worked with Arnab in order to create an experience for children that is educational and the same time engaging and fun. We started brainstorming ideas about topics that we wanted to cackle with the interaction . At the end we decided to start working around the subject of teaching kids how to be nice to machines, and therefore how to be kind to people around them (family and friends).

Brainstorm and ideation

Brainstorm and ideation

The second phase was to define a user persona, in this case we decided to work with a kid in a complicated situation: Simon is an only child who is used to have his parents attention, however he is about to have a little sister. His patience and the way he treats people are changing because of the changes that are happening in his family and we would like to create a game that teaches Simon how to be kind to people around him.

We defined his goals, frustrations and also his personality and what motivates him, all of this in order to understand the state of mind and the needs that we wanted to to cover with the game.

As designers we also defined our main goals to achieve for the kids: To incentive positive social relationships and to balance the need to attain power and control.

User persona

User persona

After defining the user and the activity it was time to frame the interaction and decide which functionalities from Cozmo to use in order to generate the impact that we originally designed. We started with a very basic idea of analyzing the sentiment in the way that kids requested Cozmo to do certain actions. If the sentiment was kind then Cozmo would start doing it but if he detected that the sentiment was mad or rude, then he wouldn’t do the interaction and he would instead teach them how to ask for it in a kinder way. The kids then would have another opportunity to try and make the action if they learned the lesson of asking kindly.

The original idea was to use the sentiment detection however as we started prototyping we couldn’t find that building block in the Cognimates extension and therefore we decided to check if the kid typed the word “Please” as a way of checking if the sentiment was kind or not.

Logic and Information Architecture

Logic and Information Architecture

The next phase was to start building the logic in Cognimates. We found it to be very satisfying and easy to use (once we were able to install and connect the app, connect to the phone and the computer, install the SDK through terminal and then install the Cognimates extension). We inmediatly realized that the setup process took way longer than what we expected and this is a highly technical process that woudn’t allow a lot of parents to do it for their kids to start building their own games with Cognimates.

We started the program by making Cozmo ask for the kid’s name and then say Hello, followed by the kid’s name. The next block was to tell the kid that he could pick up a block if the kid asked nicely. Then we stablished an “If” “else” condition in order to check if the response included the word “Please”.

Something interesting happened during the process, we noticed that the recognition of the word was case sensitive which took us a while to debug, and once we understood what was happening we could continue building the program. For future iterations we would have to consider giving more options to check if the word “Please” was written (even if the case was different or if it was maybe misspelled?).

Programming in Cognimates

Programming in Cognimates

Prototyping and Testing

Prototyping and Testing

The final result is an interaction where Cozmo greets the kid after asking for their name and then teaches them how to ask for things in a kind and respectful way. We believe that this kind of approaches can be of a very good use for personas like Simon, who are going throw changes in their families and need to learn how to continue being kind, share their toys and his parents attention and also how to be patient toward technology and therefore to people.

Quantifying Data: A week in Compliments

For this week’s assignment we had to quantify a specific aspect of our lives, I decided to work with Anna Gudason by counting the amount of compliments that we received during the week, the reason why we did this is because we believe but a lot of time we don’t share what we are thinking, specifically in my case, if I see someone wearing a nice outfit I try to say something nice, however I don’t always do it, or if someone is beating him or herself up because something went wrong with an assignment, I try to give support however I don’t tend to compliment their good characteristics. By quantifying the compliments that we received we figured it will also be interesting to know how many we give during the week and be able to create a visual comparison.

A very important aspect was the collection of the data, I started by creating a spreadsheet in Google docs so that I would always have access both in my computer and in my phone, in order to be able to track more efficiently and hopefully don’t forget to log any of the compliments. The structure of the data collected was, I had a separate sheet for each day, and I had two different columns with “Compliments given” vs “Compliments received”.

Read More

Disobedient Electronics: Breather 129

For this week’s assignment we were asked to create a Disobedient Electronic. We started the process by deciding on a subject to treat. After doing some research we decided to work with data related to mental health awareness, the original idea was to use the ESP23 wifi capability to pull data from an online source. We started browsing from some statistics and we found the amount of deaths by suicide in the US which was very alarming for us.

According to the American Foundation for suicide prevention, on average, there are 129 suicides per day. In order to be able to work with this data we started treating it as suicides per day, and then we converted that number in the time that statistically passes between two deaths by suicide.

Read More

An evocative Object from my childhood

I want to start by explaining a little bit my background. I grew up in Costa Rica in a very small town called Grecia. My parents own a bakery and I have one older brother. I had a very peaceful and happy childhood and I am very grateful for the way that my parents raced me, however I would like to point out some characteristics that are important for explaining the “object” that I have chosen.

Growing up in a Latin American country meant that the gender roles where extremely marked, and specially in my house since we are all Catholics and my parents believe in separating the roles of women and men. I remember that I used to play with dolls and Barbies a lot and I used to love it. My brother used to have a lot of fun toys (he still has his room full with actions figures, comics and board games) and I liked playing with him with little cars and doing races, I don’t remember however that my parents ever encouraged me to play with my brother’s toys.

Read More

Time Piece: Productivity Clock

For this week’s assignment I decided to create a device for the user to set the amount of time that they want to spend in certain task and then be able to track the progress of the time elapsed and improve their productivity. This clock is based on the Pomodoro methodology that states that the brain focuses better in short periods of time with timed rest periods.

The original idea was to use a neopixel ring in order to light up the LEDs according to the rotation of the encoder and allow the user to press the button in order to start the timer. I started by sketching the basic functionalities and understanding how to divide the time in the circle. I decided to do a 60 minute timer with a 12 LED ring, which meant that each light would express 5 minutes.

Sketch and ideation

Sketch and ideation

Understanding time

Understanding time

The next phase was to assemble all the components separately. I have never used encoder nor neopixels which was a big challenge, however I wanted to use this opportunity to learn how to connect them and how to make them work according to the time.

I was able to light up the LED according to the movement of the encoder in the correct portions of time, and also set a time when the user clicks the button according to the LED that are on and the numbers in the enclosure.

The desired user interaction was to be able to tun off the lights according to the time elapsed however this was not possible for me to finish for this assignment. I would like to finalize the logic and refine the code so that it could work properly and give the user a visual and maybe audible indication with a buzzer on when the time has passed.

Final Clock Design

Final Clock Design

This project was a very interesting experience because I learnt how to implement many different technologies in one same project without having experience using them. It definitely challenged me to start understanding the code more in depth and also to understand the examples that I found online and be able to code my own version with the functionalities that I wanted for my design.

The last step was to build an enclosure, which I decided to do with white cardboard. I laser cut the wholes for both the encoder and the neo pixels and I covered them with a diffuser in order to make the LED look less bright and contribute to the aesthetics of the clock.

The final result is a productivity clock that lights up the LED according to the user selection and displays on the screen the amount of time that is selected, the timer is capable of keeping track of the time that has passed and the minutes are displaying also in the console.

Critical Object: Anti Vax is Whack

For the first class assignment we had to develop a Critical Object. We decided to start the ideation process with an open brainstorm in which each member of the team (3) would choose 5 topics that she cared about and would write it in a post it and paste it on the wall.

Once the three of us wrote the post its we took some time to re group them into areas of interest, one of the most prominent topics was related to health (physical and mental) according to the interests of the group. We wanted to make sure that we were all working in a topic that passionate us so that we could have a better result.

Brainstorming and ideation

Brainstorming and ideation

After a long group talk we decided to focus on the reappearance of illnesses (such as Polio) due to the lack of vaccination given to kids. At that point we were aware that the topic could change while we developed the ideas, however we would like to try to stick to a similar approach.

The next phase was ideation and sketching, we sticked to the post it format since it showed good results in the first phase of the project. We allowed ourselves to freely come up with ideas about how to frame the problem that we stated in the same place.

Sketching and ideation

Sketching and ideation

After the first round of the ideation process and having thought about experimenting with fluids and mechanical structures, we decided that we wanted to work on a Dunk Tank to represent the amount of kids that are not being vaccinated and how that growing number of unprotected population will have an effect on vulnerable people with different conditions and weak immune system .

The last phase of the ideation process consisted on determining how to create a dunk tank with the use of an Arduino, a servomotor and some structural materials.

Mechanism and materials

Mechanism and materials

Once we defined the functionalities and the way the object was going to interact with the user we started the production process. The following is the description of the object: Dunk Tank that has a button that triggers a servomotor, every time a user press a button it would add +1 to the counter until it reaches three pushes then that is when the servo will rotate 80 degrees to drop the figure that is going to be on the seat.

We decided to work with balsa wood and some scrap pine wood for the structure, the figure was created with paper and the choice to make it more abstract was based on the fact that we wanted it to be identified as a human figure, however not as an specific person, but more as a group of the population that is vulnerable and will be affected by the decisions of parents who decide not to vaccinate their kids.

Prototyping and coding the functionalities

Prototyping and coding the functionalities

Arduino wiring for prototyping

Arduino wiring for prototyping

With the solved functionality we decided to document the project at ITP and recruit some users to help us push the button so that we could communicate effectively the idea and the meaning of our Critical Object. During the design process it was interesting to notice that we depended a lot on a video with audio or text in order to explain what our project is about, however we believe that for future assignments we would like to explore the possibility of creating an object that will speak by itself and it will not depend on an explanation.

Final Setup

Final Setup

Dunk Tank

The user interaction consist in pushing a button once, the figure in the seat will only fall until a number of user have already pushed the button. We decided to create three different figures with variable sizes and proportions to represent different groups of the population in risk, such as kids and older adults.

The final result is a visual representation of the consequences of affecting the Herd Immunity protection that the most vulnerable sections of the population suffers when parents decide not to vaccinate their children.

Herd immunity is what happens when a community has a high immunization rate, usually 90% or more, which effectively prevents the spread of a disease. Herd immunity protects those who are the most vulnerable, like  children who are too young to be vaccinated and people with compromised immune systems who cannot receive vaccines, like people who have received chemotherapy.

Every drop in herd immunity--even a small one--puts the community and especially the most vulnerable members at risk for contracting the disease. This can lead to serious illness and death for these individuals.

Every choice not to vaccinate a healthy child contributes to a drop in herd immunity. 

This project was developed as a project for the Critical Objects class in collaboration with Cara Neel and Alizarin Waissberg.

Quantified Humanists Week1

Part 1: Data Double

This is a documentation of a series of online services that contain data about how I interact with technology, the purpose of this blog post is to be accountable about the data that I have requested and the data that I have been able to collect during the first week of class.

So far I have requested data from the following services:

  • Clue

  • Instagram

  • Gmail

  • Youtube

  • Google Maps

  • Strava

  • Facebook

  • Amazon

Interesting Findings: The Information architecture of the websites and services is specifically designed to make it harder to the user to request the data. It was a long process only to be able to find a link to request the information and most of them took a long wait time to receive. I also notices that some of the emails didn’t arrive in my main “received” emails, instead they arrived to t he “promotions” tab which gave me problems because some of the links (like LinkedIn) expired before I could download it.

In the case of Facebook data it is interesting to see a json file with my “ad interests” and I am curious to explore and visualize this kind of information. It was also interesting (and very distracting) to see all the pictures that I have ever uploaded to the platform, even the ones that are no longer visible in my profile.

The most interesting package was definitely the Google one, which allowed me to download Youtube, Maps, Gmail and pictures all at once. It was very weird to start looking at the pictures because it contains very old pictures that I never uploaded anywhere but were probably part of an email or a conversation.

I am still waiting to receive data from the following services:

  • LinkedIn

  • Spotify

I need to request data from the following services:

  • CityMapper

  • Lyft

  • Venmo

  • Eventbrite

Part 2: Self-Tracking Projects Review

Project1: Clue app

Clue is a female health app developed by the Berlin-based technology company BioWink GmbH. It calculates and predicts a user's period, fertile window, and premenstrual syndrome. It also informs users the most or least likely time for becoming pregnant and allows them to track more than 30 health categories, including sex, sleep, pain, exercise, hair, skin, digestion, emotions and energy.

The UI of the app is very simple and intuitive which encourages the user to submit and track the data however I believe that the most important feature of the app is that it gives the women a very accurate and actionable data visualization. For example if I am consistent (which I try to do), I will have a notification normally two days before I get my period, which helps me be prepared. It also indicated me when I am in more fertile so that I can avoid having sex if I don’t want to have kids in this moment.

Photo credit:  helloclue.com

Photo credit: helloclue.com

The project is important for me because it has helped me track my period and my mood changes and understant my body in a better way. I am aware that the fact that I keep tracking my data is mostly influenced by the good data visualization design and the accuracy of the information and knowledge that I am able to extract from the “numbers” that I input every month as tabs in the screen.

Project 2: Bruises — The Data We Don’t See

Bruises is a data visualization that uses graphics and music to display the clinical and emotional data from a patient with the Idiopathic thrombocytopenic purpura (ITP) condition. The project was developed by Georgia Lupi in collaboration with Kaki King.

It all started when Kaki discovered blood in her 3 year old daughter and when she hospitalized her the doctors diagnosed her the condition. In that moment Kaki communicated the sad news to her friend Georgia, who decided to start a project to be able to track the progress of the illness from the clinical side but also the emotional implications on Kaki.

“The doctor’s directive to us was to watch her skin for any significant changes. Since I had been working with Giorgia I had learned to do personal data collection, so I began to write down what I was seeing on Cooper’s skin, what activities we did that day, what treatments she had and what her reading were, as well as how I was feeling. My fear, stress, my hope. My thoughts and feelings.” —Kaki King

The project uses graphical elements that are displayed over time showing information collected such as: Skin, medications, platelet count (from Kaki’s daughter) and also tracks the hope/stress experimented by Kaki.

Bruises Project by Georgia Lupi  Photo Credit:  Georgia Lupi Bruises

Bruises Project by Georgia Lupi

Photo Credit: Georgia Lupi Bruises

This project is of great interest to me because it uses data to communicate a story but specially it works for the purpose of documenting the progress or the clinical conditions in a very unexpected way. Normally the graphics that a doctor shows a patient are scary and meaningless however Georgia’s and Kaki’s graph is a visual representation of pain, suffering and hope in a very beautiful and expressive way.

I also believe that this kind of data visualization needs to have a narrator, it is not possible to fully understand the chart by only looking and reading at it, therefore the uses of this kind of visualization will never replace the more clinical and accurate data visualization however it works as an emotional reinforcement for storytelling.

Project 3: Garmin Connect + Strava

The third project that I would like to analyze is a combination of technologies for fitness tracking that I have been using for almost two years and I would like to analyze the positive and negative implications of using these technologies and how they have had an impact on the way that I train and exercise over time.

I have a Garmin watch for Triathlon (even though I am not one) and I use it with the mobile app “Garmin Connect”. When I was part of a running team back in Costa Rica my coach would assign training sessions to me and I was able to follow them by tracking my heart rate during the time I was running. At the end of each training session I would upload it to Garmin connect and that would give my coach the possibility to analyze how my performance was and how it compared with previous sessions.

The fact that Garmin Connect allows the user to visualize the data in a graphic way and save the training sessions is very useful to track the progress, the app and the watch will also give notifications when the user achieve a new record which sometimes helps motivating and encouraging a better performance.

Garmin and Strava mobile apps  Image credit:  Connect.garmin

Garmin and Strava mobile apps

Image credit: Connect.garmin

Image Credit:  road.cc

Image Credit: road.cc

I have also used Strava connected to my device and specifically the social component, I used with my ex co-workers for an internal competition in my previous company, in which we would track the miles that we run, biked and swam in order to choose a winner at the end of each month. The social component of Strava was very interesting and it was a way to keep us accountable.

Also an interesting use case that we gave Strava as a remote team (working from India, Costa Rica and US) was to be able to see the maps and roads of the other coworkers and be able to leave comments and motivate them to keep training or challenge them for specific races.

I also wanted to comment what happened when the GPS of my Garmin failed and I had to go back to training with no tracking at all. It was a very interesting experience and it gave me the possibility to enjoy physical activity for how it made me feel instead of only focussing on the numbers and the graphics. I got my Garmin back a couple of weeks ago and it aligned with the beginning of this class therefore I decided to go back to tracking my activities, steps and sleep. This time my goal is to use technology as a complimentary indicator of my wellbeing and physical performance instead of leaving all the responsibility in the data collection and visualization.

Part 3: Reflection

I believe I have already used this assignment as a reflection of my relationship with self tracking devices and technologies, however I would like to expand on a couple of issues that I have found and how I hope to improve them by continuing self tracking.

In general I use self tracking (consciously) for my fertile cycle and for my fitness and activities. This might be a little bit too personal information however I believe it is important to expand on my relationship with self tracking. I mentioned in the first example above that I use the Clue app to track my period, the pain and emotions that it causes in my body and mind. I recently got an IUD as a fertility method however I want to keep using Clue as a way to track how my period behaves (even though it is now controlled by hormones) and how my feelings and emotions are going to change now that I have this device that is constantly providing my body with hormones. I believe that this app have the potential to be able to identify if there are weird behaviors in my body (specially during the first six months of having the device) therefore I want to continue my tracking using Clue and getting meaningful feedback from the data visualization of my cycle.

In the side of the fitness tracking, I would like to give my Garmin watch an adequate use and be able to extract meaningful knowledge out of the numeric data collection, I have experienced before a lack of engagement because I was only collecting data but not letting my body communicate by itself. This time I would like to use the technology as a mean of expanding the signals that my body is giving me instead of using data as the main point of focus.

My hopes with self tracking are to start being more conscious about how I eat and exercise and how that affects my emotions, I would also like to track how many times during the week I eat home cooked meals vs street food or restaurants (I would like to keep track of this both for health and financial reasons). I am very interested in the intersections of self tracking with different approaches and how that might give me a better understanding of the relationship between my body and my emotions.

The beggining of this interest started last semester (1 year at ITP), when I started having panic attacks, this has never happened before and I don’t have a clear understanding of what triggers them and how could I prevent them from happening. I believe that it is a combination of many different reasons that trigger such condition such as lack of sleep, high levels of stress caused by school assignments, interaction with new people and also the lack of physical activity. I believe that self tracking some of this behaviors might be a very interesting project to understand how my mind is reacting to my new daily routine and how can I improve the way I live now.

I don’t in data collection and data visualization for the sake of it and I am not that interested in visualizations that are too complex that need to be explained (like some of the Georgia Lupi’s projects), instead I am interested in the analysis and simplification of data to provide meaningful knowledge and actionable items to improve people’s lives.





Dance Battle in Unreal

For the last assignment we were asked to explore the softwares Fuse to create and animate characters and Unreal, to create a 3d world and animate the elements using lights and cameras. The exercise consisted in two different phases divided in two separate weeks.

The first week consisted in developing a character in Fuse in order to export it to Mixamo and b able to generate 3d animations with the predesigned character. I decided to start with basic shapes and eventually move to a more specific character design.

Read More