gnome-pomodoro / gnome-pomodoro

A time management utility for GNOME based on the pomodoro technique!
http://gnomepomodoro.org/
GNU General Public License v3.0
2.01k stars 237 forks source link

Idea: set next Pomodoro start time #295

Open michaellenahan opened 7 years ago

michaellenahan commented 7 years ago

I would ideally like to be able to configure the following behavior:

If I start a Pomodoro at 13:16, I would like the first Pomodoro to take me to 13:25, then a five-minute break.

After that, I want it to start again at 13:30 and take me to 13:55, then a five-minute break.

So that: whenever I start my Pomodoro, it syncs with the nearest system-time hour and half-hour.

At the moment, I can do this manually by setting the initial Pomodoro to (say) 9 minutes, then setting it back to 25 minutes after my first break.

That way, I can sync my pomodoro time with my colleagues so that we have chat time at the same time together ...

I hope this issue makes sense ...

michaellenahan commented 7 years ago

A possible way forward would be to have a time-entry text field "I would like my next Pomodoro to start at" ... then in my case I would enter 13:30

By the way - I am a developer with about 15 years of web development experience. I have no experience in gnome extension building unfortunately ... but I would like to learn. I will go through https://developer.gnome.org/gnome-devel-demos/stable/beginner.js.html.en as a starting point.

Anyone out there willing to help or act as a mentor, or give some tips on how to complete this particular task? That would be great.

Or, if this task is too crazy or difficult technically or otherwise not a good idea, that would of course be useful feedback too ...

michaellenahan commented 7 years ago

2017-04-25-154438

kamilprusko commented 7 years ago

This method wouldn't scale well when changing pomodoro or break durations. I also don't like the idea of entering delays every day. And anyway, you may just switch to "Short Break" when going out - math would be the same ;)

Or... there could be a scheduling plugin for this. Let Pomodoro decide on durations, make durations adaptive. The scheduler would try to keep minimal durations and work/break balance. Maybe integrate with the calendar app, so that timer would switch to pomodoro during meetings.

Currently, states (pomodoro, short break, long break) may have custom durations - so not a problem. It would involve making the scheduler, UI and perhaps calendar integration (same as in gnome-shell).

Does this seem useful, or little bloatware-y?

kamilprusko commented 7 years ago

@michaellenahan as to starting with gnome-shell extensions - I recommend to start with extensions you use and are hosted on github. Debugging issues in GNOME Shell may be rough at first, so consider playing with gjs apps (like gnome-weather, polari, gnome-sound-recorder) first.

Useful links https://wiki.gnome.org/Newcomers/ https://wiki.gnome.org/Projects/GnomeShell/Development

If you need more specific help, you can contact me by email ;)

psukys commented 7 years ago

That definitely sounds like a possible plugin than something that would be put into core. AFAIK, this could be done via dbus, but not sure whether there are plugin hooks/techniques for scheduled tasks.