Author Topic: masochism.  (Read 15893 times)

The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers

  • Administrator
  • Level 96
  • *****
  • Posts: 19211
  • Fell Points: 17
  • monkeys? yes.
    • View Profile
    • herb's world
Re: masochism.
« Reply #15 on: October 26, 2009, 09:41:10 PM »
I've decided to call it Spork (note that all of this is before I've even decided to make it). I have names for some of the modules too. The Sidebar is Salad. The blog recycles the title for my old blog: Bloggo. The comic one remains at Galactibase. The gallery I'm thinking of calling Revue.

Note that this is more or less a first brain storm. If you think of other stuff it needs, suggest them.

Front page:
5-10 most recent posts (defaults to comic, announcements, blog posts, media, important forum posts, configurable)

Site Wide:
Universal appearance for all features, one style source
Once user table for all modules
SEO/Mod-rewrite features built in.
RSS subscription abilities built in.
WYSIWYG editor/code view editor for all posts
Next/prev/first/last posts within module
Digit, stumbleupon, etc links.
Related links (inter- or intra-module) (match on tags, storyline, people)
link to login/register/administer options
captcha for registration
age-based topic/comment locking
module-based themes.

"Static" pages
made from templates
Dynamic links builder
dynamic FAQ builder
About page

Sidebar:
Can be moved from side to side or on top
Menu
Tag cloud (by module or site wide)
Categories
Search
Hot/popular topics by module or overall
Recent posts
Online users
Calendar showing recent posts (or posts for era if in archive)
chatterbox
custom blocks (for short HTML/PHP bits of code that can be moved like other sidebar blocks)

Users:
Display name separate from login
Real name
Email
IM contacts (MSN, Yahoo!, AIM, Skype)
 additional fields for other IMs
Photo
Avatar (Gravatar compatible)
Location
Bio
Interests
Birthday
Position (admin, moderator, editor, etc)
Class/level system like TWG
Modules interested in
Gender
Websites (blog, homepage, facebook, myspace, LJ, twitter, last.fm, nanowrimo)
 additional spaces for other social network sites
Site clans?
Games
Posted items
Favorite posts

Forum: (Simple Machines)
Karma system
Unread posts
Recent posts
Stat tracking
Ban by user/ip/email/address
Keyword and user searches
Categories for subforums
Move posts
Move threads
Move subforums
Delete posts
Spoiler warning/protection
Hide/ignore users
Favorite users
Subscription by subforum/thread
Group/clan threads or subforums
admin undoable user moderation (most experienced posters can do moderation that can be approved or undone later)

Comics: (Galactibase)
View one at a time or by week
Posting comic creates forum thread (date/title of comic is default name)
News items related to comics appear below ("news item" may be commentary) – may or may not be a blog post
Custom alt text
Space for site wide announcements
Track date written and edited
Story arcs, categories (for multiple topic comics)
Keyword tags
People tags
Characters can have user pages, their posts features will like to their comics
MUST BE CURRENT COMIC LANDING LINK
Record dialog
JS based arrow key navigation

Blog: (WordPress)
Multiple blogs – mark fiction/journal/article
Mutli-tier categories (inherit properties)
Keyword tags
People tags (link to their profile, FB, twitter, whatever)
Mark author, date written, date edited
Choose ordering for each category
posting blog creates a forum thread with post name as default thread title
automatic trackbacks
fiction posts have storyline too

Gallery: (Gallery 2)
Configurable number of items per page
Keyword tags
People tags
Sort by date, tags, size, type
Edit: rotate, resize, add text, add watermark, zoom, download, print, moderate

Wiki module:
Like Wikipedia, user editable only however

Merch:
Use gallery elements, related items
Item thumbs and larger view (auto generate thumbs)
Item description
Shopping cart.
use any pay system (paypal, etc)
user ratings
coments, price, sale prices, quantity

Archives:
Sorted by tags, date, cats, author, storyline; ascending or descending
By module, whole site, or set of modules
Month calendars

Search:
Integrated or separated, multi-module search

Site Admin Configs:
Turn on/off modules
Order sidebar (drag and drop)
Turn on/off headers/footers/left bar/ right bar
Themes
   Built in theme editor, both WYSIWYG and code
   WYSIWYG drag and drop elements, click element to chose color
Turn on/off any type of optional links
Create, edit, administer posts (click post and then choose module, or click module then click post/edit/administer)
Administer users
Stats

User Configs:
Choose theme
Choose default landing page
Default search options
Default archive options
More/less archive links for their post views.
« Last Edit: October 27, 2009, 03:02:40 AM by The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers »

stridera

  • Level 6
  • *
  • Posts: 154
  • Fell Points: 0
  • Fantasy Programmer
    • View Profile
    • Strider's Realm
Re: masochism.
« Reply #16 on: October 26, 2009, 10:55:17 PM »
Dear god...   I'll just respond inline... way too much for me to remember here!  Just look for the italics... I'm way too lazy to stop and start the quote...

I've decided to call it Spork (note that all of this is before I've even decided to make it). I have names for some of the modules too. The Sidebar is Salad. The blog recycles the title for my old blog: Bloggo. The comic one remains at Galactibase. The gallery I'm thinking of calling Revue.
Strider:  Bloggo, sounds like a drain cleaner.  You need a bacos, because everything is better with bacon.

Note that this is more or less a first brain storm. If you think of other stuff it needs, suggest them.

Front page:
5-10 most recent posts (defaults to comic, announcements, blog posts, media, important forum posts, configurable)
Strider: Ahh, the good ole front page.  You get into the trap of making it too configurable, and thus too database heavy since it has to 'create' the page for each request (which is fine if you want to stay small/cheap) or static (after each update, create a static page so all 'browsers' can view it w/o using any processor power.  Or both, only display dynamic for signed in users.  I'm sure this is all old news to you... just rambling.

Site Wide:
Universal appearance for all features, one style source
Once user table for all modules
SEO/Mod-rewrite features built in.
RSS subscription abilities built in.
WYSIWYG editor/code view editor for all posts
Next/prev/first/last posts within module
Digit, stumbleupon, etc links.
Related links (inter- or intra-module) (match on tags, storyline, people)
link to login/register/administer options
captcha for registration
Strider: All seems pretty general.  I would suggest making everything a template.  RSS is pretty standard and just uses a different template than the general pages.  This allows you to easily add rss feeds for comments, individual threads, or whole weblogs, etc.

"Static" pages
Dynamic links builder
dynamic FAQ builder
About page
Strider: As mentioned earlier, might be good to make a module that 'creates' static pages.  This would help lessen the load on commonly hit pages.  You can also have a grim reaper module that 'kills' old threads and converts them to static pages.  This way there's no information lost and people can't raise the dead.

Sidebar:
Can be moved from side to side or on top
Menu
Tag cloud (by module or site wide)
Categories
Search
Hot/popular topics by module or overall
Recent posts
Online users
Calendar showing recent posts (or posts for era if in archive)
Strider: Recent posts sounds like the same thing as the homepage.  A chatterbox might be fun, depending on your tastes.  Most sites show online users at the bottom of the page in a footer of some sort, so you might just want to keep them there.  The tag cloud/categories/search/calendar are all good.

Users:
Display name separate from login
Real name
Email
IM contacts (MSN, Yahoo!, AIM, Skype)
Photo
Avatar (Gravatar compatible)
Location
Bio
Interests
Birthday
Position (admin, moderator, editor, etc)
Class/level system like TWG
Modules interested in
Gender
Websites (blog, homepage, facebook, myspace, LJ, twitter, last.fm)
Site clans?
Games
Posted items
Favorite posts
Strider: Games that give points that are tied to your title might be fun.  It would definitely encourage people to spend time on your site.  The problem is getting/creating the games.  Also, make the website/links field expandable.  It's annoying when a site only has a couple options, but forgets a site I like.  (In this case, nanowrimo user page would be a site relevant to these forums)

Forum: (Simple Machines)
Karma system
Unread posts
Recent posts
Stat tracking
Ban by user/ip/email/address
Keyword and user searches
Categories for subforums
Move posts
Move threads
Move subforums
Delete posts
Spoiler warning/protection
Hide/ignore users
Favorite users
Subscription by subforum/thread
Group/clan threads or subforums
Strider: Another system that I've seen work well is a rank/power system.  The users who post the most can moderate the system (temporary until approved by a real mod.)  This helps quickly remove dangerous links to viruses, child porn, etc.  Of course, this power can be revoked by the gods if abused. :)

Comics: (Galactibase)
View one at a time or by week
Posting comic creates forum thread (date/title of comic is default name)
News items related to comics appear below ("news item" may be commentary) – may or may not be a blog post
Custom alt text
Space for site wide announcements
Track date written and edited
Story arcs, categories (for multiple topic comics)
Keyword tags
People tags
Characters can have user pages, their posts features will like to their comics
MUST BE CURRENT COMIC LANDING LINK
Record dialog
Strider: And javascript to move pages around similar to the photo gallery.  In fact, if you could make the system react just like a gallery, that would be awesome.  I get annoyed when I'm reading a comic that has been around for a while and after each comic I need to search for the "next"/"Prev" link... if I could just hit the left/right arrow on they keyboard and continue reading, that would be awesome.  Alt-Text is somewhat annoying since some browsers don't display the whole string, some people don't even know it's there, and it vanishes quickly.  As much as I love XKCD, I wish they just displayed the text as a caption.

Blog: (WordPress)
Multiple blogs – mark fiction/journal/article
Mutli-tier categories (inherit properties)
Keyword tags
People tags (link to their profile, FB, twitter, whatever)
Mark author, date written, date edited
Choose ordering for each category
posting blog creates a forum thread with post name as default thread title
automatic trackbacks
fiction posts have storyline too
Strider:  One thing I'm working on with my webpage is making a system for each major category.  For example, I have three section: Blog, Writing, and Programming.  I want it to show a personal theme for my blog, a fantasy theme for writing, and a techy/coding theme for programming.  I think it would bring personality to each page.  As for person tags, how do you decide where it goes?  Does each user get the option?  Also, the ability to export the page would be good too.  Allows you to do custom backups or move to another system later on if you wish (blasphemy!)

Gallery: (Gallery 2)
Configurable number of items per page
Keyword tags
People tags
Sort by date, tags, size, type
Edit: rotate, resize, add text, add watermark
Strider: Zoom, option to save image, mark offensive (depending on who is allowed to post).. or even just moderation ability.

Wiki module:
Like Wikipedia, user editable only however

Merch:
Use gallery elements, related items
Item thumbs and larger view (auto generate thumbs)
Item description
Shopping cart.
Strider:  Ugh, I had to make a shopping cart system for my Masters Project... and it was a pain in the ass.  Make sure you have a module system here so they can add the type of cart they want to use (paypal/google checkout/yahoo checkout/msn checkout/local credit card system/etc).  Don't forget: User Ratings, Comments, Price, Sale Price, quantity, etc.

Archives:
Sorted by tags, date, cats, author, storyline; ascending or descending
By module, whole site, or set of modules
Month calendars

Search:
Integrated or separated, multi-module search
Strider: Modules should supply user searchable database rows with friendly names.

Site Admin Configs:
Turn on/off modules
Order sidebar (drag and drop)
Turn on/off headers/footers/left bar/ right bar
Themes
   Built in theme editor, both WYSIWYG and code
   WYSIWYG drag and drop elements, click element to chose color
Turn on/off any type of optional links
Create, edit, administer posts (click post and then choose module, or click module then click post/edit/administer)
Administer users
Stats
Strider: A theme editor is hard to write.  Ideally, it should just be adding/removing modules and editing CSS.  I'm not sure creating a WYSIWYG editor for themes is very efficient if it'll just be used by the site administrators.  If users can create their own themes, it might be worth the effort though.  Also, (as much as I hate saying this) you might want to include a Advertising section.  Need to recoup operating costs somewhere.  Alternatively, a donation center.  Donate for no ads?

User Configs:
Choose theme
Choose default landing page
Default search options
Default archive options
More/less archive links for their post views.
Strider:  Allow the user to hide/block modules.  Some people won't care to see the comic or to play the games.  Privacy settings as well.  Allow them to choose how much information is displayed, who it's displayed to, etc.  Friends lists, or even friend groups.

Too.. much.. work :P
Now we sit through Shakespeare in order to recognize the quotations.
  - Orson Welles

The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers

  • Administrator
  • Level 96
  • *****
  • Posts: 19211
  • Fell Points: 17
  • monkeys? yes.
    • View Profile
    • herb's world
Re: masochism.
« Reply #17 on: October 27, 2009, 01:12:31 AM »
Strider:  Bloggo, sounds like a drain cleaner.  You need a bacos, because everything is better with bacon.

You are more than correct. Bacon and Monkeys.
Bloggo was the steroidal result of my first PHP "Hello, World" program. The catch phrase for Bloggo was "You're Soaking In It."

Strider: Ahh, the good ole front page.  You get into the trap of making it too configurable, and thus too database heavy since it has to 'create' the page for each request (which is fine if you want to stay small/cheap) or static (after each update, create a static page so all 'browsers' can view it w/o using any processor power.  Or both, only display dynamic for signed in users.  I'm sure this is all old news to you... just rambling.

A static page isn't bad if part of the posting process creates the page. But you'd need to create multiple pages -- one for each possible if users can turn off the visibility of modules as you suggest below (and I think it's a good suggestion). The other option, now that I think about it, is to just have WITHIN that dynamic page to turn off the visibility of modules based on user prefs.
Fortunately, database *reading* isn't that resource intensive. So unless I find someone using Spork for a high traffic site and they start having issues, I think I'll just to do the dynamic creation each time.

Strider: All seems pretty general.  I would suggest making everything a template.  RSS is pretty standard and just uses a different template than the general pages.  This allows you to easily add rss feeds for comments, individual threads, or whole weblogs, etc.

I didn't express it specifically, that's what I was thinking. Most of it, other than that pages specific content, is pretty much from one source.

Strider: As mentioned earlier, might be good to make a module that 'creates' static pages.  This would help lessen the load on commonly hit pages.  You can also have a grim reaper module that 'kills' old threads and converts them to static pages.  This way there's no information lost and people can't raise the dead.

Yeah, the module would create static pages, so the user doesn't have to do anything but put in the unique info.
I could call the module "whitenoise."
The grim reaper module sounds fun in the sense that it uses "grim reaper" in its name. But it seems redundant. It occurs to me that in a forum, you could just have a function that locks old threads. If we're talking about comments on a post, well, my personal feeling is there's no need to lock it. But i suppose if SOMEONE wants it it's worth having. It could just be an admin switch to say "don't make commenting available on post more than X seconds old (using, of course, standard Unix time stamps)

Strider: Recent posts sounds like the same thing as the homepage.  A chatterbox might be fun, depending on your tastes.  Most sites show online users at the bottom of the page in a footer of some sort, so you might just want to keep them there.  The tag cloud/categories/search/calendar are all good.

Something else I haven't said specifically is that the front page will default to just "blurbs" or a short outtake, with a "read more" link. The recent posts would be more of a list of just titles as links, in smaller print.

I do like the idea of a chatterbox at least being available.
and there area  few variations on it, like user tweets, that bear considerations.

But yeah, when I say sidebar, I kind of mean, that it's interchangeable between the header, side, and footer

Strider: Games that give points that are tied to your title might be fun.  It would definitely encourage people to spend time on your site.  The problem is getting/creating the games.  Also, make the website/links field expandable.  It's annoying when a site only has a couple options, but forgets a site I like.  (In this case, nanowrimo user page would be a site relevant to these forums)


Wow, there's a whole section that I forgot to put in there. I want to make it a site capable of hosting RPGs, so it could store character stats and adventure information. The actual rp would happen over Skype or chats or in forums, but the dice and records could be in the site. But now that you say it, on site games, like scavenger hunts. It bears thinking.

yeah, need to be able to add on additional sites, with labels, good thinking.

Strider: Another system that I've seen work well is a rank/power system.  The users who post the most can moderate the system (temporary until approved by a real mod.)  This helps quickly remove dangerous links to viruses, child porn, etc.  Of course, this power can be revoked by the gods if abused. :)


Admin undoable user moderation. Nice. Yeah, I can put that in.

Strider: And javascript to move pages around similar to the photo gallery.  In fact, if you could make the system react just like a gallery, that would be awesome.  I get annoyed when I'm reading a comic that has been around for a while and after each comic I need to search for the "next"/"Prev" link... if I could just hit the left/right arrow on they keyboard and continue reading, that would be awesome.  Alt-Text is somewhat annoying since some browsers don't display the whole string, some people don't even know it's there, and it vanishes quickly.  As much as I love XKCD, I wish they just displayed the text as a caption.

Yeah, i can see that. JS navigation is something that bears thinking. My comic site had rather large navigation arrows, so it was hard to miss, but so many people use different options, so that could be useful

Alt-Text is pretty much somethign that needs to be in. So many webcomics artists use it, to good effect. In addition to XKCD, Dr. McNinja, Dinosaur Comics and Overcompensating all immediately come to mind. It's common enough that when I bump into a new comic one of the first things I do is check for mouseovers. And when they're present, it makes me feel like I just found a little easter egg.

Strider:  One thing I'm working on with my webpage is making a system for each major category.  For example, I have three section: Blog, Writing, and Programming.  I want it to show a personal theme for my blog, a fantasy theme for writing, and a techy/coding theme for programming.  I think it would bring personality to each page.  As for person tags, how do you decide where it goes?  Does each user get the option?  Also, the ability to export the page would be good too.  Allows you to do custom backups or move to another system later on if you wish (blasphemy!)

So it's one site, but looks like three. Hrm... I have considered different specific features, like variations on the headers and stuff, but still fitting within the general theme. But making it possible to use multiple themes, that's probably as easily doable as user preferred themes.

Do you mean like the admin exporting the pictures to an XML file? or quick exporting the whole database to a file? I never think of things like that because I tend to do my backups just using phpmyadmin, which makes it quick and easy.

Strider: Zoom, option to save image, mark offensive (depending on who is allowed to post).. or even just moderation ability.

yeah, the obvious features I should have thought of quickly

Strider:  Ugh, I had to make a shopping cart system for my Masters Project... and it was a pain in the ass.  Make sure you have a module system here so they can add the type of cart they want to use (paypal/google checkout/yahoo checkout/msn checkout/local credit card system/etc).  Don't forget: User Ratings, Comments, Price, Sale Price, quantity, etc.

Yeah, it's clear I haven't thought through the merch section very quickly. Shopping carts irritate me. I don't think i've ever finished one.

Strider: Modules should supply user searchable database rows with friendly names.

Yeah, I don't think the searches will be difficult to write. Just hitting the right fields for near matches.

Strider: A theme editor is hard to write.  Ideally, it should just be adding/removing modules and editing CSS.  I'm not sure creating a WYSIWYG editor for themes is very efficient if it'll just be used by the site administrators.  If users can create their own themes, it might be worth the effort though.  Also, (as much as I hate saying this) you might want to include a Advertising section.  Need to recoup operating costs somewhere.  Alternatively, a donation center.  Donate for no ads?

Strider:  Allow the user to hide/block modules.  Some people won't care to see the comic or to play the games.  Privacy settings as well.  Allow them to choose how much information is displayed, who it's displayed to, etc.  Friends lists, or even friend groups.

This is where I start thinking in terms of putting things in "blocks" like Xoops does.  I was thinking you could mark them with tags when you put them in the bars, and then depending on how you've marked the users, they show or not. But if you did them in blocks, that could just be an option for the block. Ads would be a switch only the admin could change, but modules would be changeable by users for themselves.
« Last Edit: October 27, 2009, 02:57:29 AM by The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers »

The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers

  • Administrator
  • Level 96
  • *****
  • Posts: 19211
  • Fell Points: 17
  • monkeys? yes.
    • View Profile
    • herb's world
Re: masochism.
« Reply #18 on: October 27, 2009, 03:00:20 AM »
oh, and the internal theme editor
Partially i'm thinking in terms of the way WordPress has, where you can actually edit the theme files from the admin area (not the core files, just the themes and plugins). That's been very handy.
As for the WYSIWYG theme editor, I'm mostly thinking of drag and drop blocks of content. That would rewrite som CSS to pinpoint location of blocks. I also think this is beyond my current ability, unless there's something obvious I haven't thought of for how to do it. But I reckon I'll learn eventually.

stridera

  • Level 6
  • *
  • Posts: 154
  • Fell Points: 0
  • Fantasy Programmer
    • View Profile
    • Strider's Realm
Re: masochism.
« Reply #19 on: October 27, 2009, 03:12:37 AM »
As for the WYSIWYG theme editor, I'm mostly thinking of drag and drop blocks of content. That would rewrite som CSS to pinpoint location of blocks. I also think this is beyond my current ability, unless there's something obvious I haven't thought of for how to do it. But I reckon I'll learn eventually.

The problem with trying to position boxes on the page is that the CSS looks differently for every browser.  CSS is a pain, in that sense.  However, what you can do is float the elements and then use a JQuery moveable box to allow them to move it between columns and rows.  This will look good, but the boxes are always positioned directly under the box right above (as is common with floating divs)  I've written a few pages to do this and it's pretty simple.  The only issue is remembering the order and displaying them accordingly.  You can get a preview here:  http://docs.jquery.com/UI/API/1.6/Sortable
Now we sit through Shakespeare in order to recognize the quotations.
  - Orson Welles

The Holy Saint, Grand High Poobah, Master of Monkeys, Ehlers

  • Administrator
  • Level 96
  • *****
  • Posts: 19211
  • Fell Points: 17
  • monkeys? yes.
    • View Profile
    • herb's world
Re: masochism.
« Reply #20 on: October 28, 2009, 07:05:27 PM »
I think I just decided to table this. I'll print it out and file it in a folder with the other "some day" projects I have.

stridera

  • Level 6
  • *
  • Posts: 154
  • Fell Points: 0
  • Fantasy Programmer
    • View Profile
    • Strider's Realm
Re: masochism.
« Reply #21 on: October 28, 2009, 09:43:35 PM »
R.I.P. :)
Now we sit through Shakespeare in order to recognize the quotations.
  - Orson Welles