rax: (vulpix is not pleased)
Rax E. Dillon ([personal profile] rax) wrote2011-12-20 11:28 pm

pkmncollectors feedback spec

If you don't care about pkmncollectors, you can ignore this post. LJ's fuckage is the impetus for making a new feedback system, but really pkmncollectors needed one anyway. I feel nervous about writing this myself (god I am so fucking rusty it is embarrassing) but I have done things like this many years ago and also Krinn said she would help and she is way better at this stuff sooooo... this should be possible. Basically we want ebay feedback, but not on ebay, and tied to openID. Here's what I think it needs to be able to do. 

OPENING PAGE:
  • "this is the pkmncollectors feedback system, blah blah text"
  • form: enter openid username, get list of feedback for them on new page
  • form: go to "insert feedback" page using openID login
FEEDBACK DISPLAY PAGE:
  • provide the total number of positive, negative, and neutral feedbacks at a glance
  • display a table of all of the feedback that exists for that user
INSERT FEEDBACK PAGE:
  • your openID should already be determined
  • you enter a username
  • radio buttons: positive, neutral, negative
  • comments section (optional)
  • link to transaction (optional)
CONFIRMATION PAGE:
  • it says "yup, your feedback worked!"
  • maybe just do the feedback display for that user so you can confirm it yourself with your very own eyes and/or screenreader and/or perl script
FEEDBACK DATABASE:
  • feedback giver openID
  • feedback receiver openID
  • positive/neutral/negative status
  • edited to add once I started working: buy/sell/trade!
  • comments for transaction
  • link to transaction
  • edited to add once I started working: date!
BACKEND:
  • for now, just run this on autumnfox.akrasiac.org
  • probably this can be done in sqlite, it's like one table, oh look python and sqlite are already friends
  • have someone make sure I wasn't a complete idiot about security
  • like every language has openID modules but probably I only care about python and/or apache
THINGS TO CONSIDER FOR FUTURE VERSIONS:
  • banned users
  • what if someone is lj user rax but twitter user rax also uses pkmncollectors?
  • some way to delete feedback without having database access (maybe a separate beefier mod interface)
  • spin off onto its own VM or just onto sunyshore
  • pretty pictures of plush pokemon
  • other stuff

[identity profile] paperoid.livejournal.com 2011-12-21 08:42 am (UTC)(link)
Reading this, seems like you've got all the necessary bases covered. Though a general question is how to deal with the practice of revising feedback. Many users will leave negatives and adjust them to neutrals after things get fixed up. I think being able to edit previous feedbacks is a bit too much to ask, but having the option to delete previous ones should definitely be implemented later.

[identity profile] rax.livejournal.com 2011-12-21 03:34 pm (UTC)(link)
Last night I dreamed about making the database have a table of usernames and then a table for each usernames, but I don't think that's a version 1 feature; if pkmncollectors gets to 10000 transactions in a couple of years, then the database might hit 40MB of RAM in two years as it is now, maybe (if each transaction is 4K which is unlikely). It's always possible to change this later; I don't think it's worth doing right now. If you know more about databases and think I'm wrong, let me know!

[identity profile] rax.livejournal.com 2011-12-21 05:39 pm (UTC)(link)
Hmm, what about buy/sell/trade?
eredien: Dancing Dragon (Default)

[personal profile] eredien 2011-12-22 02:41 am (UTC)(link)
I think having a database like this is a very good idea. As [livejournal.com profile] paperoid said, the ability to revise feedback is important.