The Seven Deadly Sins of Bioinformatics Professor Carole
The Seven Deadly Sins of Bioinformatics Professor Carole Goble carole. goble@manchester. ac. uk The University of Manchester, UK The my. Grid project http: //www. mygrid. org. uk my. Experiment http: //myexperiment. org OMII-UK http: //www. omii. ac. uk
We’ve been developing software and ontologies and data and stuff with and for Bioinformatics and Bioinformaticians for a long time. “though it took two years before we understood each other!” Andy Brass, Professor of Bioinformatics
3
my. Grid Taverna Workflow Workbench http: //www. mygrid. org. uk http: //taverna. sourceforge. n
http: //myexperiment. org 5
The Seven Deadly Sins of Bioinformatics BOSC 2007 Slideshare. net 8091 views (02 -June-2008) http: //www. slideshare. net/dullhunk/the-seven-deadly-sins-of-bio From an original idea by Stevens and Lo
Methodology • • Email a handful of bioinformaticans. Stand well back. Collect. Edit. • Therapy on the cheap. • We all felt better. 7
I am grateful to… • • • Phil Lord (University of Newcastle) Anil Wipat (University of Newcastle) Matthew Pocock (University of Newcastle) Robert Stevens (University of Manchester) Paul Fisher (University of Manchester) Duncan Hull (Manchester Centre for Systems Biology) Norman Paton (University of Manchester) Marco Roos (University of Amsterdam) Rodrigo Lopez (EBI) Tom Oinn (EBI) Andy Law (Roslin Institute) Graham Cameron (EBI) 8
The Traditional Sins…. 1. 2. 3. 4. 5. 6. 7. Lust Gluttony Greed Sloth Wrath Envy Pride http: //en. wikipedia. org/wiki/Seven_deadly_sins 10
The Sins of Bioinformatics 1. 2. 3. 4. 5. 6. 7. Parochialism and Insularity Exceptionalism Autonomy or death! Vanity: Pride and Narcissism Monolith Meglomania Scientific method Sloth Instant Gratification 11
Sin 1: Parochialism and Parochialism Insularity • “being provincial, being narrow in scope, or considering only small sections of an issue. ” http: //en. wikipedia. org/wiki/Parochialism Insularity • “a person, group of people, or a community that is only concerned with their limited way of life and not at all interested in new ideas or other cultures. ” http: //en. wikipedia. org/wiki/Insularity 12
Reinvention of the Wheel • Rediscovering the same old problems, techniques, methods. • Creating…Yet another … – – – identity scheme. representation mechanism for data. ontology. data warehouse. integration framework. query or ontology or workflow language. • Result? Misery. But more work for the boys…. 13
• WSL-1 protein Q 93038 = Tumor necrosis factor receptor superfamily • Apoptosis-mediating receptor DR 3 member 25 precursor • Apoptosis-mediating receptor TRAMP Annotation history: • Death domain receptor 3 Q 92983 • WSL protein P 78515 O 00275 • Apoptosis-inducing receptor AIR Q 93036 O 00276 • Apo-3 Q 93037 O 00277 Q 99722 • Lymphocyte-associated receptor of O 00278 death Q 99830 O 00279 • LARD Q 99831 O 00280 • GENE: Name=TNFRSF 25 Q 9 BY 86 O 14865 O 14866 P 78507 Q 9 UME 0 Q 9 UME 1 Q 9 UME 5 http: //www. expasy. org/uniprot/Q 93038 14
Andy Law's Third Law • “The number of unique identifiers assigned to an individual is never less than the number of Institutions involved in the study”. . . and is frequently many, many more. 15 http: //bioinformatics. roslin. ac. uk/lawslaw
Bioinformatics is about mapping one schema to another, one format to another, one id scheme to another. Comparative Genomics? Comparative Bioinformatics! What a waste of time. But a handy distraction from doing some Real Science™.
Andy Law’s First (Format) Law “The first step in developing a new genetic analysis algorithm is to decide how to make the input data file format different from all preexisting analysis data file formats. ” female crimap 0 1 1 0 Knott and Haley 1 2 Keightly When they use ‘ 3’ and ‘ 4’ we will know they are doing it deliberately. 17 http: //bioinformatics. roslin. ac. uk/lawslaw
Yet another database … • Organism databases • 250+ metabolic pathway databases. • Generic Model Organism Database Toolkit. • Fly. Base, Worm. Base, SGD, Bee. Base and many other large and small community databases Yet another Integration Platform… Warehouses, Views, Mashups, Workflows … • Goble and Roberts, The state of the nation in data integration in the Life Sciences. JBI. 18
Bio. Babel • • • bioperl biojava biopython bioruby biophp biosql biouml bioeclipse biofoo biobar bio* 19
Computer Science? No thanks! Integration platforms Tools Workflow systems Ontology and Knowledge Representation Languages Database Schemas Programming Languages 20
Why don’t biologists modularise OWL* ontologies properly? *The W 3 C Web Ontology Language Er, well, like how should we do it “properly” and where are the tools to help us? We don’t know and we haven’t got any. But here are some vague guidelines. W 3 C Semantic Web for Life Sciences mailing list, 2005 21
A few months in the laboratory can save a few hours in the library. Westheimer's Law A few years at the computer can save a few hours on Google.
Reuse Rocks. Collaboration through workflow and web services VL-e Project • “instant collaboration” with Martijn Schuemie (Rotterdam) through a web service that discloses their protein synonym data. • Exchanging services and (sub)workflows with food scientists. • Web services make that easier. This isn’t the workflow – its just a picture of one 23
Of Mice and Cows • A Trypanosomiasis in Cattle workflow (by Paul*) reused without change for Trichuris muris Infection (by Jo). • Identified the biological pathways believed to be involved in the ability of mice to expel the parasite. • Workflows are memes. Scientific commodities. To be exchanged and traded and vetted and mashed. • Users add value. *Fisher P et al A systematic strategy for large-scale analysis of genotype–phenotype correlations: identification of candidate genes involved in African trypanosomiasis, Nucleic Acids Research, 2007, 1– 9 24
Sin 2: Exceptionalism • Biologist exceptionalism • Biological exceptionalism • Biology exceptionalism A root cause of Reinvention Syndrome “Bioinformatics is special” “Our domain specific outcomes requiresspecific approaches and technologies” 25
Biologist exceptionalism I’m different. We are all individuals. • I know there is already a gene name for that gene, but, I don't like it and it doesn't fit in with my schema. • It would be better if I wrote the script I need so I know what it does, how it does it and how to modify it later because I haven’t specified what it was supposed to do in the first place. 26
I am considerably more complex than you… • “There are proteins, and there are records about proteins. Records come in different formats. If I make a statement using this url, is it about the record? or the protein? ” Alan Ruttenberg • “[Usually] we have one entry per gene. We have several entries for a single gene when description of variations are too complicated to describe in FT lines (of course, this criteria depends on the annotator). For viruses, it is much more messy, due to ribosomal frame-shifts. Formalise that!” Eric Jain Uni. Prot. DB er…decomposition and untangling? 27
Biology Exceptionalism • Drawing graphs of data sets over time. • Stop it. • The real problem is complexity not scale. • The number of data sets, their diversity and how they overlap. • How they change. • Their reliability. 28
Biological exceptionalism “Biology is all exception. ” • Don’t complicate everyone’s life for the sake of a few esoteric cases. – Cameron’s 5 th Commandment of Curation • Exceptionalism paralysis. • Gather requirements expansively, prune ruthlessly • The EMBL/Gen. Bank/DDBJ/Feature Table 29
Sin 3: Autonomy or death! With added churn, indifference to users and monopoly mentality. • Compounded by the Early Adopter tendency of the community • “Hell is other people’s systems” as Jean Paul Sartre would have said if he had been a bioinformatician. 30
Autonomy IS death! • I’ll Change my interface / format whenever I feel like it, despite the fact I wanted lots of users and I have lots of users who depend on this. And I won’t bother to debug either or provide backwards compatibility. So there. – – Bio. MART changed 4 times in the 2007. NCBI changes as it fancies. Ensembl relational schema. Professional Early Bio. Java. • Churning for change sake 31
No tool is an island… • Assume – – only we will use it, whatever it may be. that it will be freestanding and unlinked to anything else. that it will always work and will keep on working. That everyone will understand it. • “Well I know what I mean. And so does my friend. So I don’t need to specify it. Or document it properly. Or keep the metadata up to date. ” • Never mind the interface, just look at my implementation! • Metadata, Models, Interfaces, Services matter. 32
Workflow commodities • Workflow published with its paper and its data set. • So what happens when I want to run this workflow again? • Is the service dead? • Is the dataset still there? • Was it designed to be reproduced or reused in the first place? 33
The my. Grid Service De. Crypting Sweatshop Franck Tanoh notice how tired they look Katy Wolstencroft 34
Lincoln Stein said a while ago… “An interface is a contract between data provider and data consumer” • Document interface; warn if it is unstable • Do not make changes lightly – Even little fiddly changes break things – Provide plenty of advance warning • When possible, maintain legacy interfaces until clients can port their scripts Support as many interfaces as you can • HTML, Text only (better), HTTP, REST, SOAP • Easy Interfaces + Power User Interfaces …and he could say it again today. 35
Stability is more important than Standards, Smartness, or the latest Thing that everybody is talking about.
Sin 4 Vanity Pride Narcissism conceit, egotism or simple selfishness. Applied to a social group, denotes elitism or an indifference to the plight of others 37
I know it all. • Claiming to know everything about biology and everything about computers. • Really irritating to biologists AND computer scientists. • Even they don’t claim to know everything about biology or computer science. • Computer scientists do know a lot of stuff. And they publish too. • “Biologists are the experts on everything because we produce the data” And what would you suggest, Mr. Smartie Pants? 38
Think like me! Be like me! Misunderstanding and disrespecting users • Building interfaces that only you can use. • Not actually using your tools in the field. I understand workflows Workflows are for biologists. My granny can do • Designing good experiments is hard. workflows. . . • Workflows are computational experimental protocols. Ergo…. • Writing workflows is hard. • Writing good workflows is really hard. • Writing good reusable workflows is really hard. 39
A good User Experience outweighs smart features and cool computing. Bummer. Can I use it? Is the user interface familiar? Does it fit with my needs?
Sin 5: Monolith Meglomania delusions of grandeur. • • obsession with grandiosity and extravagance. • Data mining – “my data is mine, and your data is mine” 41
• Integration – the more the merrier. No. – Every link is a potential dead link. – Every dependency finds its way on to your critical path. • “Uber-tools” and “Uber-databases” – Ensembl, Bio. MART etc…. cost • Apps/libraries in bioinformatics workbenches – with loads of crap bundled in, none of it kept up to date, none of it properly integrated. • Put it all in a warehouse. – Lots of warehouses and lots of toolkits…GMOD, Bio. Warehouse, Bio. MART blah…. – 50% warehouses fail. (Standish Group) 42
The trouble with warehouses • Warehouses work? Piffle. They never manage to maintain synchrony with the source data. Mostly they fall down of their own weight!” Graham Cameron, EMBL-EBI • "Our ability to capture and store data far outpaces our ability to process and exploit it. This growing challenge has produced a phenomenon we call the data tombs, or data stores that are effectively write-only; data is deposited to merely rest in peace, since in all likelihood it will never be accessed again. Data tombs also represent missed opportunities. " Usamma Fayyad Yahoo! Research! Laboratories! • We believe that attempts to solve the issues of scientific data management by building large, centralised, archival repositories are both dangerous and unworkable” Microsoft 2020 Science report. 43
Distributed Annotation System http: //www. biodas. org Reference Server Annotation Server AC 003027 M 10154 AC 005122 WI 1029 AFM 820 AFM 1126 AC 005122 WI 443 Now we call this a mash up 44
Sin 6: Scientific Method Sloth • Its easier to think of a new name than use someone else’s. • I want my own view over data and views are difficult, so I’ll create my own database. • Leads to Reinvention, Exceptionalism • Often the result of Instant Gratification 45
Ennui • Garbage in, garbage out – Running analysis over the wrong datasets – E. g. Identifying chicken proteins in mouse cells. • Configuration traditionalism – Not changing the parameters of BLAST. Ever. • Top list ennui – If there is a list only looking at the first one. – Look no further than the first Blast hit / first Google hit. • Arbitrary cut-offs on rank-ordered result list – Absolute truth above, absolute falsehood below – E. g. differentially expressed genes in microarray analyses. 46
Quality Delusions • The bioinformatics does not have to be sound, because we only trust wet-lab results anyway. • Worrying about errors in experimental data but believing that derived data is always true. • Believing Trembl is always right. • Believing computational gene predictions are always correct. 47
• Irreproducible Black Box Science Can you reproduce Stuff In bioinformatics analyses? – Not collecting the provenance of the analysis. – Not testing during software development. • Uni. Gene – What is happening during Uni. Gene clustering? – ‘Human’ descriptions (via NCBI), are not exact. – The Human Transcriptome Map project and other microarray analysts ended up reclustering Uni. Gene [Marco Roos]. Stuff Out 48
“No experiment is reproducible. ” Wyszowski's Law “An experiment is reproducible until another laboratory tries to repeat it. ” Alexander Kohn
Sin 7: Instant Gratification • Greed? Gluttony? • • • Always the immediate return. Never investing for the future. The quick and dirty fix. Refusing to model or abstract. Refusing to plan for recording and exchanging. • Just getting the next quick fix. • The pressure to deliver now and pay later www. cartoonstock. com. 50
Hackery • Deliver now, pay later – Producing crap, non-reusable, software because only the biological results matter for publication X. – Collect! Analyse! Er…now what? – NO up to date or useful DOCUMENTATION! • Spaghetti-ism – Over-indulgence in PERL – Over-indulgence in Ascii Art flat files. – Modelling a system by hacking up XSD fragments on a whiteboard. – Writing perl scripts that resemble my high-school BASIC of the 80 s. 51
Law's Second Law • “Error messages should never be provided” corollary. . . “If error messages are provided, they should be utterly cryptic so as to convey as little information as possible to the end user” 52
Blind faith in XML (or any mechanism) • “It’s in XML, thus all data integration problems are solved. ” XML • “The good thing about XML is that it is human readable”. !!*£!*! 53
Blind Faith in Foo. • There's a new thing to use. • we don't understand it yet. • so it sucks up all the stuff we already know we don't understand. • Lack of appreciation about exactly what the new technology addresses in itself before trying to make it work for us. 54
Pioneering development methods • Development by anecdote – I heard in the pub that the way to go was Foo. – Though I have no idea what Foo is or why it is the way to go. • Design by hacking – It would be better if I wrote the script I need so I know what it does, how it does it and how to modify it later because I haven’t specified what it was supposed to do in the first place. – Hmmm…. . We call that Extreme Programming or Emergent Semantics or Web 2. 0 in CS . 55
• • At the other end of the spectrum… Often found in industry Over-engineered solutions Delivered too late That solve a problem the users didn’t know they had • Or are hard to use • Or wire their favourite tool in 56
Sin Summary Reinvention Parochialism and Insularity Autonomy or death! Chur n Exceptionalism Scientific method Sloth Instant Gratification Monolith Meglomania Vanity: Pride and Narcissism Maybe only one “original sin” in bioinformatics. 57
Why do these sins exist? Can we become less sinful? Are bioinformaticians particularly naughty? No naughtier than Computer Scientists. And its all very hard. Though they are naughty…
Long Jump Forgive us our sins…. 1. Reward Culture The Selfish Scientist and Self-promotion, Research vs Production, Reuse is Hard 2. Mechanism evangelism More than one mechanism New and my shiny Gadget syndrome 3. Gang warfare If you are not with us you are against us Interdisciplinary mistrust and conflict 4. Blazing the trail Invention, not Reinvention Delivery bulge 5. Fear and Trust Luddism Trust (or lack of it) 6. Its Hard Hybrid Exhaustion The Selfish Scientist and Selfpromotion Research vs Production Reuse is Hard More than one mechanism New and my shiny Gadget syndrome If you are not with us you are again us Interdisciplinary mistrust and conflic Invention, not Reinvention Delivery bulge Luddism Trust (or lack of it) Hybrid Exhaustion 59
The Selfish, Self-interested Scientist • Reputation. Results right now. Win. More funds! • Fear of dependency. Fear of being left behind. • Understand the incentives and barriers to adoption. “A biologist would rather share their toothbrush than their (gene) names” Mike Ashburner, Professor Genetics, University of Cambridge, UK 60
Short Jump Funding and Social structures software/ontology/database/thing Are against shareable reusable 1. Self-promotion – I can publish every new monolithic thing and I can’t publish if I reuse someone else’s thing. 2. Novelty vs Standards – Standards are boring “blue collar” science (Quackenbush) 3. Research vs Production Confusion – – – How do you get funding for production software other than claiming to be researching stuff? How do you get a publication out of a bit of research software without claiming a potential user-base? I don’t want to be a long-term service provider! 61
Reuse is Hard • Writing reusable workflows is hard. – Local services. Permissions. Licences. • Writing reusable services is hard. – Predicting the unknown required by the unknown. – Its an effort – What is in it for me? Helping out my competitors! Forcing me to support others? • Finding and using “reusable” workflows and services and tools is hard – Where do you go? ? What does it DO? ? 63
My New Gadget Syndrome • This is inherited from Computer Science I fear. • Sorry. • A few evangelistic voices, very loud, vested interest, for their application, win. 64
More than One Mechanism Muddle urn: lsid: uniprot. org: {db}: {id} http: //purl. uniprot. org/{db}/{id} Global Identity naming mechanism for data objects in the Life Sciences. LSIDs and URIs and PURLs. WS-Naming and all its friends. W 3 C Semantic Web Health Care and Life Sciences Interest Group public-semweb-lifesci@w 3. org 65
Discipline gang warfare Short Jump The Montagues and The Capulets, Comparative and Functional Genomics, 2004 Endurants, Perdurants, Being, Substance, Event The Ontology War
Invention, not Reinvention • Bio. MOBY pre-dates (Semantic) Web service revolution – Though not 20 years of SOA • OBO and OBO-Edit pre-dates OWL and Protégé-OWL – Though not 20 years of Knowledge Representation. • Taverna pre-dates a reliable Open Source BPEL engine – Though not 20 years of lambda and pi calculus and petri nets. • There ARE features that Bioinformatics needs that other solutions don’t cater for. • And solutions needed URGENTLY 69
Delivery Bulge 70
Luddism • Refusing to have biology go beyond a cottage industry. • Being scared to do it properly. • Railing against big science • The cult of amateurism. [Stevens] 71
Trust I don’t trust your code I don’t trust your data I don’t trust you will still be around in one year I don’t trust your workflow I don’t trust you will use my data / workflow / code properly
Hybrid exhaustion and pressure. • Biology + Computing + Bioinformatics • It. Is Hard. 73
What can we do to be less sinful? Make sharing easier Make sharing rewarded Think Components Only standardise the minimum Embed bioinformaticians and computer scientists Presume naughtiness
Think Safe Sharing of Stuff • Understanding outside my expertise. e. g. sources of error. • A comprehensive catalogue of web services • A Facebook for workflow builders. • Learn from others. Even Computer Science. And other Sciences. • Try and create a culture of raising quality. Somehow. 75
http: //myexperiment. org 76
Think Components • Stop building monolithic solutions • Component-ise Bioinformatics – – – Loosely coupled systems Stable APIs, standardised metadata. Design to combine. Sort out the naming/id problem If you can’t agree, agree on the bridge. Virtualise Web Services • Raise the level of abstraction – Less Perl, more workflows – Enable users to extract the data they need without hassling you. • “Standardise messages not structures” Graham Cameron 77
Short Jump Think how it Really Is™… • • …incremental change …others use our stuff …others add value to our stuff …scientific naughtiness • • deal with it, or expose it. end to black boxes workflows as a route to transparency open notebook science • scary stuff. 78
Think User and Developer together • Embed Bioinformaticians with Computer Scientists and Biologists 80
Think Web 2. 0 Design Patterns 1. The Long Tail 2. Data is the Next Intel Inside 3. Users Add Value 4. Network Effects by Default 5. Some Rights Reserved 6. The Perpetual Beta 7. Cooperate, Don't Control 8. Software Above the Level of a Single Device • De Roure, D. and Goble, C. (2008) Six Principles of Software Design to Empower Scientists. IEEE Software (to appear). http: //eprints. ecs. soton. ac. uk/15032/ 81
“Other men's sins are before our eyes; our own are behind our backs” Seneca Roman philosopher, mid-1 st century AD
- Slides: 77