Hackety hack hack

Atypisches Nutzerverhalten mit Rat und Tat.

Rezepte, Urheberrecht, Werke

Steile Thesen können zum Absturz führen oder wie eine Sprungschanze zum Weiterfliegen dienen. Hier ist eine steile These zum Urheberrecht, zum Werkbegriff und vielleicht zum Thema Geschlechter:

Bei 140 Zeichen auf Twitter ist selten alles so differenziert wie bei einem längeren Text. Zum Glück gibt es Blogs.

Ich bin davon überzeugt, dass es bei der Frage, was der Allgemeinheit gehört und was Privateigentum ist, keine Naturgesetze zum Tragen kommen. Einhegungen fallen nicht vom Himmel. Bei Fragen nach Urheberrecht und geistigem Eigentum lohnt es sich also immer, auch auf die Gesellschaft und ihre Machtverhältnisse zu schauen. Für mich spricht diese allgemeine Erkenntnis dafür, dass bei der Frage, warum Kochrezepte keinen Schutz nach dem Urheberrecht genießen, gesellschaftliche Machtverhältnisse und Zuschreibungen eine Rolle spielen. Sie spielen überall im Leben eine Rolle, warum dann nicht auch hier?

Jedoch: Es gibt ein paar Anzeichen dafür, dass die Aussage “Kochrezepte fallen nicht unter den Schutz des Urheberrechts, weil meistens Frauen kochen” in einer ganz vereinfachten Form auch problematisch ist:

  1. In der Spitze und deshalb auch bei den Autoren von Kochbüchern finden sich viele Männer (Bocuse, Oliver). Wenn Männer für ihre Werke Urheberrecht durchsetzen, um Geld zu verdienen, dann hätten sie hier durchaus eine wirtschaftliche Motivation.

  2. In anderen Bereichen, die Teile der Gesellschaft als traditionell weiblich lesen (Handarbeit, Mode), gibt es durchaus Copyfight: Auch wenn zumindest im amerikanischen Recht das Schnittmuster selbst nicht unter den Schutz des Copyright fällt, sondern nur Layout und Abbildung, so gibt es doch teilweise harte Kämpfe um Copyright und Nachnutzung, geführt sowohl von Unternehmen wie Burda als auch von Indie-Designer_innen im Internet.

Nach längerem Nachdenken (und Nachlesen im Internet) habe ich kein eindeutiges Fazit der steilen These.

Ich vermute, dass es Praxen gibt (in diesem Fall: kochen), die seit Jahrhunderten als völlig verschieden von dem Genius der schöpferischen Arbeit angesehen werden. Manchmal werden sie nicht mal als Arbeit gesehen (der Begriff der Care-Arbeit setzt hier an). Dann wiederum ist unbestreitbar, dass es Stars gibt (viele davon Männer), die mit urheberrechtlich geschützten Rezepten Geld verdienen könnten.

Als Zwischenergebnis bleibt für mich nur: Urheberrecht ist verwirrend – und manchmal eben auch willkürlich.

Nachtrag: Ich wurde auf einen extrem lesenswerten Artikel zum Thema bei iRights hingewiesen.

Noch ein Nachtrag: Julia Reda hat einen kluge Kommentar auf Facebook zu dem Thema:

Komplimente per Knopfdruck mit dem Dash-Button

Seit Dezember betreibe ich ein kleines Experiment am Arbeitsplatz. Mit einem Amazon Dash-Button und einem Raspberry PI habe ich eine kleine Installation angebracht, denn Wertschätzung ist wichtig: ein Button, der auf Knopfdruck zufällige Komplimente per Mail an eine zufällige Kollegin oder einen zufälligen Kollegen verschickt.

Drückt jemand auf den WLAN-getriebenen Internet-of-Things-Button bekommt irgendjemand im Büro ein Kompliment per Mail.

Gezielte Komplimente können natürlich auch weiterhin persönlich und analog überbracht werden, aber digital ist besser.

Grundlage des Projekts ist dasher.

