tryhardfifi / breathe

breathe is a (distraction-free) peripheral breath trainer, it helps you breathe correctly so you can stay calm and focus on what matters.
265 stars 5 forks source link

Option to progressively extend the length of periods #5

Closed sojusnik closed 4 years ago

sojusnik commented 4 years ago

When doing lengthy breathing sessions, my lungs easily adapt to the fixed periods (inhale, hold, exhale, hold) longing for a gradual and subtle increase of those periods in order to deepen the joy of conscious breathing and also to train my lung's capacity. Manually extending the custom periods while breathing isn't working well, because it gets me out of the flow.

So the following idea came to me (while enjoying a breathing exercise, of course): Having three additional entries in the settings would allow the user to progressively increase the length of all periods at once. The first entry would define the time period (in minutes) after which the increase should happen, while the second entry adjusts the strength of the increase (in deciseconds = in steps of 0.1 seconds) and the third entry defines how many times the extension should take place.

This would make it possible to extend those periods by 0.3 seconds every 5 minutes for 20 times, as an example.

The progression setting could be added to the main settings window. Three simple horizontal or vertical input steppers (something like this or the right version here) would, IMHO, be sufficient. This section could be titled "Progression", with a short text like:

Increase the length of each period every "insert input stepper here" (in minutes) by "insert input stepper here" (in deciseconds) for "insert input stepper here" (times)

When the value of the first entry is "0", then no progression is added, just as it is now.

While it could be useful to have such an option for each period, I think that it would be enough that those settings apply to all periods at once, because breathing exercises are mainly about sticking to a certain pattern where the ratio of the periods is more important than f.i. prolonging the exhalation.

Would love hearing your opinion!

tryhardfifi commented 4 years ago

Hey, thanks for taking the time to comment your idea! I think your feature is awesome! I have been using breathe extensively this last week and I also found myself constantly getting out of flow to increase each of the steps and see how much I could take.

Probably everyone who uses breathe wants to progressively get better at breathing. I am super on-board for this feature.

I like the UI you described a lot, I find it very straightforward. I want to show you how the settings look right now to ask you a question.

Screenshot 2020-08-06 at 18 33 16

Now, my question is: do you think we could use an existing exercise as a starting point for the progression to start? I did a little draft of the UI you described:

Screenshot 2020-08-06 at 18 43 51

What do you think?

I am quite a noob in breathing exercises so I am not sure, but I also find that the ratio of periods is the most important while doing a particular exercise. We could start implementing this and go on from there.

Again, thanks for this idea 🚀

sojusnik commented 4 years ago

Sorry for replying late, was quite busy these days.

Totally love your implementation and can't wait to try it on Ubuntu. As you've said, it's a good start.

Keep up the good work and happy breathing :)

PS: A small remark regarding the description of the progression. I would change the text to:

Increase every XXX by XXX for XXX

While looking at your mockup, I also think that "deciseconds" could cause confusion, replacing it with seconds and adding a decimal to the stepper would be more meaningful for the majority.

tryhardfifi commented 4 years ago

You are totally right, the text is much clear as you said, thanks! 😄

tryhardfifi commented 4 years ago

Hi! The new release (that has this feature) is already available! You can download it here! I will close this issue for now, if you have further suggestions I will be glad to re-open it 😄

sojusnik commented 4 years ago

Congrats! I will wait until the Linux version is ready, since I'm using Ubuntu.