Mag IFTTT eisen dat je je API aanpast voor hun schraapdienst?

| AE 8546 | Innovatie | 5 reacties

Stel je voor dat je afvoer gaat eisen dat je je dieet aanpast, las ik op de Pinboard blog. Deze verrassende analogie was bedoeld om een recente eis van koppelsite IFTTT (If This Then That) te illustreren. IFTTT had van Pinboard gevraagd naar hun nieuwe platform te migreren zodat het koppelen van diensten nóg makkelijker zou worden (je hóórt de marketingmeelbal). Maar daar hoorden wel een partij zeer eenzijdigde voorwaarden bij. Kan zo’n dienst dat afdwingen bij willekeurige bedrijven, op straffe van verdwijnen uit het IFTTT-aanbod?

Met IFTTT kun je allerlei diensten aan elkaar knopen. Een e-mail krijgen als een RSS-feed een nieuw item heeft, een gefavoriteerde tweet in Evernote opbergen, de foto’s in je Facebookfeed naar Dropbox kopiëren als ze getagd zijn met #bewaren, en ga zo maar door. Er zijn nu bijna 300 kanalenEen erg handige dienst, waar ik zelf ook gebruik van maak.

IFTTT heeft in het begin hard moeten bouwen om dit voor elkaar te krijgen. Want een RSS-feed is relatief makkelijk uit te lezen op een standaardmanier, veel andere diensten zijn een stuk ingewikkelder. Een belangrijk deel van het werk van IFTTT is dan ook te zorgen dat al die koppelstukken blijven werken. Past een site haar API aan, dan moet IFTTT aan de bak zodat alle koppelingen met die API blijven werken.

Dar moet anders, dachten ze bij de koppelstukdienst, en ze besloten het om te draaien: IFTTT heeft een eigen API waarmee deelnemende sites gegevens kunnen aanleveren, zodat IFTTT die via haar kanalen kan koppelen. Een stuk eenvoudiger voor hen, maar zoals de Pinboard-mensen zeggen – dat is wel de omgekeerde wereld, dat jij je dienstverlening moet aanpassen omdat de leverancier van de koppelstukjes dat vraagt.

Juridisch kan ik er geen hard argument tegen bedenken. Dit is gewoon een zakelijke optie die je krijgt als je groot genoeg bent om voor eindgebruikers van significante waarde te zijn. Het doet Pinboard meer pijn dan IFTTT als de bookmarkingdienst niet op de koppeldienst staat, en die macht gebruikt IFTTT. Daar is op zich niets illegaals aan. Je kunt het onaardig vinden, en dat doen ze bij Pinboard ook:

However, cutting out sites that you have supported for years because they refuse to work for free is not very friendly to your oldest and most loyal users. And claiming that it’s the other party’s fault that you’re discontinuing service is a bit of a dick move.

De enige juridische constructie die ik kan bedenken, is het mededingingsrecht. Als een partij een economische machtspositie heeft, dan gaan er andere spelregels gelden. We noemen dit vaak een monopoliepositie, maar dat is te sterk geformuleerd. Het gaat erom dat je macht hebt op de markt, wat bijvoorbeeld blijkt uit het feit dat je de prijsleider bent. Shell is in die positie in de benzinemarkt bijvoorbeeld.

Wie een economische machtspositie bezit, mag die niet misbruiken. Zo werd Microsoft in 2004 gedwongen haar Windows API’s beschikbaar te stellen aan het opensourceproject Samba, omdat een blokkade van die dienst als misbruik werd gezien. Meer algemeen is het al snel misbruik als je concurrenten toegang tot je platform weigert. Je zou dus kunnen stellen dat IFTTT misbruik maakt, omdat haar eisen om toegang te krijgen (zelf al het werk doen én akkoord gaan met een zeer vergaande TOS waarin onder meer exclusiviteit wordt afgedwongen en het eigendom op de koppelsoftware naar IFTTT moet) zo ver gaan dat ze vrijwel neerkomen op weigeren.

De vraag is dan natuurlijk wel of IFTTT zó machtig is dat we het een economische machtspositie vinden. Kan zij zelfstandig bepalen hoe dingen in deze markt moeten werken? Komt ze weg met harde eisen als deze? Zit ‘iedereen’ hier omdat ze vinden dat ze gen keus hebben? Altijd een lastige bij internet. Want op zich kún je vaak naar een andere dienst. Het Google- of Facebookargument: welnee, wij zijn helemaal niet machtig want www.bing.com of www. eh, ja, een Facebook alternatief .com is zo getypt.

