<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Anyonecanedit.org &#187; Wikis</title>
	<atom:link href="http://anyonecanedit.org/blog/cat/wikis/feed/" rel="self" type="application/rss+xml" />
	<link>http://anyonecanedit.org/blog</link>
	<description>Free content, free software and just about anything else free</description>
	<lastBuildDate>Sat, 17 Jul 2010 14:12:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Updaters</title>
		<link>http://anyonecanedit.org/blog/2010/07/updaters/</link>
		<comments>http://anyonecanedit.org/blog/2010/07/updaters/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 14:12:45 +0000</pubDate>
		<dc:creator>chad</dc:creator>
				<category><![CDATA[Mediawiki Development]]></category>
		<category><![CDATA[Wikis]]></category>
		<category><![CDATA[branches]]></category>
		<category><![CDATA[cleanup]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[installer]]></category>
		<category><![CDATA[maintenance]]></category>

		<guid isPermaLink="false">http://anyonecanedit.org/blog/?p=319</guid>
		<description><![CDATA[I blogged about picking up Tim&#8217;s new installer branch last summer. I worked on it with a lot of help from Max and demo&#8217;d it in Berlin. Since Berlin, Ævar, Siebrand and Mark have joined in and it&#8217;s getting a whole lot closer to being done. It&#8217;s in trunk, the installation runs pretty smoothly. Updates [...]]]></description>
			<content:encoded><![CDATA[<p>I blogged about picking up Tim&#8217;s new installer branch <a title="Anyonecanedit.org - Installer Preview" href="http://anyonecanedit.org/blog/2009/08/installer-preview/">last summer</a>. I worked on it with a lot of help from Max and <a title="Anyonecanedit.org - Berlin Wrapup" href="http://anyonecanedit.org/blog/2010/04/berlin-wrapup/#new-installer">demo&#8217;d it</a> in Berlin. Since Berlin, Ævar, Siebrand and Mark have joined in and it&#8217;s getting a whole lot closer to being done. It&#8217;s in trunk, the installation runs pretty smoothly. Updates are still a pain in the ass.</p>
<p>Database upgrades suck when you have to maintain them for multiple DBMSes. In working on the new installer (and associated updater refactoring), we&#8217;ve come up against a very annoying wall: maintaining versioned updates for databases gets to be difficult. With varying levels of support, the only schema that is guaranteed to work&#8211;provided someone didn&#8217;t break trunk&#8211;is mySQL. We maintain a list of of patch files to be applied, in order, on each upgrade. This list is kept up to date for mySQL; SQLite generally <em>just works</em> with mySQL&#8217;s syntax so it&#8217;s pretty close behind in support. Postgres tends to lag a few hours or days (and maintains its own set of update sequences, actually). Oracle doesn&#8217;t do patch files, but does update its default schema&#8230;so updates aren&#8217;t really possible except manually. Ibm_Db2 is all but abandoned, and Mssql <a title="r65404 - Code Review - Mediawiki.org" href="http://www.mediawiki.org/w/index.php?title=Special:Code/MediaWiki/65404&amp;path=/trunk/phase3/includes/db">was removed</a>.</p>
<p>I briefly experimented with abstracting the whole schema to a big array of table definitions, but this was going to take too much work so the work was split off into a branch. One day I&#8217;d like to go back to this&#8211;done properly, it would cure our schema woes forever. Left with no other solution, Max forced the current updaters to run from the web, grabbing the output and throwing it back at the user. This is bad for a couple of reasons.</p>
<ol>
<li>Updates can take a long time to run, especially if you have big tables. The fact that we run every update every time you try to upgrade wastes cycles.</li>
<li>It makes it impossible to localize along with the rest of the installer, all of the updaters output is hardcoded.</li>
<li>Without a clearly defined interface, it&#8217;s hard to get information back to the user and they&#8217;re left reading the output from <tt>update.php</tt>. Did the script warn or fail completely? Can we proceed?</li>
</ol>
<p>So I decided to refactor things a bit. First I changed the updatelog table to contain an optional ul_value column (it already had ul_key). I moved the array of updates into their own class, so we can at least visually separate the list from the implementation. I then moved some of the core logic out of updaters.inc into a new Update class. Issue number one is pretty much mitigated now, since the new class logs which updates are performed, so it won&#8217;t needlessly repeat updates. Issues 2 and 3 are more possible now, since we could (haven&#8217;t yet) implement an output callback system like I did for Installer::performInstallation().</p>
<p>SQLite was easy, and Oracle just has a dummy implementation for now. Postgres is another beast entirely. Like I mentioned above, it maintains its own update sequence. Parts of it make sense, parts of it don&#8217;t, but none of it is designed like the others. Basically needs to be rewritten entirely.</p>
<p>For the new-installer to be complete by the time 1.17 rolls out, we need to pick up the pace. The time for new features is pretty much over and we need to start closing up the last few bugs. Updates are a blocker still. They&#8217;re a bit better than they were, but it&#8217;s still got a lonnnggg way to go before we&#8217;re done maintaining patch files for each DBMS. As always, bugs in the new installer can go <a title="New-installer issues - Mediawiki.org" href="http://mediawiki.org/wiki/New-installer_issues">here</a> or in <a title="Bugzilla" href="https://bugzilla.wikimedia.org">Bugzilla</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://anyonecanedit.org/blog/2010/07/updaters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What wikis mean to me</title>
		<link>http://anyonecanedit.org/blog/2010/07/what-wiki-mean-to-m/</link>
		<comments>http://anyonecanedit.org/blog/2010/07/what-wiki-mean-to-m/#comments</comments>
		<pubDate>Sun, 04 Jul 2010 18:43:41 +0000</pubDate>
		<dc:creator>chad</dc:creator>
				<category><![CDATA[Free content]]></category>
		<category><![CDATA[Mediawiki Development]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Wikis]]></category>

		<guid isPermaLink="false">http://anyonecanedit.org/blog/?p=311</guid>
		<description><![CDATA[I haven&#8217;t blogged in awhile, but I&#8217;ve got some free time today and a lot on my mind. Sometime in 2004 or 2005, I first head of Wikipedia. It was this online encyclopedia with a lot of interesting articles. And the links! Oh the links; they transport you quickly to topics you&#8217;ve never even heard [...]]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t blogged in awhile, but I&#8217;ve got some free time today and a lot on my mind.</p>
<p>Sometime in 2004 or 2005, I first head of Wikipedia. It was this online encyclopedia with a lot of interesting articles. And the links! Oh the links; they transport you quickly to topics you&#8217;ve never even heard about. I soon learned that this marvelous resource was editable by people just like you an I. I was already familiar with free software, so the crowd-sourcing aspect was a concept I was already familiar with.</p>
<p>Becoming more involved, I joined the ranks of the editors and then administrators seeking to organize, revert and discuss the ever-growing content that formed the encyclopedia. My use of e-mail skyrocketed, as I found myself participating in long-winded mailing-list discussions about the intricacies of fair-use media and whether or not joke articles should be preserved. I also tried poking at the software, since it too was open source and asking for contributions.</p>
<p>Somewhere around this time, I became disenchanted with Wikipedia. Perhaps the administrative processes had taken their toll, or maybe I was just tired of arguing. I had never been a good writer (on or offline) so I couldn&#8217;t &#8220;get back to writing articles&#8221; or something of that nature. Facing a void, I turned to Veropedia.</p>
<p>Veropedia was a now-defunt venture by Danny Wool, myself and a few others to showcase the very best of what Wikipedia had to offer. Scraping (yuck) static versions that had been proofread and then using those for display to the end user. Vero was looking for a new developer, so I stepped up. I spent about a year or so working on the project and actually made some decent milestones. I managed to get a Lucene-based search going as well as ported our entire article validation script to PHP from Perl. Our technology was a hodgepodge of scripts, mostly because the original developer thought MediaWiki had too much overhead for our needs. Planning out a MediaWiki-based phase 2 of our software became the new goal.</p>
<p>So I started getting more involved with MediaWiki development. I got commit access, and started working on various bugs that were hindering Veropedia development&#8211;sidebar: I originally discovered the <a title="Bugzilla - Bug 16554" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=16554">libxml2 entity bug</a> while working on some customizations for Special:Import. And so Veropedia kind of just stayed the same while I chugged away at MediaWiki. Somewhere along the line I stopped really caring about Veropedia. I was busy with work, school and now I&#8217;d taken up MediaWiki development in my spare time.</p>
<p>Veropedia is dead. At least Veropedia as I&#8217;ve known it is dead. Actually, the server I had it living on just got shut down today. I&#8217;ve still got the leftover backups lying around, but the site itself is down. Danny still has the domain names if he ever wants to use them again, but I&#8217;m done with it. It&#8217;s not a wiki.</p>
<p>And that&#8217;s really what it&#8217;s all about to me at this point. Some point while working on MediaWiki, I realized that that was what I really wanted to do. Work on wikis. Veropedia wasn&#8217;t a wiki. Arguments on mailing lists and talkpages aren&#8217;t wikis. Collaboratively editing text is what MediaWiki does and what I&#8217;m proud to help support. I&#8217;ve started working with the Foundation on a contract to support FlaggedRevs/Pending Changes and it&#8217;s exciting to make the move from being a volunteer.</p>
<p>I really think that workflow systems like the one I&#8217;m helping to support really improve the wiki model. They help pages be as open as possible to editing while still allowing editorial control. And producing free, high-quality content is really what MediaWiki is designed to do. I think it&#8217;s pretty cool that I can help make that happen.</p>
]]></content:encoded>
			<wfw:commentRss>http://anyonecanedit.org/blog/2010/07/what-wiki-mean-to-m/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Berlin wrapup</title>
		<link>http://anyonecanedit.org/blog/2010/04/berlin-wrapup/</link>
		<comments>http://anyonecanedit.org/blog/2010/04/berlin-wrapup/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 13:14:40 +0000</pubDate>
		<dc:creator>chad</dc:creator>
				<category><![CDATA[Free software]]></category>
		<category><![CDATA[Mediawiki Development]]></category>
		<category><![CDATA[Wikis]]></category>
		<category><![CDATA[berlin]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[installer]]></category>
		<category><![CDATA[meetup]]></category>
		<category><![CDATA[volcano]]></category>

		<guid isPermaLink="false">http://anyonecanedit.org/blog/?p=300</guid>
		<description><![CDATA[I&#8217;ve been a bit delayed in writing all this up. All in all the Developers&#8217;s Meetup in Berlin went very well. Wednesday. The first day was a little rough (I was jetlagged for most of it anyway) I thought. The large groups didn&#8217;t work out terribly well and weren&#8217;t conducive to getting work done. Although [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been a bit delayed in writing all this up. All in all the Developers&#8217;s Meetup in Berlin went very well.</p>
<p><strong>Wednesday.</strong> The first day was a little rough (I was jetlagged for most of it anyway) I thought. The large groups didn&#8217;t work out terribly well and weren&#8217;t conducive to getting work done. Although we got a lot of stuff for Google Summer of Code discussed (sidebar: our <a title="MediaWiki.org - Summer of Code 2010" href="http://www.mediawiki.org/wiki/Summer_of_Code_2010">2010 projects</a> have been announced. Congrats to the 6 awesome proposals we&#8217;re working with this year), there were a lot of other things we needed to talk about too and everyone who attended wasn&#8217;t necessarily interested in GSoC. Spent the rest of the day hacking, trying to beat jetlag, and hitting up &#8220;<a title="TribaSpace - Fashion meets Tech party" href="http://tribaspace.com/calendar/1073">Fashion Meets Tech</a>&#8221; with Andrew.</p>
<p><strong>Thursday.</strong> I have to say the small group structure we adopted on day 2 worked incredibly, and I think we should continue to use that model from now on. Having small groups allowed really focused discussions on things that could really interest you. For example, I was able to work with some people in discussions regarding long-term planning for Bugzilla and Code Review or file metadata&#8211;subjects that don&#8217;t interest a lot of people&#8211;and was able to skip the sessions on OpenID or the Toolserver. It gave you a group of really interested people all very focused on the same task at hand. All of the sessions I attended were fantastic, but I&#8217;d like to summarize my two most productive ones below:</p>
<p><em id="new-installer">New-installer </em>&#8211; I led this session in one of the upstairs room just after lunch on Thursday. I was a little hesitant to show it off in the state it&#8217;s in, but I have no regrets after doing so. Everyone really seemed to like where it was going, and I got a lot of solid feedback (most of it should be at [[<a title="MediaWiki - New-installer issues" href="http://mediawiki.org/wiki/New-installer_issues">mw:New-installer issues</a>]], feel free to add items if something&#8217;s missing). Also began working with Siebrand on the localization aspects. The installer&#8217;s i18n has been split into its own file, loaded like an extension, and he completed the Dutch translation so we could start debugging. Roan also took the time to clean up the Javascript and jQueryify it. I think everyone liked it though <img src='http://anyonecanedit.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><em>Organizational issues &#8211;</em> On the first day we mainly talked about GSoC. The second day covered a lot of really important subjects such as bugtracking, code review, release management, the Mediawiki roadmap and volunteer outreach. It was largely a consensus over our known trouble spots and single points of failure. Our new CTO, Danese, informed the group that these issues are known and that specific plans are in place to fill these gaps (contingent on new budgets, et cetera). This is welcome news for a lot of us in Mediawiki/Wikimedia development. The notes of all this are <a title="Meta - Organization Working Group" href="http://meta.wikimedia.org/wiki/Wikimedia_Conference_2010/Developers'_Workshop/Notes/OrganizationWorkingGroup">on meta</a>.</p>
<p><strong>Friday. </strong>Friday was mostly spent bugsquashing and bouncing ideas off one another. And the day we all started getting very worried about a volcano from Iceland that we couldn&#8217;t pronounce. So a <a title="Bugzilla - Establish Wikimedia Branch Office in Germany" href="https://bugzilla.wikimedia.org/show_bug.cgi?id=23223">bug was filed</a> (and quickly took a life of its own).</p>
<p>The next several days were spent booking and rebooking flights. Changing hotels. Searching for laundromats. Trying to find places for free or cheap wifi. The whole conference wasn&#8217;t there (luckily), but the group who were an awesome group of people who made being &#8220;stranded in Berlin&#8221; a more enjoyable experience. I got to eat great food and talk wikis and tech for days on end. I couldn&#8217;t ask to have been stuck with a better group of people. Bonded by our &#8216;travelupdate&#8217; list and FlightRadar24.com, we managed to all stick it out in Berlin and keep the wikis running.</p>
<p>I&#8217;m glad I got to see some familiar faces, some faces I had not seen, and entirely new faces I didn&#8217;t know. I won&#8217;t be in Gdansk this summer for Wikimania, but hopefully we can manage to pull together the &#8220;East Coast Hackfest&#8221; for sometime this winter.</p>
]]></content:encoded>
			<wfw:commentRss>http://anyonecanedit.org/blog/2010/04/berlin-wrapup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Packing for Berlin</title>
		<link>http://anyonecanedit.org/blog/2010/03/packing-for-berlin/</link>
		<comments>http://anyonecanedit.org/blog/2010/03/packing-for-berlin/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 13:37:40 +0000</pubDate>
		<dc:creator>chad</dc:creator>
				<category><![CDATA[Mediawiki Development]]></category>
		<category><![CDATA[Misc Tech]]></category>
		<category><![CDATA[Wikis]]></category>
		<category><![CDATA[berlin]]></category>
		<category><![CDATA[branches]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[installer]]></category>

		<guid isPermaLink="false">http://anyonecanedit.org/blog/?p=296</guid>
		<description><![CDATA[I&#8217;ll be attending the Developer&#8217;s Workshop in Berlin next month. I&#8217;m looking forward to meeting some new faces and spending a few days neck deep in MediaWiki internals. I&#8217;ve got a couple of things I&#8217;m planning to bring with me that I think people will like. IdeaTorrent People keep kicking around the idea of using [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be attending the <a title="Meta - Berlin Developer Meetup" href="http://meta.wikimedia.org/wiki/Wikimedia_Conference_2010/Developers'_Workshop">Developer&#8217;s Workshop</a> in Berlin next month. I&#8217;m looking forward to meeting some new faces and spending a few days neck deep in MediaWiki internals. I&#8217;ve got a couple of things I&#8217;m planning to bring with me that I think people will like.</p>
<h3>IdeaTorrent</h3>
<p>People keep kicking around the idea of using IdeaTorrent for tracking enhancements to MediaWiki. I&#8217;d like to give it a shot so I&#8217;m in the process of setting up an instance of it for the Wikimedia community to play with. Hoping to have this ready by Berlin (if their website will stop going down!).</p>
<h3>New-installer</h3>
<p>In whatever shape it&#8217;s in, I plan to show off the new-installer branch to MediaWiki. This is a huge overhaul of not only the installation process itself, but the backend supporting it. I&#8217;ve also managed to sneak a long-overdue schema abstraction in, which should help with database maintenance in the future. I would like to have this in a slightly more workable state by Berlin, but I&#8217;ll be showcasing what I have nonetheless.</p>
<h3>Git Transition/Code Review/Bug Tracking</h3>
<p>People like Git. Some people think we should move to Git and rid ourselves of Subversion. I&#8217;m of mixed opinions, but I&#8217;m always open to trying new things. I&#8217;ve been working with Ævar to get a working Git copy of our Subversion repository with all of the metadata intact (or as much as we can preserve). People also are looking at <a title="Wikitech-l - Redmine" href="http://lists.wikimedia.org/pipermail/wikitech-l/2010-February/046881.html">alternatives</a> to using CodeReview/Bugzilla for our tracking systems for code and bugs/enhancements. I&#8217;m hoping to have an instance of <a title="Google Code - Gerrit" href="http://code.google.com/p/gerrit/">Gerrit</a> up and running by Berlin as well, so people can toy with that and see what they think.</p>
]]></content:encoded>
			<wfw:commentRss>http://anyonecanedit.org/blog/2010/03/packing-for-berlin/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Pushing to a release</title>
		<link>http://anyonecanedit.org/blog/2010/03/pushing-to-a-release/</link>
		<comments>http://anyonecanedit.org/blog/2010/03/pushing-to-a-release/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 10:38:31 +0000</pubDate>
		<dc:creator>chad</dc:creator>
				<category><![CDATA[Mediawiki Development]]></category>
		<category><![CDATA[Wikis]]></category>
		<category><![CDATA[branches]]></category>
		<category><![CDATA[new-software]]></category>

		<guid isPermaLink="false">http://anyonecanedit.org/blog/?p=290</guid>
		<description><![CDATA[That's right, MediaWiki v1.16 has been branched and a release candidate is underway.]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s one of those wonderful times of the year, when we get to branch MediaWiki for a stable release. That&#8217;s right, MediaWiki v1.16 has been branched and a release candidate is underway. Those of you following MediaWiki&#8211;either as a Wikimedian or for your outside uses&#8211;know that 1.16 has been a long time coming. Code reviewing has finally caught up to trunk and it&#8217;s high time a release is put forth.</p>
<p>A <em>lot</em> has changed in 1.16 (for the brave, the <a title="Mediawiki 1.16 - Release Notes" href="http://svn.wikimedia.org/viewvc/mediawiki/branches/REL1_16/phase3/RELEASE-NOTES?revision=62819&amp;view=markup">full RELEASE-NOTES</a>), and I&#8217;d like to hit on some of the major things here that I think need mention:</p>
<ul>
<li>The Metadata editor ($wgUseMetadataEdit) has been split into a separate extension, MetadataEdit</li>
<li>Introduced CDB interface for high-performance constant data</li>
<li>Default output format is now HTML5 instead of XHTML 1.0 Transitional (see $wgHtml5)</li>
<li>Maintenance scripts got a lot of cleanup and reorganization, AdminSettings.php no longer required</li>
<li><a title="Mediawiki hook list" href="http://svn.wikimedia.org/viewvc/mediawiki/branches/REL1_16/phase3/docs/hooks.txt?view=markup">New hooks</a></li>
<li>Major improvements in SQLite support</li>
<li>Test suite is now at least organized (will see more coming here in 1.17)</li>
<li>Many many other bug fixes and new features</li>
</ul>
<p>Hopefully we&#8217;ll see a general update to the Wikimedia cluster coming in the very near future, meaning that non-critical bugfixes that have been &#8220;Fixed in SVN&#8221; will finally see production deployment. The first 1.16 release candidate will be coming soon as well, which I encourage those of you using MediaWiki to download and test it out for us. See what works, what needs tweaking and what&#8217;s downright broken. It&#8217;s a big release, so we&#8217;d like to get as much feedback as humanly possible.</p>
<p><strong>Remember that all bugs goto </strong><a title="Bugzilla" href="https://bugzilla.wikimedia.org/"><strong>Bugzilla</strong></a><strong> (recently upgraded and restyled), and more information is always better than less.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://anyonecanedit.org/blog/2010/03/pushing-to-a-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
