Archive Roadmap 2010
Published: 2010-06-02 16:47:45 -0400
Since beginning work on the Archive of Our Own in early 2008, we've built a whole host of awesome features. Moving forward, we have many more exciting plans to come. Below you can see our high-level roadmap, which maps out what we've done so far and what we have planned, along with some other information about future features on the Archive of Our Own.
Archive of Our Own: Roadmap
This roadmap shows the major milestones which have been or will be completed in the development of the Archive of Our Own. It's not meant to be set in stone - things evolve and shift as we go along - but provides an overview of where we've been and where we'd like to go.
Version 0.1: Archive Core 1
Version 0.1 was completed April 2008 and included:
- The basic functionality for an individual user, allowing them to create an account, create / edit / delete a text-based work, view a list of works or a single work, and comment on a work.
- The basic functionality for admin accounts, allowing them enhanced control over other users and works in the Archive. Admin accounts are separate from regular user accounts and only include admin functions (so admins can't create a work, bookmark things on the Archive, etc).
- Globalization features: The Archive is encoded in UTF-8 (friendly to non-Roman characters) and the basic features needed to allow translation of the interface into different languages were put in place at this stage.
- A basic co-authoring function.
Version 0.2: Archive Core 2
Version 0.2 was completed May 2008 and included:
- Previews and basic versioning: Users could preview a work before posting it, and any changes to the work would be marked as 'major' or 'minor'.
- Viewing history: Users could keep track of the works they'd viewed on the Archive, and see if they had changed since their last view.
- Pseuds: The first version of our pseuds feature was introduced, allowing users to associate different names with the same account. This feature allows people to preserve their original pseudonyms for older work without having separate accounts, and is also intended to make RPing easier - you can post as 'Captain Jack (Unique_User)' instead of creating another account as 'Captain_Jack123'.
- Privacy options: This version allowed users to restrict visibility of their works to Archive account-holders only.
- Archive configuration: At this point we started to build in some Archive configuration options to make it easier for certain features to be changed easily. (This work is still ongoing - we'll be introducing more features for custome configuration as time goes by).
Test Archive launched
May 2008 saw us launch our Test Archive. This meant that the Archive code was no longer working only on our developers' home machines, but was also deployed to a webserver and accessible online for developers and testers.
Version 0.3: Archive Core 3
Version 0.3 was completed June 2008 and included:
- Bookmarks: The main functionality for bookmarking works on and off the Archive was included in this release.
- Refinements for basic functionality: Comments, works, chapters and user logins were all improved.
- User preferences: We added a user preferences section and some features for users to control through preferences! This has continued to develop through the lifetime of the site.
Version 0.4: Tags
Version 0.4 was completed July 2008 and included:
- Tags: Core features for tags, including the ability to tag works and bookmarks, and the existence of different categories for tags (fandom, character, pairing, etc).
- Tag wrangling: Version 0.1 of tag wrangling, including relationships between tags and the ability for wranglers to alter relationships. This functionality allowed us to relate tags such as 'Sam/Dean' and 'Dean Winchester/Sam Winchester', allowing users to input their preferred tags while building up a taxonomy behind the scenes.
Version 0.5: Search and Browse
Version 0.5 was completed July 2008 (mixed in with tags) and included:
- Basic search: A simple search box powered by Sphinx and the UltraSphinx plugin.
- Basic browse: Filter boxes generated form the tags on works.
Version 0.6: Administration and Orphaning
Version 0.6 was completed August 2008 and included:
- Administration: Core features for admins, including the ability to hide works and suspend users. A separate admin interface with its own stylesheet was implemented to help ensure that login admins are only used for Archive adminstration and not as regular logins.
- Abuse reporting: Introduced the ability for people to report breaches of our TOS to the Abuse team via a form.
- Orphaning: This version introduced the ability to 'orphan' stories, detaching them from your user account while leaving them in the Archive. This feature is part of our mission to enable the preservation of fanworks even when circumstances mean fans no longer wish to publically 'own' them.
- Better content controls: Adult content flags were introduced, requiring users to confirm that they were willing to access adult content.
Closed Beta Launch
The Archive entered Closed Beta in October 2008. This extended membership of the Archive beyond our development team to a limited group of users who were willing to test it out and give us lots of feedback. Invitations to join our closed Beta were extended to OTW volunteers and to anyone who left us lots of feedback on the site!
Interlude 0.1: Tests, Refinements, and enhancements
Once the main features of the Archive were in place, we spent a lot of time strengthening our code, introducing enhancements, and writing tests. The time between the completion of Version 0.6 and our Open Beta launch in November 2009 was spent doing lots of 'off roadmap' work, including some major pieces of functionality.
Automated test suite
We implemented a big range of automated tests using the fixture_replacement and shoulda plugins. Tests are updated and added to as the Archive develops, and help us detect when a new feature has broken something else!
Translations version 0.2
Changes in the way Rails handled internationalization meant that we had to make radical changes to our globalization and translations frameworks, which were almost completely rewritten.
Tag Wrangling version 0.2, and 0.3
Patterns of use on the Archive and changing technical requirements meant that we reworked our tags and tag wrangling features several times. Big changes were put in place to create new types of relationships and to improve the wrangling interface.
Before we went to Open Beta, we needed a way to offer accounts on the Archive by invitation, and a way of issuing invitations automatically to anyone who signed up.
Front end beautification
Once all the main functionality was built, we needed it to look pretty. This period saw a massive project updating all the stylesheets and making the Archive look good.
We implemented a Support form integrated with bug tracking system 16Bugs, which allows users to submit support requests which our team can easily manage.
Across this whole period we had many, many small but awesome features implemented. The ability to mark works as an inspiration! Backdating so that the published date of works could reflect when they were first written! Work on creating series and reordering chapters! A rich text editor! The option to browse by fandom! All this and much, much more was completed by our awesome developers.
Colocation and Open Beta
Much of the work in the months running up to November 2009 was related to buying the Servers of Our Own:
In September 2009 we bought two shiny co-located servers of our very own!.
On November 14th, 2009, we entered Open Beta. For the first time we were able to share our beautiful Archive with all of fandom, issuing invitations to anyone who signed up for one.
Version 0.7: Collections and Challenges, Tag Wrangling Version 0.4, Front End Revamp
The components of this milestone are complex and interrelated - we've been working on it since we went to Open Beta, and it's still not finished!
Versions 0.7.0 - 0.7.2
This phase was completed December 2009 and included:
- Basic collections functionality: the ability to create a collection of works with a description and allow others to submit works to it.
- Basic challenge functionality: the ability to hide works submitted to a collection and reveal them at a certain time, the ability to mark a work as a giftfic.
This phase was completed March 2010 and included:
- Front End Revamp: A total rewrite of the front end code for the site, making it more stable, more accessible, and more attractive.
- Tag Wrangling 0.4: More big revisions to our tag wrangling interface, making it more robust and usable, and the introduction of metatags.
- Challenges and gift exchange functionality: The ability to sign up for a challenge, specify wants and offers, and match participants within a gift exhange.
This phase was completed April 2010 and included:
- The first version of our 'light' style, which will ultimately enable a greater range of styling on the Archive, and helps to smooth the way for embedding other media!
We hope to complete this milestone by June 2010 with some additional challenge features, notably functionality for challenges other than gift exchanges.
Version 0.8: Support, Skins, Search and Translations
We're aiming to complete version 0.8 round about August 2010 (although this is a very rough estimate and may move significantly either way). It will include:
- Support Board: Our own on-Archive Support interface which will enable any Archive user to answer support requests, help our core Support team keep track of urgent requests, and enable private requests.
- Feature requests: A public feature requests board where people can see and rate other users' requests, and we can mark things 'accepted' so that it's easier to see what we're working on.
- Skins: The much-requested ability to customise the way the Archive looks! This will include a bunch of ready-made skins and a wizard to help users make their own.
- Advanced Search and Browse: A major performance and usability upgrade to the search and browse interface. This will make it much easier to find specific things and run complex searches.
- Translations: A major revamp of our translations feature, which is currently disabled because it almost melted the Archive. :( We'll be looking into some new options which will do more of the work for us, and developing a shiny new interface so our translations team can make the Archive more accessible to non-English speakers.
Interlude 0.2: Performance, Tests and Refactoring
Before we progress to our next big projects, we'll need to do some more work ensuring that the Archive is stable and performing well. Stuff we'll need to do includes:
- Some major refactoring of certain core code, notably the works model. Refactoring - rewriting the existing code to make it neater and more efficient - should give us improved performance and allow us much more flexibility in the long run. We hope it will enable us to accommodate non-textual media better and to improve our drafts function.
- Forms review: Our forms across the Archive need rationalizing so they're more stable and more accessible.
- Caching review: Caching (where we save a static copy of a page so our servers don't have to recreate it every time someone accesses it) needs some improving and extending. This is one of our major priorities for improving performance.
- Servers and database optimizing: We could use our existing servers more effectively to improve speed and performance - we're hoping to make some changes with that in mind.
- We need more automated tests so that when we change things on the Archive, it's easy for us to spot if we've created any new problems. This is an ongoing thing, but we'll be making a push to ensure our test suites are up to date.
Version 0.9: Subscriptions, Mixed Media and Exporting
We're aiming to complete Version 0.9 round about January 2011 (although this may move significantly one way or the other). It will include:
- Subscriptions: This feature will allow much more customization of content on the Archive, generating a custom reading page which will show the works you're most interested in. You'll be able to subscribe to:
- A user's works or recs
- A particular tag or set of tags
- A user's works and/or recs with a particular set of tags
- A particular collection or collections
- Possibly other things we haven't thought up yet!
- Mixed media enhancements: In this revision we'll be introducing more options for works which are not text-based, including:
- Wider HTML options (allowing more styling and facilitating embedding of other media.
- Options for indicating the media type and form of your work. This will allow creators to specify whether their work is visual art, video, audio or text, and to describe exactly what format it's in - digital art! haiku! plushie theatre!
- Options for browsing works in different media and formats.
- Exporting of individual works: We'll be implementing ways to easily export individual works in different formats, so that users who like to download works to read on portable devices or in different formats can easily do so.
- Improved work management: We'll be massively revamping our drafts capability, making it easier to manage editing works on-site before you post.
Version 1.0: Package release
We're aiming to complete all the necessary work required to make the Archive software package stable and usable for other users by approximately August 2011. (All work following Release 1.0 is still in the planning stage, so no estimated dates are included past this point.) This release will include the following:
- Enhanced admin features: We'll be revamping our admin structure to make the different roles on the Archive more manageable, and ensuring that the package comes with the option for one master admin who can create other roles through the Archive interface.
- Enhanced FAQ and TOS features: We'll be making it easier to edit the FAQ and TOS through the Archive interface, making these features more easily translatable, and adding more search options.
- Setup assistance: We'll be implementing features and documentation to make it easier for people to set up the Archive software to run their own archive.
- Permissions: We'll be chasing up permissions for various things we'll need to distribute as part of the Archive package, such as fonts.
Server upgrade and Systems improvements
By the time we hit Release 1.0 (and possibly before!) we'll need to upgrade our servers, increase the amount of bandwidth we have, and improve our systems management. All these things will be necessary for us to keep on expanding the Archive, ensure good service to our users, and expand the range of media we can host on the Archive. We're already looking at the kind of server options we'll need to ensure that this kind of expansion is possible - we're excited about moving forward, but want to be sure we pick the best option. .
Version 1.1: API and Import/Export options
Version 1.1. will expand the options for connecting the Archive to other services. It will include:
- Archive API: By this point we should be stable enough to release a public API. This will allow people to write clients for the Archive, creating applications which do just exactly what they want.
- Exporting from the Archive: We'll introduce more options for people to export their own works and bookmarks from the Archive, making it easier to create offline backups, import bookmarks into other services, etc.
- Importing to the Archive: We'll improve options for importing on a large scale, offering options to import from other services such as delicious, to import Archives, etc. We'll also improve the import option for single works with options such as import from Google Docs.
Version 1.2: Art Hosting
At this point we'll start to offer a much fuller range of options for fanartists, including hosting fanart on the Archive servers, more options for uploading and editing art on our servers, and other enhancements. We're still developing our plans for this based on the awesome feedback we received from fanartists.
Version 1.3 and beyond: Multimedia Integration
This is the point at which we'll be opening a full range of options to fan creators in all media. We'll be working in tandem with the planned Torrent of Our Own (see the Vidding Roadmap) and hope to be able to integrate streamed vids with the main Archive interface. Exactly what form this takes will depend on the way our Vidding Archive develops: We're still investigating appropriate technologies and figuring out what we can achieve.
Archive of Our Own: Goodie Bag
In addition to things which are tied to a specific stage in the Archive's development, we have a whole host of 'goodies' which we want to include as we go along. These will be implemented as and when coders and designers are able and willing to put them into practice - if we get a lot of user demand for something, that often encourages someone to adopt the project. On our list for future inclusion at present are:
- Improvements to our 'history' option which lets you keep track of what you've viewed on the Archive.
- A 'kudos' option which will let you quickly show that you liked someone's work without leaving a full comment.
- Private messages between Archive users.
- A typo-alert function so you can easily alert someone if there is a minor error in their work (optional).
- Better chapter management so you can indicate prologues and epilogues in works.
- Better features for user home, so you can arrange and browse works / fandoms more easily.
- Rich text editor improvements: Inclusion of a rich text editor in more places across the site, and more options in the editor itself.
- Improvements to editing multiple works.
Archive of Our Own: Hall of Possibilities
There are a bunch of ideas which we're currently considering implementing, but which are still in the 'maybe' stage. We'll consider whether we can do these things and whether users really want them before moving them into the goodie bag. On our maybe list at present are:
- Better options for collaborative works such as round robins and RPs.
- Beta search service.
- The option to list the beta of a work in a dedicated field.
- The option to list your presence on other services (Dreamwidth, DeviantArt, etc) in a dedicated field on your profile.
- The ability to disable comments on a particular work or all works.
Your Archive needs YOU!
The Archive of Our Own is by fans, for fans, and we encourage as much involvement from the fannish community as possible!
- Tell us what you want! The roadmap was developed and has evolved on the basis of demand from the fannish community. If there's a feature or an enhancement you'd like to see, please get in touch! If there's something we're not doing, or something we are doing which doesn't work for you, we want to know. Feel free to drop us a comment or to submit a request via our Support and Feedback form.
- Volunteer to help! We always need more help! You can get involved as a coder, tester, tag wrangler, support volunteer, systems admin, or in many other roles across the org. We welcome people with all levels of experience - just drop us a line via our Volunteers and Recruitment Committee letting us know what you're interested in working on.