Hier ligt het iets anders denk ik: het gaat om macht doordat veel eindgebruikers het een prettige dienst vinden, en die macht wordt bij leveranciers ingezet. Die leveranciers kunnen niet zomaar weg want hun klanten de eindgebruikers worden dan boos. Dus die leveranciers hebben weinig keus. Maar is dat genoeg om he een machtspositie te noemen?

Arnoud

Twitter sluit Amerikaanse Politwoops

| AE 7734 | Uitingsvrijheid | 9 reacties

twitter-politieMicroblogdienst Twitter heeft de Amerikaanse site Politwoops afgesloten, las ik bij Sargasso. Op Politwoops zijn tweets van politici te lezen nadat de twitterende politicus deze had weggehaald. Het idee erachter was dat je zo kon zien welke flaters of andere opmerkelijke uitingen politici weg wilden poetsen (“het gaat niet om de typefouten”), maar Twitter beroept zich nu op de privacy van haar gebruikers en verklaart deze actie in strijd met de gebruiksvoorwaarden.

Op Politwoops kan je alle tweets zien die politici eerst plaatsten en even later weer verwijderden, aldus de site. Bij de meeste daarvan kun je je afvragen wat nu het nieuwsbelang is dat die tweet ooit is geplaatst, laat staan weggehaald. Maar het is zeker denkbaar dat politici achteraf een uiting ongelukkig vinden, en dan is de delete-knop natuurlijk een heel aantrekkelijke.

Arjan el Fassed meldt tegenover Sargasso:

Wat politici op een publiek kanaal zeggen moet voor iedereen te vinden zijn. Dit gaat niet om de typefouten die zij maken. Het gaat juist om het inzicht dat het geeft in de veranderde boodschap van politici. Dat gaat vaak aan ons voorbij.

En daar zit wat in: als een politicus in het openbaar wat zegt, dan doet hij dat in functie, en even los van typefouten en dikke vingers is wat hij zegt zeker relevant voor het publiek. Die lezen de tweets, en die hebben dus effect ook al worden ze nadien weggehaald. Misschien juist wel de tweets die zijn weggehaald.

Twitter zegt nu echter:

[marketingreutel over hoe prachtig het werk van Politwoops is] but preserving deleted Tweets violates our developer agreement. Honoring the expectation of user privacy for all accounts is a priority for us, whether the user is anonymous or a member of Congress.

Dat klinkt natuurlijk leuk, maar privacy lijkt me niet echt een issue wanneer iemand in functie in het openbaar een uiting doet. Dus dit voelt als een wat gezochte reden. Ik wil niet meteen een samenzwering vermoeden, maar je raakt hier toch wel een tikje door geïntrigeerd.

En het is erg zorgelijk te bedenken dat je als journalist geen openbare uitingen kunt bijhouden zonder afhankelijk te zijn van een private derde, die kennelijk zomaar kan besluiten dat dat niet meer mag.

Arnoud

Maakt linken van een GPL bibliotheek je software automatisch GPL?

| AE 7290 | Intellectuele rechten | 40 reacties

Intrigerende discussie in de comments vorige week: als je programma linkt tegen een GPL open source library, is je programma dan alleen onder de GPL te verspreiden? Immers, de GPL zegt dat je afgeleide werken alleen onder de GPL mag verspreiden. En wat is er nu meer afgeleid dan een programma dat noodzakelijkerwijs een library gebruikt? Het programma wérkt niet zonder de library. Maar Europees auteursrechtelijk waag ik dat toch te betwijfelen.

De term ‘afgeleid werk’ is een tikje ongelukkig. De term komt uit het Amerikaans auteursrecht; in Europa kennen we alleen de ‘verveelvoudiging in gewijzigde vorm’, oftewel een kopie, al dan niet aangepast, van (een deel van) het werk. Dat klinkt inderdaad wat beperkter, en dat is het volgens mij ook.

