Inspiration

We noticed that minor medical conditions often are hard to pin down. Examples include skin irritation, indigestion, or migraine. To make matters worse, the causes for such symptoms are unique to each person. Therefore, we set out on a simple and yet challenging task to create personalised data tracking that is accessible to everyone.

In addition, we realised that the same platform can be used to make informed decisions about our lives. In my personal dataset that was uploaded to the server we saw that productivity suffers from alcohol. (More subtile correlations were excluded for privacy reasons)

What it does

Briefly, it interactively collects users data via chat-bots (slack/facebook/skype) and present analysed data back to the users. The user can pick the objectives he is interested in and our server picks the most important questions to ask. When there is enough data, the platform suggests an informed decision.

How we built it

We started off by brainstorming ideas through the email conversation, which was started by the organising team. Hence, we already knew what we wanted to do when we arrived – some conceptual design was followed by flowcharts and the build began. With 2-4 hours of sleep, the team was up and running for most of the time. The time was well spent and we have succeeded to make an MVP!

Challenges we ran into

We encountered 3 main challenges : the Bot itself is stateless, and integrating State into such a complex system makes for a very sensitive process of compile-run-debug, which often times turned frustrating. Debugging seemed somewhat difficult since the system seemed to behave differently locally and on azure, so we needed to deploy and use the bot itself to get messages. The second problem was getting the Scala web back-end to connect to SQL Server, which was incredibly difficult (had to basically write an entire Java wrapper library) due to poor compatibility between Scala and JDBC. Our last problem was not getting the Amazon Alexa to work, which we attribute to the fact that the bot turned out to be a lot more complex to build than we had thought and so we ran out of time.

Accomplishments that we're proud of

  • We managed to use Azure for the First Time
  • We built a restrictive, but fully functional chat bot with a programming language and framework we had never used before in less than 24hrs.
  • We managed to make our systems, which use many systems from different companies and different philosophies interoperate smoothly.
  • We managed to make our front-end be easy to use and not cluttered, perfect for users with poor internet connection.

What we learned

  • How to work in a team
  • How to deliver an end-product to the customer
  • How to use cloud services
  • How to efficiently seek tech support

What's next for KnowUrSelf

Add security layers, make it fully scalable, add dynamic NLP using MS Cog Services. More statistical analysis and data visualisation. Continue using it ourselves and recommend it to our friends

Try it!

Try chatting on HackCambridge slack channel with bot "@knowyourself2" (HackCambridge Team)

Share this project:

Updates