Es gibt auch eine Aufnahme von einem der ersten Knopfdrücke.

Leider hat sich der Amazon Dash Button als nicht besonders gut für das Experiment herausgestellt: Nach einer geringen 3-stelligen Anzahl von Knopfdrücken stellt dieser den Betrieb ein. Wenn wir jetzt jedes Mal den Button neu kaufen, würde uns das ca. 4ct pro Kompliment kosten. Das ist es uns natürlich Wert, aber wir sollten auch an die Umwelt denken.

Im Moment arbeiten wir an einem Ersatz auf der Basis von NodeMCU. Sobald diese Lösung fertig ist gibt es auch das gesamte Projekt unter einer freien Lizenz.

Bemerkenswerte Datensätze

Wer Dinge mit Daten veranstalten möchte, braucht Datensätze. Das Netz ist voll mit Datensätze, auch solche mit zweifelhafter Ethik.

Hier sind ein paar interessante, die mir aufgefallen sind:

Orte, die mit ‘ow’ oder ‘itz’ enden

Ich hatte eine Hypothese, auf die ich durch ein Lied gebracht wurde: Orte, die mit “ow” oder “itz” enden, befinden sich mehrheitlich nicht in Westdeutschland (aka die alten Bundesländer).

Schön, dass sich diese Hypothese mit Wikidata überprüfen lässt:

Hier lässt es sich ausprobieren

Ergebnis der Query Ich muss sagen, das Ergebnis erstaunt mich. Es gibt ein paar Ausrutscher, aber das Cluster der Punkte bildet ziemlich genau die Umrisse der ehemaligen DDR. In dieser Deutlichkeit hatte ich nicht erwartet, dass die Hypothese belegt wird. Woher kommt es?

Die Namen auf -ow finden sich vor allem in Nordostdeutschland, wo Ortsnamen slawischer Herkunft häufig sind. Mithin in Mecklenburg, Vorpommern, weiten Teilen Brandenburgs (in der Lausitz seltener), dem Norden und Osten der Altmark, dem Wendland und Teilen des Herzogtums Lauenburg. Auch unter den deutschen Namen von Orten im Osten von Pommern und im Osten von Brandenburg, die heute in Polen liegen, finden sich solche auf -ow. Dagegen sind in Gegenden wie Sachsen oder Teilen von Österreich, wo es eine Reihe von Ortsnamen slawischer Herkunft gibt, keine auf -ow zu finden.

Ebenso slawischen Ursprungs und in Ostdeutschland verbreitet ist die Endung -itz.

Gotta catch ‘em all if they are prime

Pokemon collection

Pokémon, as Wikipedia tells us, is a multi-billion dollar media franchise controlled by video game giant Nintendo, and created by Satoshi Tajiri around 1995. Interestingly enough, Pokémon has had quite an impact on the Wikipedia project, with the completeness of Pokémon characters resulting in the Pokémon test, so named after editors used similar arguments to try to “keep” other articles—if [named Pokemon character] has an article, why shouldn’t this topic? For example, in arguing against the deletion of an article in 2005, one editor wrote “Wikipedia is not paper; if we can have articles for every minor character in Star Wars, Star Trek, and each of those pesky Pokémon, we can have an article about Professor Hopper.” (See the article on the Wikimedia blog for the full story).

I played around with the Wikidata Query Service and SPARQL queries recently. As one of the first projects on Wikidata was WikiProject Pokémon (initially known as the Pokémon Task Force), information on the fictional Pokémon species and their numbers (the Pokédex numbers) is rather complete. A query with SPARQL for all Pokémon is easy:

 
 
 
 
 
 
 
 
# Gotta catch 'em all
SELECT ?pokemon ?pokemonLabel ?pokedexNumber
WHERE
{
  ?pokemon wdt:P31 wd:Q3966183.
     ?pokemon wdt:P1112 ?pokedexNumber
SERVICE wikibase:label { bd:SERVICEParam wikibase:language "en" }
} ORDER BY (?pokedexNumber)