In de SAS/WPL-uitspraak heeft het Hof van Justitie de grenzen getrokken van het software-auteursrecht. In die zaak beriep SAS zich op een auteursrecht voor haar programmeertaal en functionaliteit daarin, maar gedaagde WPL kreeg gelijk, zo’n auteursrecht bestaat niet.

Auteursrecht op software bestaat volgens de hoogste Europese rechter alleen op de broncode en de daarvan afgeleide uitvoerbare code. Men noemt dit de ‘uitdrukkingswijzen’ en daaronder wordt alleen datgeen verstaan dat tot “reproductie van het computerprogramma of tot het computerprogramma zelf kunnen leiden”. Je moet dus, kort gezegd, met wat er overgenomen of gebruikt is in het andere werk, het originele programma zelf althans gedeeltelijk kunnen terugvinden.

Bij het gebruik van een software library roep je in je eigen programma een functie aan, waarna de implementatie van de library wordt uitgevoerd om de betreffende functionaliteit te realiseren. In het SAS/WPL arrest ging het om functies uit een programmeertaal, maar ik zie het verschil niet met een API van een specifieke bibliotheek. In feite is de implementatie van een programmeertaal ook een library (of set libraries) die je middels een API aanroept. Wil je in C een tekst op het scherm, dan zeg je printf("Hello, world!");, waarna libc de implementatie daarvan uitvoert, en wil je bij GNU readline een regel invoer verkrijgen dan zeg je readline(my_prompt);, waarna readline de implementatie daarvan uitvoert. Dat is technisch volgens mij dus hetzelfde.

Meer algemeen, als het aanroepen van een functie van een bibliotheek zou meebrengen dat je het auteursrecht op die bibliotheek schendt, dan zou het auteursrecht dus in feite de functionaliteit beschermen die achter de functie zit. En dát is nadrukkelijk niet de bedoeling in het Europese auteursrecht.

Gelet op deze overwegingen moet worden geconstateerd dat, wat de elementen van een computerprogramma betreft (…), noch de functionaliteit van een computerprogramma, noch de programmeertaal en de indeling van gegevensbestanden die in het kader van een computerprogramma worden gebruikt teneinde de functies daarvan te benutten, een uitdrukkingswijze van dit programma vormen in de zin van [het auteursrecht].

Het opnemen van een functie-aanroep in je programma (zoals printf("Hello, world!"); of readline(my_prompt);) kan dus niet leiden tot een auteursrechtinbreuk op libc of GNU readline, omdat die functie-aanroep nog geen uitdrukkingswijze van het programma libc dan wel readline vormt. Pas als je code zou overnemen, ook in gedeelten, zou er inbreuk kunnen ontstaan.

Wat de GPL of de FSF zeggen over afgeleide werken, linken of Complete Corresponding Source doet er hierbij volstrekt niet toe: je komt pas aan terminologie uit een licentie toe als er sprake is van inbreuk. Pas dan zou de aanroeper van de software immers hoeven te zeggen “geen inbreuk, ik heb een licentie”.

Het argument uit Oracle/Google dat het maken van de API zélf creatief is, gaat hierbij niet op. In die zaak werd Google’s API-kloon van Java inbreukmakend geacht omdat Oracle creatieve arbeid had gestoken in het definiëren daarvan. Maar dat was natuurlijk ook het geval bij de SAS programmeertaal waarvoor WPL programma’s maakte. De functionaliteit, dus ook hoe de functies heten, wat ze doen en welke parameters en return values daarbij horen, is geen “uitdrukkingswijze” van het programma.

Een complete reproductie van de API zou mogelijk wél inbreuk kunnen zijn. In de SAS/WPL uitspraak stond ook de eigen handleiding van WPL ter discussie, waarin elke functie was opgenomen (maar volgens mij ook stukken tekst uit de documentatie van SAS). Dit is iets dat de rechter per geval moet onderzoeken: hoe veel is er overgenomen en hoe creatief is hetgeen overgenomen is? Mogelijk dat bij een handleiding het citaatrecht nog een verweer kan zijn, maar bij een volledige overname met als doel een interface-compatibele kloon te schrijven twijfel ik zeer of dat opgaat. Maar wellicht biedt dit dan een lichtpuntje:

