YadaGuru Update

In addition to my position at 50onRed, I have continued to volunteer for CodeForPhilly. I work on a project called YadaGuru, a college application reminder app, which I posted about before. At the time of that post (June), we were working on MVP, with a goal to release it to a group of test users to get some feedback.

During the rest of the summer, we finished building the admin portion of the app, and our guidance counselor, Katelyn, was able to finish writing all of the reminder content. We also added a Google Calendar integration, the ability to save as a PDF, and an option to export to iCal. Through the help of Katelyn, we also had a group of students from The City School ready to test out our app.

So, one morning in October, the YadaGuru team, met at a Starbucks, had some coffee, got armed with t-shirts and pens, and headed across the street to The City School to get our app in the hands of real students. We started off by introducing ourselves and the app. We gave a general outline of the purpose of the app and what they could use it for, but we purposely did not show them how to use it. Then, we gave them the web address, and sat back and watched.

Two City School students in the testing process
Two City School students in the testing process

The experience was both nervous and fun at the same time. It was really cool to see them using the app that we built! But it was also hard to not help them along the way. We immediately began to see some UX issues with our app. We had unfortunately developed the app with the “desktop-first” approach, and just relied on Bootstrap to make sure everything fit in the viewport on mobile. This was really an area that needed some work. The first obvious issue was the view on mobile after clicking ‘get my reminders’:

Screenshot of YadaGuru reminders view
There are actions, but the actual reminders are below the fold.

It’s not obvious what to do next here. “Print this page?” “What page?” This view looks fine on desktop, where there is plenty of room to see all of the reminders, but definitely doesn’t work here.

The other big issue that stuck out for us was the Google Calendar integration. We were relying on students sending their reminders to Google Calendar, and turning on notifications in order to get persistent reminding of our messages. We learned a shocking (or probably not-so-shocking) truth… high school students don’t typically use Google Calendar. Many of the students didn’t even have a Google account until right before the demo. In talking with the students, that all said they would prefer to get reminders via SMS… something we had considered, but decided to save for a future version.

All-in-all, it was a very positive experience. The students enjoyed the app and found it to be helpful. We had a direction for where to go next. We thanked the students with a pizza lunch, and got one great selfie before we left.

The YadaGuru team
The YadaGuru Team (from left-to-right): Project leader Michiko, developer Aidan, guidance counselor Katelyn, and myself.

Since this meeting, we have been reorganizing and planning. Our original goal was to do a big launch for the 2015-2016 school year, but after this user test, decided to hold off until next year in order to redesign the UI and set up SMS integrations.

The SMS piece is a big challenge for several reasons. First off, our server-side app was not really setup to handle users and authorizations. This required some thought on how to better organize our app. The other issue with SMS was cost. Being a not-for-profit venture, we do not have a budget, and have been relying on free tools to build the app. For SMS, Twilio stands out as exactly what we need, but was out of our budget. Luckily, our project leader Michiko was able to secure at $1500 grant from Rally (thank you, Rally!), gives us a nice budget to work with for our initial launch.

We were also outgrowing our original MongoDB set-up, and have been migrating to the relational database PostgreSQL. We decided to split our app into two repos, the front-facing Angular app, and a server-side REST API. Much of the logic of generating the reminders will now take place on the server, which will now just return the reminder info as JSON to the Angular client for rendering.

More recently, I’ve been busy redesigning the front end. Luckily, Michiko did the hard part for me by thinking through the UX and building mock-ups, which have been really great to build from.

Our more immediate goals is to have MVP #2 (with the redesigned UI and SMS) ready to go by May, so that we can push the app out into the word at the end of the school year. I am confident that we can meet that goal, and look forward track our progress here.

Leave a Reply

Your email address will not be published. Required fields are marked *