Write once, run anywhere (WORA) is een term die verwijst naar het veronderstelde vermogen van een bepaald programma om op alle gangbare OS'en (besturingssystemen) te draaien. De term, soms ook uitgedrukt als write once, run everywhere (WORE), werd oorspronkelijk bedacht door Sun Microsystems in verwijzing naar Java.
Wanneer een programma WORA-capaciteit heeft, dan zou het moeten werken op apparaten die alle populaire versies van Windows, het Mac OS, Linux, Android, Solaris, NetWare, HP-UX, of een ander OS of platform gebruiken, of de fysieke machine nu een mainframe, een desktopcomputer, een notebookcomputer, een tabletapparaat, of een smartphone is. De WORA-capaciteit vereist dat het besturingssysteem van elke machine wijzigingen bevat die de bytecode van het gecompileerde WORA-programma interpreteren, zodat de processor van de machine de instructies van het WORA-programma kan uitvoeren. In het geval van Java bijvoorbeeld moet in het besturingssysteem van elk apparaat een eigen versie van JVM (Java virtual machine) zijn ingebouwd.
Hoewel Java dicht in de buurt is gekomen van het WORA-ideaal, is het succes ervan begin 2013 ontspoord toen beveiligingslekken aan het licht kwamen. Het probleem werd zo ernstig dat de Amerikaanse overheid computergebruikers aanraadde Java uit te schakelen totdat geschikte patches konden worden ontwikkeld en algemeen beschikbaar gesteld.
Sun Microsystems is niet het enige bedrijf dat de WORA-doelstelling heeft nagestreefd. Met name Microsoft is een agressieve campagne begonnen met het doel zijn API's (application program interfaces) te verbeteren zodat deze geschikt zijn voor WORA.