A pomodoro timer that uses rails 3.1 and backbone.js
Ruby JavaScript
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
db
doc
lib/tasks
log
public
script
test
vendor
.gitignore
.rvmrc
Gemfile
Gemfile.lock
README.md
Rakefile
config.ru

README.md

Pomodoro Rails

Goals

Personal Goals

  1. To get back into rails and ruby. I don't spend enough time here.

  2. To use rails 3.1 and the assets pipeline.

  3. To learn Backbone.js.

  4. To write tests.

    "I am not a great programmer. I am just a good programmer, with great habits." -- Kent Beck

Project Goals

  1. To be unobtrusive javascript. A webcrawler should be able to crawl the site.
  2. To be simple and clean.

Desired Features

  1. A backlog List
  2. Todo Today List
  3. Ability to Estimate Work
  4. A timer that is "wound up"
  5. Ability to track internal and external interruptions.
  6. A graph that can be printed and emailed.
  7. A simple REST based api so that other applications can interface.

Ideas I am toying with

  1. Socket based timer. This would allow the user to 'accidently' close the page and come back without losing the pomodoro.
  2. Allow team based timers. This would involve sockets as well.

RULES

Taken From Appendix 1 of "The Pomodoro Technique"

  1. A Pomodoro Consists of 25 minutes Plus a Five-Minute Break (§2.1).
  2. After Every Four Pomodoros Comes a 15-30 Minute Break (§2.1.2).
  3. The Pomodoro Is Indivisible. There are no half or quarter Pomodoros (§2.1).
  4. If a Pomodoro Begins, It Has to Ring:
    1. If a Pomodoro is interrupted definitively – i.e. the interruption isn’t handled (§2.2.2) – it’s considered void, never begun, and it can’t be recorded with an X (§2.1.1).
    2. If an activity is completed once a Pomodoro has already begun, continue reviewing the same activity until the Pomodoro rings (§2.1.3).
  5. Protect the Pomodoro (§2.2.3). Inform effectively, negotiate quickly to reschedule the interruption, call back the person who interrupted you as agreed.
  6. If It Lasts More Than 5-7 Pomodoros, Break It Down (§2.3, §3.11, §4.2). Complex activities should be divided into several activities.
  7. If It Lasts Less Than One Pomodoro, Add It Up (§2.3, §4.2). Simple tasks can be combined.
  8. Results Are Achieved Pomodoro after Pomodoro (§3.8).
  9. The Next Pomodoro Will Go Better (§3.9).