Hey, It's great that modules > like Diff have good beady eyes on code quality and portability, long may > that continue. That is *definitely* the exception, not the rule, with > extensions. >
The point is that MediaWiki is *much* more likely to be able > to police and maintain that proper signature management in core code, than > in extensions and obscure miscellaneous modules. > If we are just talking about badly maintained and managed code, then how is pushing this code into core going to help? You'll still need to do the effort to maintain it before it improves. For one random unmaintained extension this might work, but there are hundreds. If you make to many of them part of core while not increasing maintenance capacity or without making people care about the code in question, you just end up with the same situation. Except that now the unmaintained code is causing problems for everyone, rather then sitting on a side, not being maintained, which perhaps is because no one cares about the thing any more anyway. This seems to go into the direction of arguing against having real extensions. I for one, think it is a bad idea to ditch extensions. The fact that this thought experiment is almost impossible to visualise > without pen and paper is symptomatic of the problem. > Not really. The problem is there now. That understanding of the system is required to pinpoint what is causing the problem is why end users are not flagging these points as being problematic. They just have hassle and know _something_ is going wrong. Understanding all these internal dependencies between components is going to be something non-trivial and something users should not be bothered with in any situation. Lack of understanding is not a symptom of the problem, this lack, at least on the dev side, is the cause of it. So either the system has to actually * > be* simple (version X of an extension requires version Y of MediaWiki, so > if I update my MW install I need to also update extensions (or vice > versa)); or it needs to be *properly* abstracted behind a system which > makes it *appear* simple (you run some script and everything magically > works or gives you informative explanations of why it didn't). > Fully agree. I attempted to install Wikibase the other day and made a fun discovery. > Installing it properly requires the following (12) extensions > What started this thread was Ryan having problems with installing Wikibase. And I can see why this would not be all that smooth. The components you need is probably not the biggest hassle. After all, you just need to do 4 git clones instead of 3. Then you also need to do a bunch of config, and figure out if you want to use additional functionality. For instance, you need Scrubuntu if you want to have lua support on the client. As a new user of the software, how will you know you need this or not? Some very good documentation can help, but we don't have this. Putting the lua stuff into its own extension would make this a lot more clear, and would not bother users with the requirement of understanding what this is while they don't even want to use lua. (This model of creating extensions on top of your main extension is something done by SMW and is working very well. Users generally do not get confused by it at all.) Doing 4 git clones and having some basic understanding of the dependencies is something quite reasonable to expect from developers. As everyone here, including me, is saying, this is not acceptable for users. The problem in case of Wikibase is that it is the only process we currently have, as no one has bothered to do a proper release. You know, one of these things with a version number, release notes, tarballs, etc. If we want this software to be usable by non-devs, this needs to happen. And if it does, it is also going to be useful to devs. So I'm actually quite disappointed we did not have a release yet, and am regularly shouting to people about it. So Ryan, I agree that currently this is not in good state. I however disagree there is this dichotomy between developers and users, where we can only have it work nicely for one. Attacking the developer process is thus not a good option, as that will just end up hurting everyone, including the end users. Cheers -- Jeroen De Dauw http://www.bn2vs.com Don't panic. Don't be evil. ~=[,,_,,]:3 -- _______________________________________________ Wikitech-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikitech-l
