Week 11: Final Project

The Motivation:

This project began with my long lasting passion for organization, tracking, and the search for better work habits.  Most would consider me a very organized person in both my personal and work life. While this is generally a positive aspect of my personality there are consequences that come with this life style.  Often work and organization can overwhelm my world such that my push toward getting a specific task done inhibits my focus on other equally important things.  For this reason, I have been hesitant to implement tracking apps in the past.  While tracking can help to heighten awareness of your time would this heightened awareness also amplify the narrow focus I tend to get stuck in?  

In order to explore what I did and did not like about tracking apps that aim to help your work habits I implemented a few into my life over the past semester.  Two of these apps included the Reporter App and Toggl.  The Reporter App is a customizable survey app that randomly asks you questions about your day.  The app stores your answers into simple visualizations and helps you keep a record/journal of random variables throughout your day.  This app does a wonderful job of helping you to note important aspects of your day that may contribute to your work habits.  However, I found the randomization of the surveys to be very distracting when I was working.  Often, when I was in the middle of a work session, a notification would pop up on my phone to tell me that it was time to report.  Most of the time I would find myself ignoring the notification in order to not break up my work session.  Then after the work session I would notice the notification again and continued to ignore it since I was not working and the answers would not be applicable.  What I liked about the Reporter app however, was the simple and immediate opportunity to analyze your answers.  On the other hand I had a much more positive experience with the Toggl app.  I used the Toggl app to track my work sessions.  If I was doing homework for one class I would start and stop a timer at the beginning and end of the work session.  Now I have a very comprehensive timeline of how much time I spend on each class.  I found this app very easy to use and so quick to implement that it barely creeped into my work session.  Still however, I had a weird feeling that tracking my time for each class and noting that timing in the moment was motivating my work in negative ways.  Noting the time ticking by instead of focusing on the task at hand is a common result of time tracking and I often find myself doing just that.  Of course, having the data after the fact has been interesting to analyze and motivates changes in my work habits. 


I spent time this semester thinking about and exploring apps that aid in work productivity and formulating my own opinions on their usefulness.  Thus to begin this project I spent time researching and validating my conclusions.  

In a wonderful article called “Productivity Isn’t About Time Management. It’s About Attention Management,” Adam Grant highlights some key concepts about productivity that motivated my project.  Grant writes “But after two decades of studying productivity, I’ve become convinced that time management is not a solution - it’s actually part of the problem” (4).  Managing your time makes us focus on the wasted hours in the day.  He continues, “A better option is attention management: Prioritize the people and projects that matter, and it won’t matter how long anything takes… Attention management is the art of focusing on getting things done for the right reasons, in the right places at the right moments” (4).  Thus we must find the times that excite us about our work in order to be motivated enough to get them done.  

With these concepts about work and productivity solidified, I tried to find a metaphor that would help to form a theme for my project.  In his well known book Getting Things Done, David Allen writes about preparing for a work session is just like an athlete preparing for a game, you have to get into the zone.  I found this to be a good theme for my project.  Rather than focusing on time I want users to focus on the task at hand and fully get in that zone in the moment.  This will motivate productivity and allow users to complete tasks in that chosen space more efficiently. 

Ultimately I decided to make an app that would motivate attention management and would guide users to reflect and change habits over time.  The concept, design and backend of the app would be developed for my Quantified Humanist class while the development of an initial iOS app would be completed in Swift for my Mobile Lab class.  The app would be split into three sections… the “work zone,” the “reflection zone,” and the “analysis zone.”  Before the work session begins, the user would be asked to answer questions that guide them to focus on the work at hand.  After the work session, the app would guide the user to answer questions to reflect on that work session.  Lastly, a visualization component would allow the user to analyze their data and compare variables from their work session and guide them to make changes to their habits.  For the scope of this project, I decided to focus mainly on the basic iOS application (aka the “work” and “reflection” zones).  I would also develop an API to store this information.  In the future, I would like to focus on the output visualization (aka the “analysis zone”) that uses the data from this API.  Some defining questions that guided my project included….

  • What environment/attributes contribute to a productive work session for you?

  • What defines a good work session? (If you complete the goal? If you were productive despite maybe not completing the goal? How do you define success in a work session?)

  • How can tracking your work lead to more productive work sessions?


