Wikipedia talk:Avoid using meta-templates/Archive 2

message: This page (in the version I restored and will happily lock) is a guideline not because of a consensus vote on a talk page, but because of sound technical reasons to avoid using the damn things. Just because you really want to do 'l33t Mediawiki hacks doesn't mean you can build consensus to make it not technically the case, any more than 2+2 equalling 4 is up for a vote. The only reason templates in templates aren't switched off entirely is because they're needed for a few specific purposes. That's why you're supposed to AVOID USING METATEMPLATES, not because some m33nz0r wants to keep you from the k3wl stuff - David Gerard 23:07, 9 December 2005 (UTC)
replies: text: *I did remove it becaus the box specified it's a guideline, and guideline says is by consensus, but after reading this talk page there was none, I didn't meen to WP:POINT →AzaToth 23:17, 9 December 2005 (UTC)

text: m33nz0r? whatdoes that meen? →AzaToth 23:34, 9 December 2005 (UTC)

text: I do not understand what you want to say. Can you tell us what to do with  and ? You are also invited to write on the respective talk pages of those templates. That would fit much better than writing to people on their user talk pages. Please note that AUM is guideline, not a policy. As the box states "This page is considered a guideline on Wikipedia. It illustrates standards of conduct, which many editors agree with in principle. However, it is not a policy". "which many editors agree with in principle" seem to be just Netoholic so far in this specific matter. As this is not a policy, there may be others who don't follow this guideline, for good reasons. – Ligulem | Talk 00:25, 10 December 2005 (UTC)

text: You may also write on the discussion page of :Category:Citation_templates, as this covers a whole bunch of if or qif using templates. Thanks. – Ligulem | Talk 00:34, 10 December 2005 (UTC)
thread_title: What on earth?

message: Wikimedia's server capacity has gone up a few orders of magnitude this year. I'm not convinced that templates represent anything like the proportion of the total load they used to, and are therefore no longer a problem ("with enough power, a brick can fly"). Dan100 (Talk) 12:13, 10 December 2005 (UTC)
replies: text: Please take a look at the source for Template:Language.  I don't care how fast the servers are, that template has been coded into complete obscurity. -- Netoholic @ 15:14, 10 December 2005 (UTC)
replies: text: That's your POV, I belive User:Garzo knows what he do, he is a linguist specialist →AzaToth 15:21, 10 December 2005 (UTC)
replies: text: Is it really a good thing that only one editor knows what's going on with that template? -- Netoholic @ 15:32, 10 December 2005 (UTC)
replies: text: There are plenty more peoples that knows what's going on in the template. But are you blaming User:Garzo for not creating a template in your way? →AzaToth 15:37, 10 December 2005 (UTC)

text: I can confim that there are several others which are able to understand this form of template. It's not that complicated as it might look at first sight. It takes a moment to accustom oneself with that if stuff. And you don't have to understand at the first step how if is implemented. But even that is not as complicated as it might look. qif is the easier to start with. Yes it is a trick, but a straightforward one, not even a dirty one. And yes, we are interested to keep a close eye on server load, that's why qif as a replacement for if was created (by using qif, one call level is eliminated compared to if). And if developers and server maintainers flock in to report that we blow off the servers, believe me, we will kill if/qif immediately. But not due to a guideline that should be carfully reviewed for this special case. And please note that I do not intend to put up a fight. You and we, all of us care about the future of wikipedia. Nobody is interested to "press in" tricky stuff just for it's own sake. We care about building new solutions to existing problems. The way how to solve them (and the cognition of their existence at all) is what we differ in opinions. In good faith, – Ligulem | Talk 18:08, 10 December 2005 (UTC)
replies: text: Well, seeing as I have been mentioned above, I'll let you know the history of . The flexibility that the use of  allows was discussed long before that template was available. We had tried a number of ways of creating a modular template that could fit the great diversity of all language articles, but these hadn't worked. The other users of the template have appreciated the new flexibility that these templates have provided. I have tried to explain what I am doing as I go along, and, as I know nothing about computer programming, I am not being obscure for the sake of it. We weigh up the options of whether we want the template to do all we want it to do, or whether we want it to be easy to edit. I would love it, if there were a possibility of incorporating both options, but there isn't, and we have chosen flexibility above ease of editing. In the meantime, there are a few editors around who have acquainted themselves with the template, and feel able to make changes whan they are needed. In summary, the present state of  is the work of a linguist rather than a computer programmer, cobbling together the scraps of possibilities of template construction to make an infobox as good as possible. I'm writing an encycolpaedia... --Gareth Hughes 18:56, 12 December 2005 (UTC)
thread_title:  Any of this still valid? 

message: I did some check in the source code to see how mediawiki uses templates. When a page is using a template, that particular template is cached for actual page, so multiple uses of an template on a particular page uses only one fetch for this template. For an example, a book reference, is would then better to use an generic reference that have separate templates for different styles. (If the generic reference template only use for example  then there will only be one fetch for actual page)  →AzaToth 21:53, 10 December 2005 (UTC)
replies: text: Yeah that sounds damned interesting! Thanks for looking at that. You're really smart (no pun intended). I have to ruminate that further. I just wonder what the other template geeks (like SEWilco) are doing. The tangent I'm on gets bigger and bigger. Interesting. It all started with wondering me how to reference a book on an article....:-) Oh my! – Ligulem | Talk 23:20, 10 December 2005 (UTC)