You can try out this query.

But I wanted a query that was a little more complex: Find all Pokémon with a number in the Pokédex that is prime. My first try didn’t work. The mistake I made: I wanted to compare the Pokédex number with the label of a prime number. Unfortunately, the label service in the Wikidata Query Service fills in labels too late to use them in a subquery. But the community was helpful as ever. User:Nikki pointed me in the correct direction: Use rdfs:label instead. Here’s the solution:

 
 
 
 
 
 
 
 
 
 
 
 
 
# Gotta catch 'em all if they are prime
SELECT ?pokemon ?pokemonLabel ?pokedex WHERE {
{ 
  SELECT ?prime WHERE {
    ?p wdt:P31 wd:Q49008;
   rdfs:label ?prime FILTER (lang(?prime) = "en") .
         }
  }
  ?pokemon wdt:P31 wd:Q3966183;
   wdt:P1112 ?pokedex FILTER (xsd:integer(?pokedex) = xsd:integer(?prime)).
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }.
}
ORDER BY ?pokedex

Try it out

But there’s an even simpler solution without a subquery that is obvious once you wrape your head around the fact that query doesn’t work like map in functional languages but is rather closer to declarative programming. It’s basically: “Find a solution that satisfies all the triples given above”.

See it here:

 
 
 
 
 
 
 
 
 
 
 
# Gotta catch 'em all if they are prime
SELECT ?pokemon ?pokemonLabel ?pokedex WHERE {
?prime wdt:P31 wd:Q49008;
   wdt:P1181 ?pokedex .
      
?pokemon wdt:P31 wd:Q3966183;
 wdt:P1112 ?pokedex .

SERVICE wikidatabase:label { bd:serviceParam wikibase:language "en". }.
}
ORDER BY ?pokedex

Try out this

Thanks again, User:Nikki!

Nebeneinkünftequartett der Bundestagsabgeordneten – Offene Karten mit offenen Daten

Seit einiger Zeit gibt es die Nebeneinkünfte der Bundestagsabgeordneten als offene Daten. Die Berliner von OpenDataCity haben seinerzeit daraus eine JSON-Datei gebastelt, die in zehn Stufen einmalige, monatliche und jährliche Nebeneinkünfte vermerkt (noch genauer wollten es die Abgeordneten dann doch nicht haben mit der Transparenz).

Mit Python, Wikidata, Mustache und SVG habe ich mich hingesetzt und daraus Spielkarten gebastelt, für besinnliche Quartettrunden mit Offenen Daten an langen Winterabenden.

So sieht etwa die Spielkarte für Dr. h. c. Hans Michelbach aus der CDU/CSU-Fraktion aus:

Dr. h. c. Hans Michelbach

Den kompletten Satz aller Spielkarten gibt es als .zip-Datei zum Download.

Das Python-Skript, um die Spielkarten selbst zu generieren, liegt auf github. Nicht in allen Fällen konnte ich mit Wikidata ein Bild des oder der Abgeordneten finden, im Zweifel liegt das aber an mir.

Viel Spaß beim Spiel und möge das höhere Nebeneinkommen gewinnen. Oder so.

Zwei akademische Papers zu Computerspielen und Daten aus Freiem Wissen

  • Data Adventures This paper outlines a system for generating adventure games based on open data, and describes a sketch of the system implementation at its current state. The adventure game genre has been popular for a long time and differs significantly in design priorities from game genres which are commonly addressed in PCG research. In order to create believable and engaging content, we use data from DBpedia to generate the game’s non-playable characters locations and plot, and OpenStreetMaps to create the game’s levels.
  • Drawing Questions from Wikidata Bachelor Thesis by Fabian Bissig, Distributed Computing Group, Computer Engineering and Networks Laboratory, ETH Zürich

Wikidata-Items schnell auf der Kommandozeile nachschlagen? Mediawiki APIs hacken