From my research I developed some key app features that I wanted to include.  It was important for me to not show a timer in the app while you are working.  Once you initiate a work session in the app, a timer should not distract from the work that needs to be done.  The time stamp information should only be exposed in the output “analysis” zone when the users are guided to adjust their work habits.  Additionally, it was important for me to include an opportunity for self reflection in the application.  It is important to record reflections immediately after a work session.  Also the act of reflection would guide the user out of the work session and allow them to pull their focus away from the work and into something new. 

With these considerations I developed a series of questions to ask before and after a work session.  The following list represents the final questions.  The name tag for each question shown inside the brackets represents the tag used in the API. 

Pre-work session (“work zone”) questions:

1. What project are you working on? [project]

2. What task are you working on? [task]

3. Where are you working? [place]

4. What is your goal for this work session? [goal]

additional variables stored automatically: [location], [weather], [sound level], [timeStart]

Post-work session (“reflection zone”) questions:

1. Did you complete your goal for this work session? [goalCompletion]

2. Are you excited/content with the work you complete this work session? [excitement]

3. Add some tags to this work session [tag]

additional variables stored automatically: [timeEnd]

With this data structure understood, I made an initial UI flow for the app (Figure 1).

Figure 1

Figure 1

At this stage I began to build the app for my Mobile Lab class so I needed this basic app flow to begin the development. 

From there I began to build out the backend of the application.  In order to store the user data I decided to make a simple basic auth express API using mongodb.  I hosted this API on Heroku.  This API was heavily based on this example.  I added the data structure outlined above and implemented GET, PUT, POST, and DELETE requests into the code.  To see the full API code for this project visit this link.

With the API complete I was able to finalize the UI/UX experience of the app and finalized a style guide for the app.  Figure 2 shows the built out UI for this initial iteration of the app.

Figure 2

Figure 2

There are many features that I could add to this application but I decided to look at this design as an overall proof of concept.  Thus the design focuses on the basic skeleton of the “work” and “reflection” zones.  In the future I would like to add even more capabilities including the main “analysis” visualization section.  Figure 3 shows a video of the user experience and some of the animations that contribute to the design.

Finally, Figure 4 shows the finalized style guide for the app.

Figure 4

Figure 4

For a look at the iOS app I developed that was based on this design and provided a first iteration proof of concept of this app visit my Mobile Lab blog

Conclusion/Future Steps:

In the end I am happy with the results of this project.  I think I focused on creating a thoughtful application that motivates productivity and better work habits while eliminating distractions.  Ultimately, this project is the beginning of a much larger one.  I can use this design and the initial iOS app to test this concept.  In the future I would like to user test the app to verify that the implementations I made result in the productivity I intend for the user.  Of course the main missing aspect of this project is the output and comparison functionality.  Once I verify the app works and I see the type of data users create, I will have a better understanding of how to design the output visualization.  In addition there are endless features that I could add to this application.  With user testing and more research, these features could be added. One main feature could implement customizable questions so that users can decide the questions that would be more useful for them to record before and after a work session.  The possibilities are endless but it is important to carefully consider every addition to the app to make sure it focuses the user instead of distracting them. 

Links to project:

The Zone App API

The Zone App Swift Project


  1. https://toggl.com/

  2. http://reporter-app.com/

  3. https://thesweetsetup.com/apps/best-habit-tracking-app-ios/

  4. https://www.nytimes.com/2019/03/28/smarter-living/productivity-isnt-about-time-management-its-about-attention-management.html

  5. https://www.linkedin.com/pulse/when-work-takes-over-your-life-adam-grant/

  6. https://www.nytimes.com/2019/01/26/business/against-hustle-culture-rise-and-grind-tgim.html?module=inline

  7. https://www.linkedin.com/pulse/when-people-ask-you-how-stop-saying-busy-robert-glazer/

  8. https://www.fridayfwd.com/urgent-vs-important-matrix/

  9. https://www.fridayfwd.com/whole-life-dashboard/

  10. https://www.fridayfwd.com/stop-doing-list/

  11. https://www.theguardian.com/technology/2016/dec/22/why-time-management-is-ruining-our-lives

  12. https://www.nytimes.com/2013/03/31/magazine/is-giving-the-secret-to-getting-ahead.html?module=inline

  13. https://www.nytimes.com/guides/business/how-to-improve-your-productivity-at-work

  14. https://github.com/toggl/toggl_api_docs/blob/master/toggl_api.md

  15. http://reporter-app.tumblr.com/

  16. https://www.forestapp.cc/

  17. https://github.com/joeyklee/very-basic-express-auth-example

  18. https://thenounproject.com/

