YTMND:TODO
From YTMND
YTMND TODO List
Version 1.10 [2006-08-16 14:55:36 CST]
[ Legend ] *- Bug. @- Possible feature or something I am bugged about constantly. +- New Feature I want to add. !- Current state or general information. [ USER LEVELS ] +- Implement and enforce user levels (somewhat in place). Level 0: Users who aren't signed in. Level 1: Users with an account that has not been confirmed. Level 2: Users with a confirmed account. Level 4: Paid users. Level 8: Moderators. Level 16: Administrators. Level 255: Max. [ COMMENTS ] @- Nested comments to allow people to reply to comments (requires layout changes) @-- Maybe use do a mechanism like Livejournal's nested comments, or digg's comments @-- with a +/- system to get rid of trolling. @- Ability to delete comments on your sites. @- Comment paging for sites with a ton of comments, maybe AJAX. [ FILE SYSTEM ] +- "56k" option to prevent users from opening huge sites. @- Add site size information to site profile and possibly sites table *- Figure out the bug randomly causing sites to be batch edited. *-- I've already tried editing a site and uploading a previously used sound file. *-- and editing a site and using a new file. *-- Things to look into: the asset management system, site creation/editing code. !-- 6 months later: I have yet to see this pop up again [ USER PROFILES ] @- Real user profiles, same sort of information vBulletin has, with some other good info to create fun @-- statistical information from. @- Avatars (would need to figure out where on the site they are shown). @-- Possibly open up avatars for everyone but allow paid members to have slightly larger avatars. @- Discuss the addition of user comments and user ratings (like a myspace (ugh) wall) [ PRIVATE MESSAGING ] +- Get rid of the POST shit on every page clicking back and forth. *- There is some sort of duplicate messages bug. (Back button related.) *- Blocked users still cause your messages icon to light up. +- Option to email user when they get a new PM. +-- Sub-option to not be spammy and only send 1 email until next login. @- Easy way for me to mass message people or mods. [ DONATIONS ] +- Redo donations page completely. +-- Create new tabbed area like users page with: +-- Donations this week, donations this month, donations all time, +-- donations by user, donations by site. +-- Focus on recent donations more as they can get lost easily. [ SESSIONS ] +- Standardize sessions, use a wrapper session class. @- Decide which session engine to use, or if you should just create your own. *- Figure out YTMNSFW age check issues. [ KEYWORDS ] +- Put more keyword info in when users search. +- Add more to keywords interface. +- Limit # of keywords on site creation. +- Allow users to report keyword abusers. +- Keyword live updates, latest popular keywords content box. [ CONTENT CACHING ] !- For the last year or so I've been using memcached for content caching (any query that takes longer !- one second to run) for the content boxes and subpages of YTMND. This is all fine and dandy except !- memcache gives no control over cache expiration or priority, meaning memcache has to be restarted !- When it fills up or some weird stuff can happen, ie. content boxes/pages never getting filled. !- Restarting memcached means taking the site down for 5 minutes to repopulate all of the variables. !- !- This is obviously a less than optimal setup. !- This isn't a permanent solution by any means but I think it will help greatly: +- Move all cached search results to a separate memcached server that gets flushed at 4am nightly. +- Create a cron mechanism that populates the critical variables for emergency use. [ SEARCH ] +- Bring back recent searches (yes, I miss this just as much as you do) +-- I don't however miss the huge amount of dumb ass sites with screenshots of it. +- Advanced Search !-- Once the front page is converted I can drop the temp_site_list crap and make a real search engine. !-- Need to investigate whether or not creating a hash table with all the site meta data !-- is worth it for full text searching. !-- In my opinion, the search used to be way better before I switched to fulltext (although it's hard !-- to say how it would hold up now) +-- Default search: title, keywords, description. In that order. +--- Advanced options include boolean (-word +word, etc) +--- Ability to search just sound and image origins +--- Ability to search subsets like: +---- Made by user: +---- Has keyword: +---- etc. [ CONTENT BOXES / FRONT PAGE ] +- The front page is going to change drastically. !- The default front page will look like: ------------- | YTMND | ------------- |N| NEWS |A| |A| |D| |V|---------| | | | SP | RC | | | | | | | ------------- !- SP = sponsored sites !- RC = recently created (live update using ajax) !- The NAV area will look something like this: !- Search Advanced Search Top Rated YTMNDs - This week - Today - Yesterday - This Month - All Time Top Viewed YTMNDs - ... Random YTMND Sponsored YTMNDs Moderator Favorites YTMND Hall of Fame Commented On YTMNDs - ... Top Favorited YTMNDs - ... Most Linked To YTMNDs - ... Classic YTMNDs !- The idea is at some point provide a google.com/ig type setup where users can customize their front page. !- When the front page changes, all users will be forced to use it this way for a while. I think it's going to !- be such a drastic change that some users won't be sure what to look at. The bias of the top 15 and top rated !- will almost no longer exist, so I'd like to give users some time to get an idea of what they will be looking !- at the most. @- I'd like to make a "digg spy" type page that shows in real time all votes made on sites, sites being created etc. [ REPORT THIS SITE FEATURE ] +- Build an admin side. +- Elaborate on information the user can provide, maybe pre-filled drop-downs. +-- Marked as work safe when not work safe. (I have yet to ever even look at any of these.) [ USER LOGINS ] +- Clean up and rewrite the code so it uses the to-be-written session class. +- Maybe bring back the [ ] remember me. +- Maybe do a loose login system like amazon +-- Always logged in, requires a password to do important things like add/delete/edit sites/options? *- Change the information stored the cookie so it isnt so insecure. [ USER SIGNUP ] +- Rewrite completely. +- Get more meta data (like age, contact options, sex, etc) +- Make people agree to the TOS *- Completely redo the captcha without sessions/cookies, it's causing too many problems. +- Better IP tracking, like the forums but with a warning system and a decay. [ SITE VIEWS ] +- Insert a row on each site view with: (IP, site_id, referring url). +- CRON job uniqify's views and stores a small amount of referring url data. +-- Figure out a way of doing this without storing massive amounts of data. +- Maybe show referrers on site profiles. [ YTMND STORE ] !- schema started +- Real shopping cart. multiple tables and most likely a separate db. +- Site sponsorship done through store. [ FORUMS ] +- Integrate the account creation and user signup so there are no longer two accounts. +- Integrate banning/deletion features so when a user is deleted his forum threads and posts are deleted as well. !- New forums waiting on this to open. [ EMAIL ] +- Inject a unique message ID and then a qmail script to parse the information into a db. +-- This way when all the idiots sign up and they require human white-list interaction it can tell them +-- to fuck themselves when they send 1000 emails to support. +- Create a tracking mechanism for when a user has received an email to keep YTMND from spamming them. +-- To avoid sending multiple alerts/pm notifications between logins. [ SUPPORT ISSUES ] @- Decide whether or not to buy kayako, would be really useful but requires apache and zend optimizer. [ ADMIN.YTMND.COM ] +- Major clean up needed, move to new cvs. +- More web stuff, less shell scripts. +- Something other people can use besides me, like moderators and administrators. [ CLEAN UP ERRORS AND WARNINGS ] +- Create a generic error handling class (this should be easy now that we are on PHP5) *- All pages that just consist of die messages or warnings should go through an error class of some sort [ RSS FEEDS ] !- RSS is something that would be extraordinarily easy to add, and would be a great feature. !- The reason it hasn't been done yet is that 95% of the ad revenue that supports YTMND's !- hosting is from people going to www.ytmnd.com, ie: people use rss feeds instead and !- YTMND can't pay for hosting. !- Until I can figure out a way around this, it would be suicide to RSS up everything. [ NEWS ] +- Make an Admin CMS for news. *- Don't let users post comments on news where live='n' [ HELP SECTION/FAQ ] +- A help section with common problems and solutions. +-- This should be in the wiki, and since no one has created it will probably never happen until +-- YTMND can pay someone to do it since I am completely unwilling. [ HASH TABLES ] +- Rename hash tables so they are easily identifiable as so. +- Get temp_site_list updated up to the second like temp_comment_list. [ USER LOGINS ] - Clean up and rewrite the code so it uses straight sessions. -- Redo the cookie so it isnt storing a password. -- Log new IPs on login, for accounting like VBulletin. [ ALGORITHMS THAT NEED WRITING ] +- Site recommendations. [PAID?] !-- I wrote a "users who like this site also like these sites" feature. +- Similar users. +- Do something with user dupe information [ MODERATION ] +- Auto NSFW anybody user moderation. +-- If > 65% (?) users vote NSFW, auto NSFW the site. +- Streamline and prioritize the moderation process so its faster. +-- Write some sort of approval interface. +-- Integrate the entire mod panel with admin.ytmnd.com +-- Get rid of the frames, they are too clunky and should be integrated with each site. +-- Allow moderators to mark an asset like they do sites. +--- This will allow moderators to mark all sites using an image or sound as "nsfw" or "kill" +--- effectively making an easy batch moderation, especially good for duplicate sites. *- If a site is NSFW'd mark it as "flagged" on edit instead of unknown, to avoid people *-- who are trying to get around NSFW'd sites. [ MODERATION POINT SYSTEM ] @- Moderators can give users warning points for various actions that break the TOS. @-- Warning points have a decay and users will be PM'd/emailed when they get warned. @-- When a user reaches a certain number of warning points they will have various @-- actions taken against them: @-- @-- Inability to vote/private message/site comment/news comment. @-- Temporary or Permanent Banning from the site. @-- @-- Points will be given out for actions such as: @-- Comment spam/inappropriate comments (ie: racial slurs, etc) @-- Innapropriate content @-- @-- Obviously this will have to be worked on more by the moderation team. @-- @-- This would consist of both front end enhancements and admin.ytmnd.com tools. !- This will give me the ability to hand some of the real moderation (which consumes !- so much of my time) over to other people. !- There will obviously need to better checks in place for abuse of power than the current !- mod setup. [ LISTS ] !- The lists back end is complete with basic functionality. !- It currently supports the user favorites but is much more !- powerful. It also supports custom made user lists: !- IE: Get to know NEDM or Worst of What is Love? or Inkdrinker Approved etc. !- As well as lists managed by multiple people (group lists, such as moderator favorites) *- Remove all of the user watch list stuff from lists, functionality being moved to alerts. +- Ability to add more than one note per item per user. +- Write interface for custom made lists. +- Write interface for list permissions/group permissions. @- Maybe a global fads list and let people take over maintaining a fad list. (ugh) +- List ordering +-- The back end is sort of there, but the functions aren't in the class. [ SITES ] +- Build a protection mechanism to keep sites from being accidentally deleted +-- (especially useful for hall of fame). @- Possibly require sound and image origin fields. +- Add a "PRIVATE" option. Won't show up in searches, keywords, front page, random etc. [ SITE TEMPLATE ] +- Make a CSS file for christs sake. +- Complete re-do of sound code. Needs to be a lot smarter and take into account user preferences. +-- For instance, allowing the use of media player on firefox, which would solve a lot of sound woes. +-- Make a sound discovery javascript routine. [ STANDARDIZE SITE LINK DISPLAY ] @- Go through and make sure every link that links to a sub-domain opens in a new window. @- Standardize the way a site title and votebar is displayed. @- Possibly make icons for the site list which show sites that are ws/nsfw and sites that are in the HOF. [ WEIGHTED VOTING AND SITE DELETION SYSTEM ] !- THIS WILL REQUIRE A LOT OF DISCUSSION! !-- I don't feel this is a feature I should add without a LOT of user and moderator feedback. !-- This will GREATLY sway the score of sites (and possibly in the future users etc). !-- !-- I really don't want people to resort to automating the use of the site to get higher score. !-- and I know they will so I'm not sure if it's even worth it to add this (I could randomly !-- show captchas but that would be more annoying than worth it. @- Create a score for each user based on a plethora of information: @-- Signup date. (Older is better.) @-- Number of votes (obviously people with > x thousand votes would get nulled. @-- Site Score divided by Number of Votes ( this would be recursive ) @--- Try not to give users like Syncan super powers, and try not to make new users completely useless. @-- Your vote compare to average vote (Do we have to assume the average vote on each site is correct?) @--- Or if not at what number is a site's rating considered correct? (10 votes? 50? 100?) @-- Activity on the site (a simple calculation of how active a user is) @-- User votes (a rep system like vbulletin but much less swayable) @-- Warning or reward points given out by moderators and administrators. @- Votes would be a multiplier on User score*User vote. @-- There would have to be a maximum and minimum multiplier. @- Treasure/Trash System !-- There is too much garbage on the site, and it shouldn't be up to mods to clean it up, it should !-- be up to users. @- Based on your score you get a certain number of "Treasure" or "Trash" votes per day (or week/month etc) @- Newly created sites will have "Treasure" and "Trash" buttons available to all logged in users. @- During this "trial period", site profiles will have a separate tab with trash/treasure votes @- and comments from each user. @-- Sites with a certain number or percentage of "Trash" get added to the deletion queue: @--- The sites will be listed on the deletion queue page, and when viewed will have a notice near the @--- top warning of deletion. The site will be listed for ~ 2 weeks and if it isn't saved by "Treasure" @--- votes, it is deleted. Possibly force a change to "PRIVATE" instead. @-- Sites with a higher percentage of "Treasure" votes will be highlighted on the front page or other @-- pages. [ DONATIONS/SPONSORSHIP ] +- Show users contributions on user profiles. [ YTNNSFW ] +- Enable NSFW warning option +-- Enable spammier "unknown" warning option. +-- Only force users leveled 0 and 2 (with the option set) to go to YTMNSFW.com. +--- Otherwise let logged in users (over the age of 18?) see NSFW conten on YTMND.com +--- Default to warning on. [ RANDOM ] +- Make user prefs for random ws/nsfw'ness. +-- default to s and x on ytmnd.com and n on ytmnsfw.com [ USER PREFERENCES ] +- Make a better system for user options. [ FRIENDS ] (super ugh) +- Ability to add someone as a friend (confirmation required). +- Friends list, with online/last login status, PM button on each. [ GROUPS ] (double super duper ugh) !- User groups @- Any user can create up to five groups and be a member of up to 25. @- Member post board of some sort. @-- Extremely simple forum thing. @- Group favorites/site lists/recommendations dealy. @- Group news page. @- Public and Private group types. @- Group authored sites? (oh my!) [ ALERTS ] +- Allow users to set an alert on site titles, keywords, origins etc. !-- Needs a checking mechanism which does a search to check for returned results. !-- Otherwise idiots will add alerts on stuff like "a" and receive 1000 alerts an hour. +- Option to Automagicly alert you when your friends/groups have made new sites. +-- Or just a list. @- Alerts page, PM option maybe? [ FLASH PRELOADER ] *- Make it work in Opera. *- Trigger text overlay after preloader loads everything. +- Make option for resynch every X loops. *- Figure out remaining IE bugs. *-- Crashes. *-- Sound doesn's stop when you hit back, or leave page. *-- Doesn't work if there is an ad on the page (not sure if it's IE specific) !- Hammering out the bugs will allow us to make it an option to play all MP3s through flash. [ DON'T FORGET ABOUT POLAND ] +- YOU FORGOT ABOUT POLAND. [ SET UP YTMNDEV ] +- Get on it, asshole.