Ein richtiger Hack ist das nicht, aber es ist besser, wenn ich das folgende aufschreibe, bevor ich es wieder vergesse.

Wikidata benutzt für jeden Wissensgegenstand in der Datenbank einen Bezeichner, der mit Q beginnt (oder mit P, wenn es sich um eine Eigenschaft handelt). Berlin ist z.B. Q64.

Wenn ich etwa mit qLabel die Möglichkeiten multilingualer Labels auf Basis von Wikidata in Webseiten benutzen will, brauche ich diese Bezeichner mit Q für alles, was übersetzt werden soll.

Prima wäre es, wenn ich auf der Kommandozeile einfach ein paar Begriffe eingeben könnte und die entsprechenden Q-Bezeichner als Liste bekomme. Und so wird’s gemacht:

Die API von Wikidata folgt im Grunde der allgemeinen MediaWiki-API, die ich schon an anderer Stelle beschrieben habe.

Um jetzt auf der Kommandozeile darauf zuzugreifen, brauche ich noch zwei Tools:

Der Begriff “Hacker” ist schön zweideutig und kann viele Bedeutungen annehmen, die jeweils eigene Wissensgegenstände in Wikidata mit eigenem Q-Bezeichner sind. Suchen wir doch einfach danach!

Suche nach einem Titel (z.B. in der englischen Wikipedia)

curl -s https://www.wikidata.org/w/api.php\?action\=wbgetentities\&sites\=enwiki\&titles\=Hacker\&languages\=en\&format\=json | jq -r '.entities | keys'

Hier bekommen wir nur einen Q-Bezeichner zurück, nämlich genau den, der zu der Seite mit dem Titel “Hacker” in der englischen Wikipedia passt (in dem Fall: eine Begriffserklärungs-Seite).

Suche nach Labels von Wissensgegenständen

curl -s https://www.wikidata.org/w/api.php\?action\=wbsearchentities\&search\=Hacker\&language\=en\&format\=json | jq -r '[.search[].id]'

Hier bekomme eine längere Liste, z.B. mit dem Computerspiel gleichen Namens, der Subkultur, dem Begriff in der Computersicherheit etc.

Mit curl und jq zusammen kann ich mir beliebige Kommandozeilen-Programme für die Wikidata-API schreiben und auf das zurückgegebene JSON-Ergebnis zugreifen. Die Möglichkeiten sind fast endlos.

Mischmasch

Vielleicht fing es alles auf dem Apple II an. Wenn du zu lange in die Tabellenkalkulation hineinblickst, blickt die Tabellenkalkulation auch in dich hinein. Vielleicht fing unser Blick auf die jetzige Ökonomie 1978 mit VisiCalc an – spekuliert zumindest Steven Levy: ”Moreover, we are becoming a society of businesspeople. We speak in a jargon derived from the business world (“What’s the bottom line on this?”). We read columns on “personal money management” that urge us to speculate in markets once reserved for the very few. We have accepted the venture capitalist as a role model. The buzz word these days in computer software firms looking to expand their markets is “personal productivity,” as if the home itself — maybe life itself – were best viewed as a business.

Keine Spekulation: Ökonomisch verändert sich was im Weltgefüge. Es ist aber nicht alles Share, was glänzt. Manchmal ist es einfach nur Warenform statt Teilen. Vielleicht hilft uns die Wissenschaft namens Cliodynamics, die Isaac Asimov noch als psychohistory als Science Fiction beschrieb, dabei endlich die Zukunft zu verstehen.

Und es bleibt ja immer noch Code, wenn du sonst niemanden hast. Damit kannst du die Enigma verstehen (in nur 30 Zeilen). Oder ein Lisp bauen (in 26 Sprachen).

Was? Warum ich mich mit so einem Quatsch beschäftige? Weil das hier mein Blog ist, vielen Dank, liebe Aufmerksamkeitspolizei. Während ich dies schreibe wird langsam weiss zu gold. Halt nein, es war schon immer schwarz und blau.

Nachrichten aus der Zukunft