Technical details improved to match new implementation.
[wiki.git] / projects / clockworks.mdwn
1 [[!meta title="Clockworks"]]
2
3 ## Summary
4 So originally we were thinking, "Hey guys, I heard there was this app called [Doodle](http://www.doodle.com/main.html). It's closed source. Let's make an open-source Doodle killer and call it Clockworks!" More recently, we've been considering what we can do to help schedule things around MIT.
5
6 We have a mailing list - if you're interested in helping design the
7 app, just [let one of the developers know](mailto:clockworks@mit.edu)
8 and we'll add you to our mailing list, **clockworks**. Or if you just
9 want to hear more about what we're up to, blanche yourself to the
10 public list **clockworks-announce**.
11
12 ## History
13 Clockworks is in alpha phase; the most basic functions of the system are operational. A user can:
14
15 [X] Make an account via the online registration system
16 [X] Login to the web interface
17 [X] Create a very simple poll
18 [X] View polls
19 [X] Vote in a poll
20
21 The current implementation is in Django. There was an older Clockworks pre-pre-alpha implementation in TurboGears. 
22
23 ## Getting started
24
25 The best way to get started with Clockworks is to get yourself added to the project, grab a copy of the code, get it running on your laptop, and then poke around the source code.
26
27 First, make sure you have Git installed on your system. You can grab it [here](http://git-scm.com/download). Verify that it installed by popping open a terminal and running **git --version**
28
29 Next, grab the source code.  If you have Debathena installed on your machine, you can clone the source using **git clone /mit/clockworks/clockworks.git**.  If not, you can use a dialup to get to the directory; **git clone ssh://username@linerva.mit.edu/mit/clockworks/clockworks.git** works well. If the clone succeeds, you will now have a folder named "clockworks".  **cd clockworks**
30
31 Now, to install the application according to the instructions in the repository.
32
33 Once you're running, here are some paths to take:
34
35 1. Take a break and read some Django documentation to get a feel for the framework
36 2. Browse through the todo list, pick a task that seems interesting, and start working on figuring out how to make it work
37 3. Browse the source, fiddle with some variables, see what changes
38 4. Decide what clockworks should look like, and take off
39
40
41 ## Development info
42
43 Our Git repository is located in AFS in the clockworks locker: /mit/clockworks/clockworks.git
44
45 The repo contains a Django project.
46
47 ## Potential Future Dream Goals
48
49 Doodle killer. Extra features. Pump it up.
50
51 * Better UI
52 * Integration
53   * Basic: integration with ICS calendars, GoogleCalendar, Exchange, and TechTime (for faculty)
54   * Advanced: integration with MIT's course schedules, Facebook
55   * Would store persistent profiles of calendar data for users
56 * Automatically prioritize and schedule events for you
57 * Create mobile phone friendly version
58 * View of a single calendar month should show "ghosts" of days from immediately previous and immediately past months, to fill out all the weeks.
59 * Ability to convert Yes/No polls into Yes/Maybe/No polls (and vice versa)
60 * When setting up a new poll, ability to copy-paste the times for any arbitrary row into any number of other arbitrary rows
61 * "Generic week" function
62   * Indicates that the response is for a weekly meeting, not a specific date.
63
64 ## Developers
65
66 * Paul W. Quimby
67 * Andrew Farrell
68 * Geoffrey Thomas
69 * Paul Baranay
70 * Edward Yang
71 * Paul Weaver
72 * Xavid Pretzer
73 * Christian Ternus
74 * David Benjamin
75 * <a href="mailto:clockworks@mit.edu">You?</a>
76
77