User:Cloudii/Proposals/CategoryInteresections: Difference between revisions

From Baka-Tsuki
Jump to navigation Jump to search
Cloudii (talk | contribs)
mNo edit summary
Cloudii (talk | contribs)
No edit summary
Line 1: Line 1:
<!-- ignore this <DynamicPageList>
__NOTOC__
category = Light novel (English)
=Proof of Concept of Category Intersections=
category = Inactive Projects
Brought to you by [http://www.mediawiki.org/wiki/Extension:DynamicPageList_(Wikimedia) Extension:DynamicPageList] (TLG already installed it!)
ordermethod = sortkey
==Sample: Intersection of Light Novel (English) and Stalled Categories==
order = ascending
mode    = gallery
imageheight = 20px
</DynamicPageList>-->
Brought to you by Extension: DynamicPageList (TLG already installed it!)
==Intersection of Light Novel (English) and Stalled Categories==


{| width=100%
{| width=100%
Line 45: Line 39:
|}
|}


==Testing if subcats are included in intersections==
<DynamicPageList>
category = English
category = Inactive Projects
ordermethod = sortkey
order = ascending
count    = 5
</DynamicPageList>
==Cloud's Proposal==
<small>''Taken from the from the Wikipedia Proposal page.''</small>
Currently, we have a category called '''Light Novel (English)''', and twenty variations of this for every alternative light novel language.
Rather have having these 21+ redundant categories, it is more logical to place project pages in their '''primary categories''', and take intersections of these categories.
For example, if all light novel projects of all languages were listed in '''[[:Category:Light novel]]''', and all English projects were listed in '''[[:Category:English]]''', taking the intersection of these two categories is effectively the same as getting: '''Light Novel (English)'''.
===Why is this better?===
'''Less categories overall. Simpler organization. Readers get to see what they want and ''only'' what they want.'''


For example, right now, I'd like to be able to see all English Projects that are stalled. However, the current [[:Category:Inactive Projects]] lists all inactive projects of all languages... which we have 40 of, which is not easy to look at.


I could request that we split that category up into '''Inactive Projects (English)''', but do we really need that many more categories?


===What are the cons?===
Calculating intersections of categories can be a memory intensive process if the categories are large (like 1000+ members. If you know CS, it's an O(n^2) process. Luckily this extension doesn't search subcats, so its not as bad as a could be). As such, TLG (the default setting of the extension) has limited the number of results that can be shown from an intersection of two categories to be somewhere around 200 results.


However, as Baka-Tsuki is small, this actually doesn't pose a problem until we ever get more than a couple hundred projects.


blah
The other con is that it isn't a real category page. We could link it to users and display like a category page (like I did above), but the default output is a straight list of results.

Revision as of 19:16, 4 February 2014

Proof of Concept of Category Intersections

Brought to you by Extension:DynamicPageList (TLG already installed it!)

Sample: Intersection of Light Novel (English) and Stalled Categories

Testing if subcats are included in intersections

No pages meet these criteria.

Cloud's Proposal

Taken from the from the Wikipedia Proposal page.

Currently, we have a category called Light Novel (English), and twenty variations of this for every alternative light novel language.

Rather have having these 21+ redundant categories, it is more logical to place project pages in their primary categories, and take intersections of these categories.

For example, if all light novel projects of all languages were listed in Category:Light novel, and all English projects were listed in Category:English, taking the intersection of these two categories is effectively the same as getting: Light Novel (English).

Why is this better?

Less categories overall. Simpler organization. Readers get to see what they want and only what they want.

For example, right now, I'd like to be able to see all English Projects that are stalled. However, the current Category:Inactive Projects lists all inactive projects of all languages... which we have 40 of, which is not easy to look at.

I could request that we split that category up into Inactive Projects (English), but do we really need that many more categories?

What are the cons?

Calculating intersections of categories can be a memory intensive process if the categories are large (like 1000+ members. If you know CS, it's an O(n^2) process. Luckily this extension doesn't search subcats, so its not as bad as a could be). As such, TLG (the default setting of the extension) has limited the number of results that can be shown from an intersection of two categories to be somewhere around 200 results.

However, as Baka-Tsuki is small, this actually doesn't pose a problem until we ever get more than a couple hundred projects.

The other con is that it isn't a real category page. We could link it to users and display like a category page (like I did above), but the default output is a straight list of results.