Jump to content


From Meta, a Wikimedia project coordination wiki

Welcome to Aya's user page.

If you have any comments, feel free to leave me a message.

Personal Information

  • Aliases: Aya@Wikibooks, Aya@Wikipedia, Aya@Wikisource, Aya@Wikicommons
  • Age: 31
  • Sex: Male
  • Location: UK
  • Occupation: Computer Software/Hardware Engineer, Musician (Piano/Guitar), Wiki-author
  • Programming languages: C[++], Java, Python, Perl, PHP, BASIC (all common dialects, and many uncommon/archaic dialects), and to a lesser extent, Prolog, Lisp, Standard ML
  • Markup languages: SGML, XML, XSL (XSLT/XPath), [X]HTML, CSS, Wiki
  • Pages which keep me sane: w:Bad Jokes and Other Deleted Nonsense

Current projects


Possible Future Projects

  • Rewrite the MediaWiki engine in a lower-level language to make it more scalable. Any site that needs 20+ squid proxies probably shouldn't be using PHP. Remember, this would be rather pointless to do if it would not be used by the Wikimedia systems.
    • Discard Apache/PHP, and create a simple daemon process which handles all the HTTP requests with a database abstraction layer, initially only with support for MySQL. This should be designed to work with the existing DB structure and markup system, although the DB structure could be changed if necessary, providing a DB converter is written.
    • Implement a CVS pserver (or similar) interface, to allow offline storage and editing, and client-side diffs and merges. It might also be neat to create a client-side MediaWiki-viewer which downloads and caches the text using this inteface. This would most likely reduce HTTP traffic and DB hits significantly, and probably be much more convenient for the user too.
    • Try to create a linking system where renaming a page doesn't require a redirect, but rather have a system where the links are associated with the page object, rather than the page's name. Note that we may end up with 'meaningless' URLs (e.g. index.php?id=8679868), but I think you can get around this by simply transparently storing the IDs in the wikitext then constructing the correct URL on the server before returning the page to the user.
    • Improve the namespacing system.