-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathNOTES.txt
40 lines (29 loc) · 1.75 KB
/
NOTES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
SPEC FOR COUNTER
A user downloads the program and opens it.
On load:
if '...Logs/...bk' is NOT found, it automatically backs up your logs / moves to LogsBackup (I have 32 MB of them - make sure that processing 300 MB worth of logs is feasible) and runs convert_new_format() on the folders. Also upon initial run, existing logs are read into the db (in the future, we'll only care about ones that have been created since we last checked.) and indexed by the db. We're collecting per-conversation stats as well as building indices on words and word counts.
else, just load GUI and prepare to load stats as the user needs
UI-wise, I'm not sure yet how this is going to play out, but here are some of the main statistics I'd like to show:
v1:
[x] conversation size (in bytes and messages) / user / time
[x] conversation length (time wise) / user / time
[x] conversation skew (who ims whom first, who dominates)
v2:
[x] some indication of time of day conversations typically happen
[x] GUI work to improve toggling, etc
[ ] allow multiple local users?
v3:
[ ] most common words used in conversation
[ ] how quickly the im happens after the window opens (?) or the user signs on
v4:
[ ] intelligent / manual contacts matching across protocols
== TODO
[ ] HIGH-LEVL CLEANUP
[x] change some module-level functions into classmethods?
[ ] actually think through MVC (do we really need buddy_summary AND
buddy_log_entry?)
[ ] add in some decent testing once logic is separated out more cleanly
[ ] get py2app packaging finally working!
- possibly useful: http://mail.python.org/pipermail/pythonmac-sig/2011-June/023167.html
[ ] expose actual initiation rates in counter (easy win: show # in legend)
[ ] sort by http://www.evanmiller.org/how-not-to-sort-by-average-rating.html