In deze context moet worden gepreciseerd dat indien een derde een gedeelte van de bron- of doelcode betreffende een voor een computerprogramma gebruikte programmeertaal of indeling van gegevensbestanden zou aanschaffen en hij met behulp van deze code soortgelijke elementen in zijn eigen computerprogramma zou creëren, deze handeling mogelijkerwijs een gedeeltelijke reproductie in de zin van [het auteursrecht] zou opleveren.

Het lijkt dus echt nodig dat er ook broncodes worden overgenomen. En puur de definities van de functies voldoen niet snel aan die eis.

Wat vinden jullie? Is er een wezenlijk verschil tussen een API van een of andere bibliotheek aanroepen versus de functies uit een programmeertaal? Maakt het uit of er maar één implementatie van die API+bibliotheek is? Of zijn er andere redenen om een API-aanroep toch inbreuk op het auteursrecht te noemen?

Arnoud

Oracle’s Java API auteursrechtelijk beschermd in VS, Android maakt inbreuk

| AE 6637 | Intellectuele rechten | 21 reacties

Een Amerikaans gerechtshof heeft vrijdag in hoger beroep bepaald dat Google met zijn Android-besturingssysteem het copyright van Oracle heeft geschonden, las ik bij Tweakers. Nadat eerder nog was bepaald dat er geen auteursrecht zat op de API’s van Oracle’s Java, beslist het Hof van Beroep nu anders: de aangeboden code en de structuur, volgorde en… Lees verder

Mag je een productnaam noemen zonder toestemming van het bedrijf?

| AE 6634 | Ondernemingsvrijheid | 11 reacties

Een opmerkelijke tweet zag ik gisteren voorbij komen: automatiseerder Centric meldt aan concullega Zaaksysteem.nl dat het gebruik van Centric’s productnamen niet toegestaan is zonder haar toestemming. Opmerkelijk, want het gaat hier om een opsomming van koppelingen naar onder meer Centric-producten en niet om de verkoop van concurrerende producten onder die namen. Mag dat nu ook… Lees verder

Wanneer is een API reverse engineeren computervredebreuk?

| AE 6374 | Security | 27 reacties

Een lezer vroeg me: Onlangs is de OV-Chipkaart app uitgekomen. Uit analyse blijkt dat de app per request een specifieke signature meestuurt, en zonder die signature komt er geen reactie vanuit de server van Trans Link Systems. De methode waarop de signature gemaakt wordt is te achterhalen met decompileren en daarna eenvoudig na te maken…. Lees verder

Goedemiddag, wij komen even bij u twitteren dat u het leuk vindt hier

| AE 6031 | Innovatie | 25 reacties

Hm. Is dit nu juridisch interessant of niet? Mensen die zich bij de NY Comic Con aanmeldden, ontdekten dat ze ineens twitterden hoe leuk ze het vonden. Volgens de CC geen probleem: daar hadden ze toestemming voor gegeven bij het inschrijven. Want ja, er stond “this application may tweet on my behalf” bij het aanmelden… Lees verder

Mag ik een API reverse engineeren voor mijn eigen app?

| AE 5041 | Intellectuele rechten | 43 reacties

Een lezer vroeg me: Steeds meer sites en platforms komen tegenwoordig met een eigen mobiele app, maar lang niet altijd zo handig als wel zou kunnen. Nu werken deze apps met op de achtergrond een API (application programming interface) die ik met mijn eigen app ook zou kunnen aanroepen. Maar mag ik hun app reverse… Lees verder

Google Shoot View mag niet van Google

| AE 2824 | Intellectuele rechten | 3 reacties

De game Google Shoot View, een first-person shooter binnen Street View is door Google offline gehaald wegens schending van auteursrecht, las ik bij Gameliner. Google Shoot View is een spelletje waarin spelers via Google Streetview op mensen en gebouwen konden schieten. Er ging niet echt iets stuk, het ging puur om het idee van rondlopen… Lees verder

Een curieus takedownverzoek op een foto van een aap

| AE 2628 | Intellectuele rechten, Iusmentis | 113 reacties

Zit er auteursrecht op de foto hiernaast? Je zou zeggen van wel: leuke camerahoek, kleurspel, precies goede moment gekozen om af te drukken. Alleen: de maker is in dit geval de afgebeelde aap die de camera had geleend (via) van fotograaf David Slater. Het beest bleek geïntrigeerd door de reflectie van hemzelf in de lens,… Lees verder