Week 10: Final Project Progress

This week I focused on the UI/UX design of the app.  Figure 1 shows a completed version of the app flow.

Figure 1

Figure 1

Figure 2 shows a representation of the animations I intend to implement into my application.

 I also verified the GET, POST, and DELETE requests could be made from my Swift application (Figure 3).

In the coming week I plan to finalize my design guide and begin an alpha prototype of the application for my Mobile Lab class. 

Week 9: Final Project Progress

This week I focused on preparing the back end of my application so that I can begin to build the mobile application in Swift for my Mobile Lab class.  First I built a UI template document to highlight the main flow of the application (Figure 1).

Figure 1

Figure 1

This image shows the general flow of the application without the consideration of design.  I first wanted to get the basic flow documented so that I could begin building the app.  The design and app animations will be implemented later.  I also built and deployed the api for this application using Heroku.  The api is set up to accept get, post, put, and delete requests as demonstrated in Figure 2.

Now that this api is setup I will move to my Swift file and set up my application to make these requests.  In the coming week I also plan to focus on the design of the application to make sure it is simple, clean and easy to use. 

Week 8: Final Project Progress

This week I spent time validating my idea with background research and beginning the design process.  I began the research project by collecting notes from various articles and sources regarding work and productivity.  This research highlighted some key points on productivity that I want to be mindful of and ensure my app is following.  The main concept that resulted from this research is that there is a difference between time management and attention management.  To sustain good work habits, managing your time is important, but if you focus too much on how much time things take, the quality of your work suffers.  Instead, it is important to focus on things that matter and not how much time they take.  In other words, attention management, not time management, will produce more efficient and better work.  Of course many time tracking apps like Toggl are useful.  However, it is important to be aware that time tracking is good in terms of keeping you aware of how you spend your time, but also can heighten your awareness of the minutes ticking by.  This over-awareness can be harmful to your work habits.  In general, excitement leads motivation.  You must prioritize your time based on when you need them done by and your excitement level.  The things that you are more excited about will be easier to complete.  This is why it is highly important where and when you choose to work.  These environmental factors can make an unexciting task all the more challenging if not done when your focus is right.  

From this research I extracted some app feature ideas that I thought were important to consider.  While I believe it is useful to see how long work tasks are taking you, I understand that while you are focused on the task at hand, knowing the exact amount of time the task is taking you can have negative effects.  Thus, I think it is important to keep track of when you start and stop a work session, however it should not be seen by the user until the analysis part of the process.  Since excitement leads to motivation I see how important it is to reflect and record after a work session.  Thus, there must be a place to do this quickly and easily after completing a work session in the app.  Lastly, in my research I learned that people often work best when there is poor weather as they are less distracted by going outside.  One small motivational feature that could be added to my application could be a notification that motivates you to go work when there is bad weather such as rain coming to your area.

After I collected this research, I tried to used the concepts I learned about productivity to develop a theme for my application.  Ultimately I decided to use the theme “the zone” to form my app around.  In many ways, getting ready to start a work session is similar to an athlete getting ready for a big game.  You need to get in to the zone and get excited about what you are about to focus on in order to get anything done.  This app will thus be an opportunity to get in the zone.  The way I am thinking of the stages of the app is that there are three zones; a work zone, a reflection zone, and an analysis zone.  When you start your work session, the app will guide you to answer questions to get you into that “work zone.”  When you are done with your work session, the app will guide you to reflect on the work you completed through the “reflection zone.”  Finally, the output where you see the data and can compare variables of the api will be the “analysis zone.”

With this concept, I began to build a basic style guide.  Since this was the first time I did anything like this, I think that I will be changing this guide throughout the design process as I learn more about design and UI.  Figure 1 shows the start of this style guide.

Figure 1A

Figure 1A

Figure 1B

Figure 1B

Finally I developed a data structure for the app, shown in Figure 2.

Figure 2

Figure 2