text: Interesting.  This would suggest, for a start, that all of the various infobox templates should be moved away from using the logic templates if possible (since those are, by definition, used only once in an article). —Kirill Lokshin 01:46, 11 December 2005 (UTC)
replies: text: *That might be correct, but personally I think it's cheaper to do one extra meta-call (to the template logic in this case), than to hide a lot of text using class hiddenContent, also, if there are other templates on the page using the template logic (for example a reference template), then there would be no saving going from logical templates. →AzaToth 02:00, 11 December 2005 (UTC)

text: I think it's exactly the opposite. Because the call to if (et al.) is cached per article, it does not matter whether we have 500 if calls rooted directly (does not apply now) or indirectly on the page. We can have 100 instances of let's say book reference on a page. Even if qif appears several times in book reference (22 times to be exact, at the moment), as per the findings of Carl (=AzaToth) it is loaded exactly *once* per page (not 100 x 22 - ok would possibly not be 22 because not all branches are evaluated, it depends on the parameters fed into each specific template call). I hope I got that right (please correct me if I'm wrong). That's very cool! – Ligulem | Talk 09:57, 11 December 2005 (UTC)

text: Don't worry too much about there being several types of citation templates, they are being consolidated.  It probably is more important for this discussion that citations have to deal with the fact that including or omitting information requires various formatting details be included or omitted.  The logic templates are at present the only tool for doing that formatting, and infoboxes have similar formatting needs  If wiki adds some builtin logic it will be trivial to change the few templates.  However, that is not the only possibility, as another possible solution is some sort of tool similar to a "report generator" which would allow specification of the format of data display.  For citations there have been various proposals for information handling, and it is possible someone will come up with tools with other solutions (whether specific to citations such as a publication-name-selector or a more general tool such as Jimbo's data retriever ("name of capitol city of country X").  (SEWilco 06:10, 11 December 2005 (UTC)
replies: text: Don't worry too much about there being several types of citation templates, they are being consolidated - can you point to where that's happening (out of curiousity)? Dan100 (Talk) 08:40, 11 December 2005 (UTC)
replies: text: I hope SEWilco allows me to step in: see Template:Citation (talk). But please do not use that in articles yet. As per SEWilco (who thankfully started that) who intends it do be for testing and development for now. But I think we can have a look at it, as it is not under user-space. Citation has just got more attraction as per the findings of AzaToth (in this thread). – Ligulem | Talk 10:07, 11 December 2005 (UTC)
replies: text:  There are ongoing changes to the various citation templates which will affect the consolidated template.  A number of the changes involve logic incantations.  (SEWilco 15:27, 11 December 2005 (UTC)

text:  The consolidation of citation templates is also visible in the History of WP:CITET.  The availability of optional parameters has allowed reduction in the number of citation templates to perhaps 20-30% of the number which used to exist.  Unfortunately, this also has increased use of if/qif so as to display text and punctuation needed by various optional fields.  Consolidation has been slowed by the need to standardize parameter names, conversion of existing calls, and non-technical demands such as consensus finding and devoting time to Arbitration threats.  (SEWilco 09:26, 13 December 2005 (UTC)
thread_title:  Another view 

message: As we have noticed, there is some concern that meta-templates which are defined as templates that include calls to other templates have some drawbacks which are described in the associated article. 
Recent development around the templates template:book reference or template:web reference which include calls to so-called "logic templates" like template:qif have triggered some partly hefty reactions among some wikifolks. These logic templates haven been deemed by some as beeing a "kludge" or just "ridiculous" and for beeing a violation of this guideline here.
Some wikifolks insist that templates like template:book reference do add real value to wikipedia and its development, as they increase the quality of articles and do help non-wiki experts to write correct citations. What's also clear is that calls of template:book reference can easily be converted to anything else by a fairly simple bot. This includes possible future extensions. It is also relatively simple to convert those calls back to the old style low-level kind of citations that  have been done by using wiki syntax only (without the use of templates). But the other direction is far less easy to do. So articles that today contain calls to template:book reference are - from an entropy standpoint - more valueable than those who do citations the old-style way (if we look at the wiki source).
Today, there are about 3000+ articles that already use template:book reference. If we come to the conclusion, that this guideline here rules, we can see that template:book reference has qualities of a "meta-template" as it uses template:qif. Some wikifolks have come to the conclusion that template:book reference cannot be implemented without using template:qif. So if this guideline here rules, this would mean the shutdown of template:qif and in turn the shutdown of template:book reference. The consequense of this would be that all calls to book reference would need to be downgraded to pure old-style wiki source.
One of the mentioned problem areas of the so called "meta-templates" is that - as it seems to be implemented now in the Wiki-software - if a template T is changed, all article pages that contain calls to T get their cache invalidated. As Jamesday describes in the article here, this can be a resource consuming task. This can also result in operations enduring in the order of several tenths of seconds.
A well known mechanism to circumvent this is "subst", where a template is instantiated at the moment  the editor clicks on save. The problem with subst is, that it cannot be applied to book reference, as the result is just a bunch of qif expressions that nobody can manage by hand.
It must be noted that reckless editing of template:book reference is not desired anyway. So it is expected that book reference stabilizes more and more and there should be the longer the more less reasons to change it. This is even more true for template:qif, which is even more stable. So rippling changes originating from template:qif today already are a rare case. So beeing dependent on stable stuff is not that bad.
What remains are changes in template:book reference.
I would like to present the following idea: Why not ignore changes in template:book reference at first for some time and leave that cache invalidating step away completely. It does not hurt if articles referencing template:book reference use an old version of it. This can wait until somebody edits an article or until a slow bot comes by and invalidates that article's cache (within 24 hours or so). That bot could run at off-peak hours. I would call this feature a "lazy template". Maybe template:book reference (and template:web reference) could be marked in some way as "lazy templates". This could also be seen as a more luxory form of "subst" that preserves the entropy of the wiki-source of an article.
– Ligulem | Talk 17:03, 11 December 2005 (UTC)
replies: text: See also the thread  on the mailing list wikitech-l. – Ligulem | Talk 18:53, 11 December 2005 (UTC)

text: Server caches of pages can be manually purged. See template:purge, Wikipedia:Purge. – Ligulem | Talk 23:00, 11 December 2005 (UTC)
thread_title:  Proposal for "lazy templates" 

message: The developers flat-out said "Avoid using meta-templates." The developers are given free reign to say "Please do not make our database collapse weeping." And then we, as editors, have to listen. And it doesn't actually matter how many editors don't want to listen - the developers remain empowered to implement guidelines like this. Phil Sandifer 06:46, 13 December 2005 (UTC)
replies: text: No, Wikipedia has substantial editorial problems (Siegenthaler, vandalism on George W. Bush) and anything that makes it harder to maintain is a dangerous distraction that imperils the whole project. Susvolans ⇔ 08:07, 13 December 2005 (UTC)
replies: text: Wikipedia is very hard to maintain when the database stops working. Though this is beside the point - just as you cannot vote or complain away the developer's right to say "Don't do this," you also cannot vote or complain away the fact that you are unable to do the former. Phil Sandifer 20:40, 13 December 2005 (UTC)

text: Wasn't it called "Meta-templates are considered harmful" once? Phil Sandifer 06:19, 14 December 2005 (UTC)
replies: text:  Yeah, but that also confused some users and was a little softer than "Avoid". -- Netoholic @ 06:21, 14 December 2005 (UTC)
thread_title: Community consensus is beside the point

message: Hi folks! Let's have a break and learn something. For those who watch this talk page and enjoy reading new stuff: There is a nice new page at m:Help:Parameter default about all that new stuff which is at the heart of these new template tricks. Kudos to Patrick and AzaToth. (Sorry for the advertising here). Have fun reading (no pun intended)! – Ligulem | Talk 21:30, 13 December 2005 (UTC)
replies: text: Boy oh boy... now if either one of them would learn how to write real code in PHP and become real developers, we might have a solution that we could use. -- Netoholic @ 21:38, 13 December 2005 (UTC)
replies: text: And in the interim we use what we have. Deal or no deal? :-) (please don't hit me! And have a look at Carl's box profile). – Ligulem | Talk 22:22, 13 December 2005 (UTC)
replies: text:  No, in the interim we work very hard to ensure these meta-templates are eliminated per this guideline.  Does that mean some functions will require multiple templates? Sure. Does this mean some template will lose function?  No problem.  Will this bruise some egos? Doesn't matter. -- Netoholic @ 23:49, 13 December 2005 (UTC)
replies: text: First of all, as stated previously, let's see some evidence of developer consensus. I've heard about ONE developer (Jamesday) who has complained about meta-templates. And that was ten months ago. Are there any others? How serious (if at all) do they think the problem is at this time? What (if anything) are they doing about it? Until we know the answer to this, we can't proceed. Furthermore, doing away with nested templates altogether is utterly unacceptable. It's like proposing we do away with images. IF the developers need template use reduced as a TEMPORARY hack to reduce server usage, then we can start with templates that can easily be rewritten to avoid metafication. Breaking existing functionality should be an absolute last resort, yet you go about it with an unseemly glee. You should be banned from ever having anything to do with templates on Wikipedia ever again. Firebug 04:36, 14 December 2005 (UTC)

text: BTW, on Aug 6 of this year, Jamesday wrote (from the main article): "There are changes in 1.5 which will help. How much is currently not known." Are we running that now? Did it fix the issue? If the issue is resolved, then all of this bullshit should stop and people should use any kind of templates that make things easier. Firebug 04:40, 14 December 2005 (UTC)
replies: text: So basically unless the developers personally continue to notify you that it is a problem, you're going to assume it goes away on its own? Phil Sandifer 05:04, 14 December 2005 (UTC)
replies: text: Well, no. When the developers said a couple months ago that the new software update would fix the problem, and when the only person who is openly complaining about the use of these templates isn't even a developer at all, I'd like to get some sort of statement from the developers regarding the issues raised above. I don't need personal notification, but I think the Wikicommunity as a whole should get updates on this. When was the last time the developers were asked about the impact of nested templates? Has MediaWiki 1.5 been rolled out yet? I AGREE that the technical issues are important - and they are being overlooked due to Netoholic's insistence on shoving things down people's throats. Firebug 05:14, 14 December 2005 (UTC)
replies: text: I generally assume that the developers are too busy to let us know when they have not fixed a problem, and thus to assume that no news is bad news. In the absence of any evidence whatsoever that the problem has fixed, perhaps you might undertake bothering the developers, as I, at least, am rather too polite to do so with questions that they have already answered. Phil Sandifer 05:18, 14 December 2005 (UTC)
replies: text: Where can I obtain Jamesday's email address? I would like to (politely of course) ask him if MediaWiki 1.5 is in use and if this has fixed the "meta template" issues and to what extent. If devs agree the issue is fixed with the newer software, can we get rid of this nonsense? Firebug 05:25, 14 December 2005 (UTC)
replies: text: I have faith that you can figure out how to contact User:Jamesday. Phil Sandifer 05:26, 14 December 2005 (UTC)

text: Can we please relax about this?  Jamesday has been asked to comment.  I don't think anyone is arguing real problems should be ignored.  My suspicion is that this is not a black or white issue, and that the truth is that every little bit hurts and no one (not even the developers) exactly know how much is too much.  Yes, we use images.  Yes, we'll use some meta-templates.  If we can avoid both of these, we'll need to buy fewer servers.  The guideline says "avoid".  It doesn't say "seek out and destroy all".  Don't do things that consume resources unless there's a good reason to do so.  Repeat after me -   "duh".  -- Rick Block (talk) 05:32, 14 December 2005 (UTC)
replies: text: I was responding specifically to Netoholic's "salt the earth" comment above, where he said that even if it breaks things we should get rid of all "meta templates". You may be right that the truth lies somewhere in between. It would be helpful to know the extent of the issue as things currently stand, so we can decide just how much effort should be put into this. Firebug 05:40, 14 December 2005 (UTC)

text: A very wise statement. Thanks for that. And I do apologize for having added fuel to the fire. At least it was worth a try. In the mean time I might see whether I can ameliorate things a bit by replacing calls to if with the server friendlier qif (one less meta-level, thanks to AzaToth). We might then even be able to delete if. At least this would not hurt the servers. I know that this might be in vain if qif should get abolished. Just a try. – Ligulem | Talk 08:47, 14 December 2005 (UTC)
thread_title:  Something to read: [[m:Help:Parameter default]] 

message: The relevance of this guidelene is being debated at Template talk:Spoiler#Wikipedia:Avoid using meta-templates. People intested in these issues would be welcome to comment there. DES (talk) 18:33, 14 December 2005 (UTC)
replies: text: Don't let this turn into a MeatBall:ForestFire. Discuss the WP:AUM guideline here... talk about possibly merging the spoiler templates there. -- Netoholic @ 18:56, 14 December 2005 (UTC)
replies: text: Since the queastion about whether the AUM guideline applis to the spolier templates, and indeed to the IF logic templates has been raised there, it seems that it is a courtesy to let intersted and possibly knowlegable people here know about the discussion there. This was more in the line of posting a notice of a relevant ongoing discussion in another plce, such as is often done on the pump, or via RFC. I fail to see how that  is ignigting a "forest fire" (and given the size of wikipedia, i don't see that discussion on several pages has the kind of problems that MeatBall was complaining about anyway. My only experince with a case where someone cited that "guideline" was in what I continue to regard as an improper attempt to stifle valid discussion, so I do not react positively to the reference.) I might add that you are the person who raised the issue of AUM on Template talk:Spoiler, and used it as the basis of a revert, to boot. DES (talk) 19:04, 14 December 2005 (UTC)
thread_title:  related debate 

message: Templates are needed for consistency. Compare the situation where we have templates A and B. If they call a template C implementing the common denominator, and it gets edited, then, true enough, all pages containing A and B will need to be re-rendered. But if they don't call C, and A is changed then B must be changed as well. In case of several similar templates this is prone to error (I'm sure you can imagine what can go wrong). All pages containing A and C still need to be re-rendered. Fortunately most of the templates like C will not need changing frequently. That templates are a vandal-magnet is a problem all by itself. Suppose someone would put something nasty on disamb? Perhaps it would be better if we only allowed high-frequency templates to be changed only by registered users who have been around for a while. But that's probably to unwiki of me. Another thing: might it be possible to make only that part of a page affected by a template re-render if that template changes? That would solve a lot. Also if an article is edited and only stuff outside template calls changes, they wouldn't need to be called again, would they? I know, our develepors are busy enough as it is, but hey, one can dream (or have a wishlist). Shinobu 19:55, 16 December 2005 (UTC)
replies: text: Yes, if A and B have a commonality that is changed without a template the net number of articles to be re-rendered is the same, BUT if it's done by modifying a common template C the software immediately marks cached versions of all of the articles as being out of date.  With templates using templates, this can result in a tremendous burst of activity that is smoothed out somewhat if instead several templates are modified each affecting only a subset of the total number of articles.  The software could keep a queue of cache invalidation requests and meter them to a reasonable rate (even do them asynchronously to the change of the template), but I'm guessing this would be a fairly tricky change to get right.  Re-rendering only part of a page is not possible given the current hardware/software architecture (the squid servers, which are the primary caching mechanism, work by caching entire page contents).  This could potentially be done using features fairly recently added to the squid software, but again it wouldn't be easy.  I think the bottom line is that the developers know there's interest in this, they would like to do something if they could, they aren't stupid, and it hasn't been done - my take-away is that it must be VERY hard. -- Rick Block (talk) 23:57, 16 December 2005 (UTC)
thread_title:  A small point 

message: Neither  nor the stub tempaltes (not categories) created using it, nor stub types in general, are or use meta-tempaltes in any way, so they are not appropriate for mention here. Furhtermore, new stub types are normally subject to a proposal and approval process, precisely to avoid "scope creep" and "spur-of-the-moment" creation of new stub types, see WP:WSS/P. As a result i think the entire "scope creep"  section is invalid, as the removal of this clearly incorrect example leaves it without any example at all, and deprices it of what the project page says is currntly the principle example. If that is the principle example of meta-tempalte involvement in scope creep, there is none. DES (talk) 22:42, 16 December 2005 (UTC)
replies: text: While the specific examples are perhaps out-dated (thanks to this guideline's existence), we have much BIGGER fish to fry lately and the section should remain, but be updated.  Latest evil-doers can be found at :Category:Wikipedia special effects templates and WP:UBX. UBX is a particularly good "scope creep" example. -- Netoholic @ 22:48, 16 December 2005 (UTC)
thread_title:  Incorrect example 

message: I would like to offer my assistance to anyone looking for ways to make a template work while also following this policy and general good practices.  Please contact me on my talk page and describe what you're trying to achieve.  I also run a bot which can assist with some conversion/migration tasks. -- Netoholic @ 07:34, 18 December 2005 (UTC)
replies: text: Maybe you could put that on your user page? Maybe with some pointers to your works (maybe with examples)? Thanks for the offer. Maybe I could ask for some bot run in the future. I didn't recognize that you also operate one. – Ligulem | Talk 09:13, 18 December 2005 (UTC)
thread_title:  Offer of assistance 

message: There is a saying in the computer programming world: “Premature optimisation is the root of all evil”. While a reasonable degree of responsiveness (which Netoholic’s revert warring does nothing to promote) is worthwhile, aggressively attempting to optimise the servers at the expense of maintainabilty ties up the time and work of editors. Even for editors such as myself who prefer to work on editing other people’s work, it is busywork and a distraction from checking core quality. Some people underestimate the importance of useful back-editing in handling the rubbish (and libel; the John Siegenthaler incident isn’t a worst case) that Wikipedia absolutely must keep under control if it is to survive. Susvolans ⇔ 16:27, 18 December 2005 (UTC)
replies: text: This policy has been on the records for months and has been systematically ignored. I see little reason to call a clean up at this point premature. Phil Sandifer 17:17, 18 December 2005 (UTC)

text: Susvolans, you may disagree with this policy but then you don't need to do any work.  All you need to do is allow me and others to do this "busywork" of cleaning up meta-templates.   My biggest barrier right now is people reverting my efforts.  Go work on articles, and I'll (we'll) fix the templates. -- Netoholic @ 17:46, 18 December 2005 (UTC)
replies: text:  The busywork I was talking about was maintaining by hand pages that have long text instead of templates. Susvolans ⇔ 17:49, 18 December 2005 (UTC)
replies: text: All well and good that you don't want to do this. The developers have asked you to do it anyway, however. So do it anyway. Phil Sandifer 17:50, 18 December 2005 (UTC)

text: I agree with Susvolans. To Susvolans: I would propose to stop discussing here. It is pointless. We now have 21'000+ articles that depend for example on template:if or its server friendlier replacement template:qif (most via meta-templates). This is 2.6% of all wikipedia articles. That's a fact. It can't be stopped anyway. It might pass a TfD and then it might go to the holding cell. And then? Good luck in fixing 21'000 articles! – Ligulem | Talk 19:06, 18 December 2005 (UTC)
replies: text: Actually, I suspect that, having just killed Template:If without removing it at all, the damage will be cleaned up by the users by dinner. Phil Sandifer 19:27, 18 December 2005 (UTC)
replies: text: Yes. because I have it almost converted to qif. So why don't you kill qif, please? I'd love to watch this! – Ligulem | Talk 19:42, 18 December 2005 (UTC)
replies: text: Please refrain from rejoicing at demonstrations of denial of service attack vulnerabilities. Doing so, and deliberately acting in ways known to make them worse, despite repeated requests not to do so, is unhelpful. Jamesday 20:27, 18 December 2005 (UTC)
replies: text: Seconded. That would be the precise phrasing I was grasping for - David Gerard 20:36, 18 December 2005 (UTC)

text: To give you an idea of how bad these templates are, killing if locked the database briefly. Phil Sandifer 19:44, 18 December 2005 (UTC)

text: At least I do not have to work on converting if to qif any longer. Thanks! – Ligulem | Talk 19:48, 18 December 2005 (UTC)
replies: text:  Way to be a team player... -- Netoholic @ 20:33, 18 December 2005 (UTC)

text: Please instead work at reducing the use of qif to reduce the harm. Jamesday 20:27, 18 December 2005 (UTC)
replies: text: I hope that this SPECIFIC REQUEST FROM A DEVELOPER not to use qif now ends the debate? Phil Sandifer 20:32, 18 December 2005 (UTC)
replies: text: Specifically, from Wikimedia's DBA - David Gerard 20:36, 18 December 2005 (UTC)
thread_title:  Maintainability and liability 

message: So I was going to try to replace stuff like  with : should I simply not bother?
Does the transclusion system cache templates?
So if a given article uses five templates, all of which use , does the system fetch  five times, or just the once?
If the answer is "yes, it caches them", and if those five templates currently use various different things all of which are more complicated, like  or , would it not be better to consolidate them so that they all use , which is apparently the most efficient and server-friendly of all the options at present?
Yours puzzled and feeling slightly battered —Phil | Talk 09:27, 19 December 2005 (UTC)
thread_title: So do we simply stop cleaning up? 

message: * Experimental technical prefetch — Some high traffic template could be stored in a high-speed buffer to be used as is. →AzaToth 02:26, 17 December 2005 (UTC)
thread_title: Feature request

message: AzaToth has written m:User:AzaToth/Logic, which implements conditionals as Mediawiki builtins; I've brought this code to the attention of wikitech-l and also suggested he speak to Brion, Tim and/or Jamesday on #wikimedia-tech - David Gerard 21:50, 18 December 2005 (UTC)
thread_title: Potential alternative to meta-templates

message: Much of this acrimony is simply finger-pointing (on ALL sides) about technical problems. No, they can't be voted away. But they can and should be fixed. There are two underlying problems here that I see:
#MediaWiki doesn't have native support for conditionals and Boolean operations, so templates must be used to obtain such functionality, which is inefficient of server resources.
#MediaWiki has a broken transclusion feature that causes nested templates to use far more server resources than they should.
Expecting users to forever constrain their functionality for the sake of software limitations is foolish and fundamentally un-wiki. The underlying bugs have to be fixed; there is no other alternative. Conditional and Boolean operations must be added to the engine so that they don't have to be invoked through templates, and the transclusion code must be altered so that it doesn't choke on nested templates. I think we have a right to ask why the developers haven't fixed the issue yet, despite complaining  when a permanent fix will be implemented, given that we have known about the resulting problems for nearly a year. No doubt it's easier to ask users to alter their behavior than to fix the software's shortcomings, but it's also lazy and stupid  not a viable long-term solution.  Firebug 00:30, 19 December 2005 (UTC)
replies: text: It is a perfectly viable long term solution. In the worst case, it means we have fewer pretty boxes. We can live. Phil Sandifer 00:55, 19 December 2005 (UTC)
thread_title: Take a step back and analyze the situation.

message: There is currently a proposal to protect all high-risk templates, this may include meta-templates. See Wikipedia:High-risk templates. --bainer (talk) 23:24, 18 December 2005 (UTC)
thread_title:  High-risk templates 

message: Earlier this month, Freakofnurture used conditional calls to merge  into .  I just reinstated the former, and I want to modify the latter to add all articles containing instances of  accompanied by a date parameter to the nonexistent :Category:Inappropriate cleanup template use (thereby enabling us to identify and replace such invocations with , after which we can safely revert  to its previous state).  The template is protected, so I need an admin to do this (unless someone has an alternative plan).  Thanks!  —Lifeisunfair 01:15, 20 December 2005 (UTC)
replies: text: I could be mistaken, but doesn't adding a category to a template require touching all of the articles that use it for the category to show up on the articles?  —Kirill Lokshin 01:18, 20 December 2005 (UTC)
replies: text: There's no need to add a category.  I will use the "What links here" listing for Template:Cleanup and the Pearle bot to find and fix all invocations to use Template:cleanup-date. -- Beland 03:20, 20 December 2005 (UTC)
replies: text: Done. -- Beland 10:15, 25 December 2005 (UTC)
thread_title: [[Template:Cleanup]]

message: Just a note: qif was nominated for the fundriser :-). See here: . – Ligulem | Talk 17:33, 24 December 2005 (UTC)
thread_title:  qif for fundriser 

message: The section "Alternatives" of the project page lists under point 3 the use of CSS. Netoholic is doing this and was quite successful for optional fields of infoboxes. Sadly this technique does not work for special browsers which do not support CSS, one of which is the text based lynx. Maybe there are also problems with screen readers. This was brought up by Ævar Arnfjörð Bjarmason on Template talk:Taxobox#Eliminating meta-templates. The CSS trick can be seen for example in this diff. Ævar kindly posted an example user view of that trick as viewed on lynx at . Ligulem 23:02, 26 December 2005 (UTC)
replies: text: One side-benefit of my template conversions is that I am actually making them more friendly to screen readers.  One of the biggest issues for accessibility related to tables has to do with using the the proper table cells.  A sad lot of Infoboxs just use plain cells, but the wikitable format includes codes for specifying a caption and TH (table headers). People using screen readers can "skim" a page by having it read only the caption of a table.  To get more information, they can then navigate the row/column headers, to find the information they want to know.  When you fail to use those features, there is no useful way for them to navigate the tables.  As I'm going through removing meta-templates, I spend a good deal of time doing this formatting, and I encourage those others who work on templates to make full use of the wikitable formatting. -- Netoholic @ 10:01, 27 December 2005 (UTC)

text: Patrick has just added this to the project page. m:MediaWiki talk:Common.css contains "Unlike conditional templates, this works only for final display. The result (in the example either "abc" or "") cannot be used in expressions for template names, parameter names, parameter values, page names in links, etc.". This is really sad (however, thanks to Patrick). My hopes for template:book reference are sinking... :(. Ligulem 14:49, 27 December 2005 (UTC)
thread_title:  Section "Alternatives": Problem with CSS 

message: While leaving the page tagged as an official policy, I have changed the wording of the notice. The boilerplate  template says that the tagged policy has "wide acceptance among editors", and to discuss changes on the talk page to make sure they reflect consensus. In this case, we've been told that consensus is irrelevant, and all that matters is what Brion and Jamesday are saying. Thus, I have customized the policy tag to reflect the unorthodox manner in which this was passed. What's the point asking people to discuss consensus on Talk when it doesn't matter anyway? Firebug 13:06, 28 December 2005 (UTC)
replies: text: Hi Firebug. WP:POL states under Wikipedia:Policies and guidelines#How are policies decided? that "A select few important policies are not decided by community consensus, but imposed by Jimbo, the Board, or the Developers - in particular, anything related to copyright, legal issues, or server load". So here "Developers" and "Server load" applies. Though I find the wording of the message box on top of the project page acceptable as it now is. Ligulem 14:57, 28 December 2005 (UTC)
thread_title: Policy tag

message: What is the policy/consensus of using  style parameter kludges for optional display of data if they are held within a single template? I ask because there is an infobox –  – that I have worked on that is in urgent need of a rewrite since the current de-meta-templated version has a number of broken features. – MrWeeble Talk Brit tv 13:25, 28 December 2005 (UTC)
replies: text: Lead data base developer Jamesday explicitly asked to "Please instead work at reducing the use of qif to reduce the harm" ( lower part). This here is a policy (confirmed by developer request). So we are not allowed to revert if anyone removes a qif from a template. Although, personally speaking, it would be nice to wait a bit tearing down all uses of qif, as one of the leads on this announced  (See also User_talk:David_Gerard#What is the plan for Template:Qif?). Ligulem 14:40, 28 December 2005 (UTC)

text: Sadly, qif breaks when substed. Ligulem 15:08, 28 December 2005 (UTC)

text: Doing so would result in terribly ugly template page source.  Please be kind you your fellow, and future, editors.  Let's take the discussion about this specific infobox to it's talk page. -- Netoholic @ 16:30, 28 December 2005 (UTC)
replies: text: I agree to discuss on it's talk page. Posted my reply there. Ligulem 16:59, 28 December 2005 (UTC)
thread_title:  use of qif style parameter kludges 

message: How are we doing on the elimination of Qif? Phil Sandifer 20:42, 28 December 2005 (UTC)
replies: text: Given that the reference templates and the various succession-box templates still use it, I suspect we're not doing too well ;-) —Kirill Lokshin 20:56, 28 December 2005 (UTC)

text: What links here lists 32'000+ articles. Ligulem 13:02, 29 December 2005 (UTC)
thread_title: Elimination of Qif

message: A comment just for the records (no intention to fight or vote):
(A) CSS-trick (Netoholic. Extracted from this revision):
:
|- class="hiddenStructure{{{closed date|}}}"
! Closed:
| {{{closed date}}}

(B) Weeble-code (WikiMedia default params. Extracted from this revision. Added newlines for comparison):
:
{{{dummy parameter{{{closed date|}}}
|<tr><th style="text-align:left">Closed Date:</th>
<td>{{{closed date|}}}</td></tr>
}}}
Please compare yourself. The same trick, just different languages (CSS / MediaWiki syntax).Ligulem 10:21, 31 December 2005 (UTC)
replies: text: 
{{{dummy parameter{{{closed date|}}}
|<tr><th style="text-align:left">Closed:</th>
<td>{{{closed date|}}}</td></tr>
}}}
Patrick 11:43, 31 December 2005 (UTC)

text: 
{{{if{{{closed date|}}}|
! Closed:}}}
| {{{closed date|}}}
--CBD ☎ ✉ 15:24, 3 January 2006 (UTC)

text: For anyone confused - I previously had an extra set of closing curly-braces at the bottom from a bad cut and paste. I'd fixed them before MrWeeble saved the above, but apparently after he'd seen them. --CBD ☎ ✉ 17:20, 3 January 2006 (UTC)
thread_title: Comparison CSS trick/Weeble code

message: Check out Template:tl and Template:tl2 ... will the madness never stop?!?!?  ALKIVAR™ 00:38, 1 January 2006 (UTC)
replies: text:  is used by many folks to make a "pretty" reference to a template (like the one here).  It comes in at about #59 in the list of most referenced templates at WP:HRT with 4516 references.  Some folks subst it now, but the subst'd version looks pretty ugly, especially considering template:tl (for example) is a nice ordinary looking link, both as displayed and in the markup.  -- Rick Block (talk) 01:58, 1 January 2006 (UTC)
replies: text: Those aren't meta-templates. — Omegatron 05:34, 1 January 2006 (UTC)
replies: text: Any template called from within another template is a Meta-Template.  ALKIVAR™ 12:15, 1 January 2006 (UTC)
replies: text: We're lucky then that it's not calling another template. —Locke Cole • t • c 12:23, 1 January 2006 (UTC)

text: Although it's intent is not to be exclusively used from templates, it is used by a number of templates, e.g. Template:Afd, Template:AfD footer, Template:Merge, Template:Edit, Template:Move to Wiktionary, Template:Specialpageslist, Template:History of Australia, Template:Move to Wikibooks Cookbook, Template:AMA, Template:InPrint, ... -- Rick Block (talk) 17:00, 1 January 2006 (UTC)
replies: text: Ahh, that's another matter. Either we need to decide if the performance hit is worth it for some templates to call , or we need to subst in place, or find an alternative for those templates. But just using  in articles/talk pages (which is what it was intended for) should be fine. —Locke Cole • t • c 17:12, 1 January 2006 (UTC)

text: I've already been working on removing template:tl from templates. For example it was used in template:web reference so that made some 5000 articles dependent on template:tl. It was removed per my request. I was touching articles with my bot to update the used templates list but was stopped by Netoholic because he does not trust my bot. However: please note that if template:tl is only used inside the  section of a template, then articles transcluding that template do not depend on template:tl. I think this is the case for example with Template:Afd. Ligulem 17:31, 1 January 2006 (UTC)

text: Let's back up.  Turning a template reference like template:tl into an invocation of a template by using  anywhere (without subst'ing it) adds a database lookup to the cost of regenerating the page containing the reference.  The only point to its use is to change the format of the reference from template:tl to , which sure seems to fall into the category of "unnecessary".  If you subst it, it's exactly the same number of characters to type (so no advantage there), and if you subst it you leave a horrible looking mess in the raw page source.  Perhaps the software should be changed to recognize links to templates and format them in some special way, but IMO using a template for formatting purposes is pretty close to just plain stupid.  Maybe there's an argument that template:tl should exist for showing the syntax of template invocations, but I'd bet 99% of its references are folks using it to simply link to a template being discussed and find its appearance more pleasing than a vanilla wikilink.  STOP IT!  Just as we should avoid using metatemplates, we should avoid unnecessary use of any templates.  Markup templates are particularly bad because they tend to become like jargon and their usage spreads uncontrollably among folks thinking they're demonstrating their expertise.  Eschew performance sapping presentation frills! -- Rick Block (talk) 18:57, 1 January 2006 (UTC)

text: Yes! Phil Sandifer 15:09, 2 January 2006 (UTC)

text: I must strongly disagree. Using  has a cost, no doubt -- any template does. In my view it also has a significant benefit. Many tempaltes are used in effect for formatting. If this page is to be considered to require deprecating Tl, it ought to be renamed Wikipedia:Avoid using templates. DES (talk) 10:36, 2 January 2006 (UTC)
replies: text: Meta-templates in AfD pages are among the worst meta-template usage we could do - AfD is massively high traffic, and accounts for enough server strain as it is. We got by fine without this template for some time - the suggestion that this is somehow the end of the world is absurd. Phil Sandifer 15:09, 2 January 2006 (UTC)

text: These can quite happily be substed.  Claiming that the code is ugly is not a good reason not to spare the servers.  Sam Korn 15:12, 2 January 2006 (UTC)
replies: text: To be clear, I'm suggesting using a plain old vanilla reference, like template:tl, rather than any template (subst'd or not).  And, are you claiming {{tl}} is not ugly?  I'm a little surprised the parser doesn't barf on this. -- Rick Block (talk) 16:47, 2 January 2006 (UTC)
replies: text: I had a proposal before to change , but havn't got that in yet, the proposal is:
{{}} →AzaToth 17:12, 2 January 2006 (UTC)
thread_title: More unneeded server waste