Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Website Overview Todd Harris ([email protected] Website Milestones 20 releases (3 frozen) User Survey (670 respondents) Community, outreach, coordination 4 new genomes Website redesign 40% of users are grads Yearly(4%) Montly (6%) 54% use WormBas e daily Weekly (35%) Daily (54%) U.S.A. Canada U.K. Japan Germany China France South Korea Switzerland The Netherlands 55.2% 7.3% 4.5% 5.3% 5.3% 3.6% 2.1% 1.3% 2.0% 1.2% Usage: Page Views Scope 187 scripts - ~280K lines of code 103 classes - unique displays for most Displays, searches, analysis Community & Outreach Discussion (forums) SOPs & FAQs (Wiki) Staying Up-To-Date Mailing lists RSS Staying Up-To-Date twitter.com/wormbase Project Coordination Basecamp (37signals.com) The Road Ahead: A modern web application what we have hardware platform sophisticated caching & load balancing failover horizontal scaling virtualization 24/7/365 uptime what we have software platform Barnacles Square wheels Knots what we have software platform Barnacles • monolithic CGIs (Perl) • fast development, few strictures • many coders, many styles • many hacks == many bugs Lots of maintenance what we have software platform Square Wheels • rolled our own • insufficient tests • introduces instability Slows us down what we have software platform Knots intermixed logic: application business display Difficult to unplug just one what we have software platform Barnacles Square wheels Knots Doesn’t scale: performance or team Strategy 1. Use a web framework 2. Employ deliberate design 3. Convert site & maintain current structure 1. Use a web framework • • • • • Hard tasks easy, easy tasks automatic Enforce structure & coding style Flexible and maintainable Extend resources Due diligence: RoR, CGI::Application, Catalyst The Catalyst Framework Catalyst (catalyst.perl.org) •Open source •Model - View - Controller separation •Active community •Perl - can reuse good parts 2. Deliberate design (I) Generic: database & species Web 2.0 Influences User-configurable and interactive Community knowledge: tagging and trends API: mining & integration (REST interface) Multiple Formats: HTML, PDF, XML, JSON Deliberate design (II) Borrow from Information Architecture, Usability, Graphic Design. Include extensive tests Open platform: core, plugins. Increase: usability, readability, absorbability The current site is page-based Keep this Discard this Sections = Widgets functional unit: content not page get some REST! A Gene Report: /gene/unc-2/report ...as PDF: /gene/unc-2/report/pdf All alleles: /gene/unc-2/alleles 3. conversion progress lines 75% converted current refactored Cleaner, simpler code Scraping lines 5x fewer barnacles current refactored 4. Roadmap current 2.0 (classic) 2.0 (new) Select pages, old look, new structure Begin demo new UI Release new Full site in new structure; UI phase out old