There are many opportunities to make this application more customizable and consumed by more data.  However, I am looking at this project as a proof of concept.  I would like to create a simple, well designed app that had the core concept of productivity in mind.  Then perhaps later I can expand on this concept into a more all encompassing app.  For now, these are the variables and questions I would like the app to ask. 

Looking forward, my next steps will be to build out a full UI experience of the application. 

Wee 5&6 Workflow Intervention

For this weeks assignment I tried to implement an intervention that would motivate user data input.  I began to think about the workflow I currently use for my other productivity apps and how I motivate myself to use them. One of the main productivity apps that I use is called Toggl. Toggl is a time tracking app. In order to start and stop of Toggl timer I have implemented a Siri Shortcut. This shortcut asks me questions about the project o am working on as the task and then sends that data to the toggle API and starts an appropriate timer.  I realized that I could improve this shortcut by adding a series of my own questions and send that data to my own express api and then i could start my toggle timer. This shortcut could be added to my home screen so every time I want to run a timer I have to first go through this shortcut. 

Here is how I set up this workflow....

First I created a list of questions that I wanted to ask in my Siri shortcut (Figure 1). Each question has a variable name that was eventually referenced in the api key.

Figure 1

Figure 1

Next I created an express API that could receive all the necessary variables and implemented an authorization.  Using Mongoose and Heroku I made this API live. For now I was just focused on the backend so the homepage does not show any information. Only the /api route contains information. 

Next I developed four new Siri Shortcuts (two for starting a work session and two for ending a work session). The shortcut shown in Figure 2 is the “start ask” shortcut.

Since I use toggle for more than just tracking my work I want to be able to run a toggle timer without being asked all of the work session questions. This shortcut acts as a guard for starting my work session.  If I say yes I am starting a work session, the “start work session” shortcut will run. If I say I am not starting a work session, my “Toggl on” shortcut will run. Figure 3 shows the “start work session.”

This shortcut asks a series of questions about the beginning of my work session and also records my location and the current weather.  The answers to each question are posted to the express API online.  At the end of this shortcut, the “Toggl on” shortcut is run to also begin a toggle timer for the work session.  Figure 4 shows the end work session shortcuts.

These shortcuts work the same way as the start work session shortcuts but instead call the “Toggl off” shortcut to turn off the running timer.  The questions asked in the “Stop Work Session” shortcut are also sent to my express API.  

The resulting data will eventually be used to build a front end visualization of work session data.  This setup can easily be repeated for any tracking implementation.  Using siri shortcuts easily allows the user to talk to the API on their device without having to open a URL in a browser. 


Week 4: Client & Server Side Interactions

This week I experimented with using and building client and server side interactions.  First I used this workshop as a guide to setup and build my own API and connect it to a frontend interface.  This process taught me how to build a backend API and how to use the CRUD (create, read, update, delete) protocol to change and update that API.  I really enjoyed walking though this workshop and am excited to implement API’s into my future projects. 

Next, I downloaded this project from GitHub and practiced using a simple API interface using this data selfie app.  Each day this past week I opened this project and logged an image of myself.  Despite it being an unusually hectic week, I did not find this type of routine to be challenging to sustain.  I decided to add a reminder into the reminders app that I already use.  This reminder went off once a day in the morning to remind me to log an image of myself.  When the reminder went off and I was not able to access my computer I would usually snooze the reminder for an hour or so.  Since this is something that I do with other to dos, it was easy for me to implement.  I did find it a bit frustrating that I would need to take my computer out to do this task.  Had it been an app on my phone I would have stopped what I was doing to quickly take a photo so that I would not have to snooze the reminder. Overall, implementing small routines like this one is quite easy with the reminder and organization systems I currently have setup.  

Week 3: Work Productivity Data/Visualization

This week I worked through this guide to build a database and website to record and visualize my work session productivity.  I am interested in what factors contribute to how much I get done and how I feel about the work session afterwards.  This project seemed like a great opportunity to begin thinking about this data and how I would collect/display the information.  In the end, this week I spent more time working through the technical side of this project than the visuals/the questions.  The visuals are definitely something I would like to think more about in the future.  The following description explains the simple visual encodings that I used….

