uMetric

uMetric is a behavior analysis tools that has three main functions:

  • manual, intentional, entry of dual choice puntual inputs
  • create a weekly structure of goals, mapping them with all the second choice options of the trees from the previous function
  • model psychological/social questionnaires with an arbitrary number of questions, an arbitrary number of responses per question, and an arbitrary number of Likert scales per questionnaire

Idea

In the beginning it was born as a tool to help build, track, and commit to routines. The seed concept was the belief that associating a music playlist with each of the routines will improve the commitment and joy. Later, two more functions were added: a way to set weekly goals using the pomodoro technique to carry them out, and a section to fulfill psychological questionnaires.

Design Principles

  • Require attention, not steal it
  • Foster agency, not dependency
  • Short interactions
  • Frustration driven development

Current State

All the described functionality is already in the app and working, with a big caveat. All information is sent to a centralized server, as this was the easiest way for me to construct it. The app can be installed on any android device, it can also work in iOS, but it would require some investment to pay for the right to do it. The users are created manually in the server.

Next Steps

Complete user agency over the data. Generate the user locally, store all the information locally by default, and allow to share sets of information with other users or groups, deciding when to do it.

Health tracker incorporation. At some moment fitibt data was incorporated, but it was removed due to the sensitivity of the data and the company being sold to Google. Instead, incorporating the data from gadgetbridge (an open source app that stores the information locally), when uMetric already stores the information locally is the way to go.

Data and trends visualization. When fitbit data was added, some visualization were also added, but they lacked narrative. Data visualization should be another app that consumes the main one, and it won’t suggest behaviors, so we do not taint the original design patterns.

Sync Management

  • Distributed

  • Instantaneous

  • Select what with whom and when

  • Automerge

  • CRDT

  • Schemas

  • Data Migrations

Questionnaire

  • Add / Import
  • Share
  • Observe

Visualization

  • Libraries
  • Methodologies
  • Sync

Code

SECURITY