The top of each canvas has the date and the subject (what the user was working on during that work session).  Then the background color changes on a scale from green to red based on the users stress level (red for high stress, green for low stress).  The main circle is supposed to represent a focus point.  The position of the circle changes based on where the user is working (top left - other, top right - coffee shop, bottom left - ITP, bottom right - home).  The radius of that inner circle changes based on the productivity level.  If the user was really focused with a high productivity the radius would be small (representing a narrow focus), if the user was not focused with a low productivity the radius would be large (representing a more fluid focus).  If the goal of the work session was completed this circle would be solid black, if the goal was not fully completed the circle would have some alpha.  Lastly, if the user had company while working a halo behind the main circle would appear, representing potential distraction.  The halo would not appear if there was no one with them. 

Of course the most pressing changes that need to be made to this are the visuals.  I like the idea of representing focus and productivity with blurred and clear circles, but I would need to think more on how to better plan this visual.

The website can be found here. The code repo can be found here

Week 2: Dear Data

This week for my assignment I tracked all of the drinks I consumed from Tuesday through Sunday.  I made sure to note the beverage, the size, the time and any other notable additions.  In the end I drew a postcard inspired by the dear data project which visualized the data I collected (Figure 1).  The legend on the back of the card explains how the data is visualized.

I really enjoyed this exercise.  Throughout the week I kept an excel document on the home screen of my phone to easily add data points to it an any time throughout the day.  It is interesting to see how much coffee I have in comparison to my water intake.  I also really enjoyed the analog form of this assignment.  It forced me to really sit down and take my time to think about how I would organize the data I collected in a meaningful way that would encompass the complete data set.  It was interesting how quickly tracking something can become habit.  Even though I am done collecting data, I keep reaching for my phone every time I grab a drink in order to log it.  

Week 1: Tracking Reflection

Overall, I am a very organized person and so tracking projects have popped up here and there as I have modified my workflow. I follow a podcast called Cortex which has introduced me to many productivity applications.  I try to be aware of my habits and how I can increase productivity and minimize distraction.  Thus, I am open to changes in my workflow to integrate tracking methods.  That being said, I have always had a little hesitation to living a life of over tracking.  I see how tracking can help you to stay focused and organized, but I am also scared to let tracking get so involved that it takes over.  I would like to integrate tracking in my life to optimize aspects that need help while finding a balance with my non-tracked life.  I recognize that storing and viewing data in itself will make you aware of areas in your life that need improvement and may even motivate you to make those changes.  This is where I see the usefulness of tracking.  

In the past I have attempted to adopt some self tracking methods.  Some have stuck while others have not.  In a way I feel like I have dipped my toes in the quantified self world here and there, but have never quite found my place.  I know that I would and do enjoy some tracking methods, I just haven't determined an organized method to the ways I adopt tracking.  Throughout this course, I hope to discover my place in this world of self tracking.  I hope to find applications that provide insightful data or optimize my workflow and health.  More importantly thought, I hope to learn what type of tracking I do not care to adopt.  In the end, I would like a tracking system that works for me that is relatively consistent but does not take over my life. 

I am still very much thinking through the type of data I would like to focus on tracking this semester.  The following are some of the areas that I have been thinking about but I am sure more will come to mind in these beginning weeks of the semester…

I have begun to track my sleep with my Apple Watch App called Pillow.  I want to use this data to look into how sleep changes my mood and how I feel throughout the day.  Consistently tracking my sleep will likely act as a nice correlation to other things I choose to track.  I would like to see what aspects of my day to day performance correlate to the time I go to sleep, my sleep quality, the hours of sleep I get, etc. 

With my watch I am also tracking my activity such as my workouts, my movement, and standing, etc. These will all also provide a good baseline to correlate to other things I track this semester. 

I am interested in noting my mood and general feelings day to day.  While I am a little worried about doing this in a consistent way, I am excited to use these results to compare to other factors.  Generally, I feel like a mood scale (1 sad - 5 happy) is not the best way to measure mood and seems like it could be somewhat arbitrary.  I would love to find an alternative method to cataloging how I am feeling that might provide more insight. 

I have always been a person that is specific about my work environment.  Most of the time I need to be alone and in silence to work productively.  In certain instances though I find I am able to work in a busy coffee shop.  Somehow, the way I set up my planner and my work station also seems to have an effect on my focus.  I would like to look into this and track my work habits. Perhaps I could note where I am working, what type of work I am doing, who I am working with, how fast it goes, how productive I feel the session went, if the work session had any distractions, if I completed the desired goal in the work session, etc.  Recording this information will allow me to better understand the requirements I need to work productively.  

Lastly, I would like to look into my phone use in some way.  I would not consider myself someone who is on their phone that often however I am very aware of this.  I would like to track what I do choose to spend phone time on and why.  I would like to track to discover if there are tools like app organization or coloring that change my phone behavior. 

Week 1: Self Tracking Projects Review

Project 1: Water Fasting; My 72-Hour (3-Day) Water Fasting Results


Fasting methods of various lengths are sometimes used as a metabolic reset for your body.  In this project, Quantified Bob completed a three day water fasting project to see its effect on his general health.  For three days, Bob only consumed pure water and consistently measured his blood glucose, ketone, and blood pressure levels.  The results of this experiment (Figure 1) initially showed Bob’s glucose slowly decreasing and his ketone levels slowly increasing.  Around hour 36, the glucose levels evenly stabilized while the ketone levels sharply increased.  Over the fast Bob’s blood pressure lowered significantly.

Figure 1 : Results of the Fast (https://www.quantifiedbob.com/water-fast-72-hours/)

Figure 1: Results of the Fast (https://www.quantifiedbob.com/water-fast-72-hours/)

Broader Significance:

This project is one short example of how one can track their health.  Through Bob’s comments/experiments we can all learn how our bodies respond to fasting and how the food we consume can effect so much more. 

Why it is interesting to me:

While the concept of a three day fast appears to me unhealthy in itself, I do appreciate the ultimate goal of this project.   By making himself the test subject, Bob is experimenting as a way of building awareness.  In the past I have tracked my food.  The act of tracking your food intake in itself makes you more aware and careful about the food you consume.  In a similar way, Bob is using these periodic fasts as a check on his body.  One aspect that I like about this project is that it exemplifies that no one is perfect.  The very reason one might want to do a fast is because they may feel that their eating habits have gone off track.  Since Bob is fasting periodically, he is recognizing that his eating habits may get away from him (and this is okay) but eventually a fast will get him back on track.

Project 2: Quantified Homescreens


A few years ago Betaworks collected information about the apps that appeared on 40,000 iPhone homescreens.  Ernesto Ramirez used this data to research information about the frequency and use of self tracking apps among these users.  Ultimately, this research found that iHealth and Day One had the most appearances among quantified self/self tracking applications.  The most popular dietary tracking application was MyFitnessPal while the most popular activity tracker was the Fitbit.  One surprise that Ramirez notes is the frequency of sleep tracking apps among these users. 

Broader Significance:

This research uses a huge dataset to determine trends in self tracking.  This project is a good example of a larger group contributing to a larger, more meaningful set of data.  From this data, Ramirez was able to observe trends in the quantified self community and identify where in our lives we decide to track and where we don’t.

Why it is interesting to me:

I appreciate the use of a collective data set for the benefit of the entire community.  I am also interested in how people organize their homescreens.  The way you organize your homescreen can facilitate or impede distraction and productivity.  I personally re-organize my homescreen periodically to made sure valuable space on my screen is not populated by unused or unwanted apps.  I try to keep social media apps off of my main homescreen and productivity apps at the forefront in order to guide my focus and how I use my phone.  

Project 3: Self-Care and Bullet Journaling


In this article, Tracy Halliday talks about her experience with bullet journaling as a form of self tracking.  Originally, Halliday used her bullet journal to organize her to dos and her appointments.  She noticed that this journal quickly became about her kids and not about her.  Thus she decided to begin a new journal which focus on her only.  In this project, Halliday focused on eight aspects of her own self care: personal care, psychological care, physical care, emotional care, professional care, spiritual care, environmental care, social care.  She explains how this system helps her lead a more balanced life. 

Broader Significance:

This example shows that bullet journaling is an analog form of tracking that can have a huge effect on a persons life.  Bullet journals do not only have to be for the artistic or the organized. A bullet journal should be a place to collect data and instigate action in your life. 

Why it is interesting to me:

I briefly used a bullet journal in the past and am interested in this analog form of tracking.  Writing something down seems to make you accountable.  Writing something down in a bullet journal somehow makes someone more aware.  I find this idea fascinating.  The fact that someone can hold themselves accountable to performing an action as a result of writing that action down in notebook that is unrelated to that action is extremely interesting.