Geschrieben von Jens Ohlig



Software Craftsmanship at Wikimedia Deutschland: Rewriting the Wikimedia Deutschland fundraising application

German summary: Jeroen De Dauw, Software-Architekt bei Wikimedia Deutschland, hat in zwei Blogposts architektonischen Überlegungen hinter einer umfangreichen Refaktorisierung der Spendenplattform-Software und ihre praktischen Umsetzungen beschrieben.

The story behind the refactoring of Wikimedia Deutschland’s fundraising framework

It took a team of software developers at Wikimedia Deutschland (Jeroen de Dauw, Kai Nissen, and Gabriel Birke) eight months to refactor the fundraising framework for the annual donation campaign.

Jeroen, software architect in the software development department, wrote two in-depth blog posts about the architectural concept behind the rewrite and how they approached it technically, all based of the principles of Clean Code and Software Craftsmanship.

 

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (5 Bewertungen, Durchschnitt: 4,20 von 5)
Loading...

10 cool queries for Wikidata that will blow your mind. Number 7 will shock you.

Dieser Blogpost ist auch auf Deutsch verfügbar.

Wikidata is an open knowledge base that collects facts (statements) on pieces of knowledge (items). It is run by the Wikimedia Foundation, developed by a team led by Wikimedia Deutschland, and tended and cared for by a global community of volunteers. Unlike Wikipedia, that contains knowledge collected by volunteers written in free form, it is machine-readable and pieces of knowledge and can be queried in relation to each other.

Dozens of application already use the knowledge base. One particularly cool way to access knowledge in Wikidata is through queries in the SPARQL query language. Just a little knowledge of SPARQL goes a long way to query for facts and relationships – thus opening new horizons and rearranging knowledge in a totally new way.

With SPARQL, the possibilities are virtually endless. Follow along for 10 cool queries: Weiterlesen »

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (6 Bewertungen, Durchschnitt: 4,33 von 5)
Loading...

10 coole Wikidata-Abfragen, die dir neue Horizonte eröffnen. Nummer 7 wird dich schockieren.

This blog post is also available in English.

Wikidata ist eine offene Datenbank für strukturiertes Wissen, die einzelne Fakten (Statements) zu bestimmten Begriffen (Items) sammelt. Sie wird von der Wikimedia Foundation betrieben, technisch federführend von Wikimedia Deutschland entwickelt und von der weltweiten, ehrenamtlichen Wikimedia-Community gehegt, gepflegt und beständig erweitert. Im Gegensatz zu Wikipedia, die händisch geschriebenes Wissen von vielen Freiwilligen speichert, ist Wikidata maschinell lesbar und einzelne Wissensbestandteile und Zusammenhänge sind gezielt abfragbar.

Dutzende Anwendung nutzen die Datenbank bereits als Grundlage. Eine der besonders coolen Wege das in Wikidata gespeicherte Wissen abzufragen und zu nutzen sind sogenannte Queries (Abfragen) in der Abfragesprache SPARQL. Mit etwas SPARQL-Kenntnissen können eben bestimmte Zusammenhänge und Wissenbestandteile aus Wikidata abgefragt werden – und sie eröffnen dir ganz neue Horizonte und stellen Wissen in ganz neuen Beziehungen dar.

Die Möglichkeiten für SPARQL-Abfragen sind praktisch unbegrenzt. 10 coole Abfragen stellen wir dir hier vor: Weiterlesen »

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (3 Bewertungen, Durchschnitt: 3,67 von 5)
Loading...

Neues aus der Software-Entwicklung bei Wikimedia Deutschland: September 2016

Monatlich stellen wir einige Ergebnisse der Arbeit in der Software-Entwicklung bei Wikimedia Deutschland vor. Die Zusammenstellung führt eine Auswahl von fertiggestellten oder neu begonnenen Arbeiten auf.

Technische Wünsche

Einige Wünsche wurden im September wahr: Der Versionsblätterer ist jetzt auf allen Wikis als Beta-Feature verfügbar. Auch Benachrichtungen wurden verbessert und auf allen Wikis ausgerollt.

Begonnen wurden umfangreiche Arbeiten zum Versionsvergleich und zur Darstellung von Tabellen beim PDF-Export.

Wikidata

Wikidata wächst und gedeiht. Die Arbeit im September bestimmten unter anderem Unit Conversion: Dadurch ist es möglich Eingaben in Feet bei Items abzulegen und die Abfrage in Metern zu formulieren. Auch zu der Zusammenarbeit von unterschiedlichen Wikibase-Instanzen (Federation) wurde erste Schritte unternommen.

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Noch keine Bewertungen)
Loading...

Neues aus der Software-Entwicklung bei Wikimedia Deutschland: Juli 2016

Monatlich stellen wir einige Ergebnisse der Arbeit in der Software-Entwicklung bei Wikimedia Deutschland vor. Die Zusammenstellung führt eine Auswahl von fertiggestellten oder neu begonnenen Arbeiten auf.

Technische Wünsche

Abgeschlossen wurden die Arbeiten am RevisionSlider, auf der deutschsprachigen Wikipedia auch als Versionsblätterer bekannt. Die Extension läuft auf der deutschsprachigen, hebräischen und arabischen Wikipedia als anschaltbares Beta-Feature.

Neu begonnen wurden Vorarbeiten zu Benachrichtigungen bei Erwähnungen (notifications on mentions). Dieses Feature wird uns noch einige Zeit beschäftigen.

Wikidata

Bei Wikidata bestimmten Arbeiten zu strukturierten Daten für Commons den Monat Juli. Besonders stolz sind wir darüber, dass wir erste vorzeigbare Ergebnisse auf einem Demo-System zur Verfügung stellen können. Die Arbeit befindet sich noch einem sehr frühen Stadium und ist weit davon entfernt, auf Commons eingesetzt werden zu können, aber erste Einblicke sind jetzt schon möglich.

Eine umfangreiche Erklärung zum Demo-System für strukturierte Daten auf Commons findet sich in der Ankündigung auf Wikimedia Commons.

 

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Noch keine Bewertungen)
Loading...

Neues aus der Software-Entwicklung bei Wikimedia Deutschland: Juni 2016

Monatlich stellen wir einige Ergebnisse der Arbeit in der Software-Entwicklung bei Wikimedia Deutschland vor. Die Zusammenstellung führt eine Auswahl von fertiggestellten oder neu begonnenen Arbeiten auf.

Veranstaltungen

Im Juni waren einige Entwicklerinnen und Entwickler unterwegs, um Vorträge zu halten oder technische Unterstützung zu geben. Zu der von uns besuchten Gulaschprogrammiernacht und dem HPI-Hackathon gab es an dieser Stelle auch Blogbeiträge: Zur Gulaschprogrammiernacht, zum Hackathon HackHPI in Potsdam.

Wikimania

Die Wikimania in Italien war im Juni die wichtigste Veranstaltung für die Software-Entwicklung. Hier gab es Diskussionen zur Technik und Arbeit an neuen Features auf dem Hackathon:

Und sonst?

Die Oberfläche für den Wikidata Query Service hat viele neue Änderungen erfahren. Visualisierungen für Ergebnisse können jetzt auch als HTML-Snippet außerhalb (etwa auf eigenen Webseiten) eingebunden werden. Testen läßt sich dies mit der stetig wachsenden Anzahl an Beispiel-Queries, etwa der nach den Päpsten mit mit den meisten Kindern.

 

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Noch keine Bewertungen)
Loading...

From Damascus to Berlin: A very special internship at Wikimedia Deutschland

German summary: Alaa Mustafa hat gerade 6 Wochen Praktikum in der Software-Entwicklung bei Wikimedia Deutschland hinter sich. Der syrische IT-Spezialist flüchtete letzten Sommer vor dem Bürgerkrieg in Syrien nach Deutschland. Während er auf die Mühlen der Bürokratie wartete, bewarb er sich um ein Praktikum bei der Entwicklung von Wikidata. Wir haben ihn zum Ende seines Praktikums zu seinen Erfahrungen befragt. Das Interview fand auf Englisch statt, der Sprache, die Alaa auch in der täglichen Arbeit bei Wikimedia Deutschland benutzte.

Alaa Mustafa just finished six weeks of an internship at the software development department at Wikimedia Deutschland. The Syrian IT specialist came to Germany last summer, fleeing from the war. While he was stuck in bureaucracy, he applied for an internship to become part of the Wikidata team. We asked him about his experience at Wikimedia Deutschland in a short interview as his internship came to an end.

Can you tell me something about your background?

My name is Alaa Mustafa. I was born in Damascus and I am 28 years old. First, I studied in an institute for computer engineering for two years. Then I moved to university and studied for four years, with a major in information technology. Actually, after graduation, I didn’t work in that field. Rather, I was working in a company which sold consumer electronics – pretty much like Media Markt or Saturn here. There I worked in sales, in marketing, and in the business development team.

And then you came to Germany?

Yes, I came to Germany last summer, one year ago.

And what made you apply for an internship at Wikimedia Deutschland?

I’m a newcomer here, so I was looking for ways to integrate – Germany is a new country for me. I searched on websites for jobs in English and there I came across Wikimedia Deutschland. I reached out, got an interview, and then Lydia (product manager of Wikidata) accepted me.

Right now, you’re still waiting for the bureaucracy to sort out everything. Are you allowed to work now?

I may work, but it took a long time to get an approval from the Ausländerbehörde. The Agentur für Arbeit supports me, but right now I’m not allowed to make money through my work.

All in all, did you like the few weeks that you spent with us?

I liked it very much. Back in Syria, I had already heard of Wikimedia, a big organization and a great source for knowledge. I only worked here a bit over a month, for 45 days, but I feel really proud that I was part of this organization.

Let’s talk a bit about what you did here as an intern. I understand that you mostly helped Lydia?

Actually, I was working as an assistent for Lydia. There are many things on Wikidata pages that take a lot of time that Lydia doesn’t always have to do herself – things like updates on events or new features, so I did that.

But I was also asked about the website from the point of view of a user – not as a developer, but as an ordinary user: how does the website look like when a user opens Wikidata for the first time. We talked about possible improvements to the interface. Our UX team at Wikimedia Deutschland is currently working on the user experience and I was able to support them.

Last week you invited your colleagues for Arabic food for dinner. How did that go?

I wanted to have an opportunity to talk to everyone personally. Here, in the office, we always talk about work, but having dinner together gave us a chance to get to know each other personally. It was a very friendly dinner and that evening made me very happy.

I cooked something called Hummus (حُمُّص‎‎) and some rice with chicken. Typical Arabic food – two kinds of Hummus and chicken rice. It’s delicious! But you need to learn how to eat it correctly: with your hands, using bread to scoop it up.

So many people from Syria are now in Germany, I think we’ll soon see high quality Syrian food over here. You can already find good Hummus around Hermannplatz, so it’s a start.

Would you say that there are huge cultural differences regarding the work you did in Damascus and the work here? Or is work in IT the same all over the world?

The management side is definitely different. In Syria, even if your manager is wrong, you should go with him.

Here I feel that everyone can discuss everything freely and is listened to. We have a daily standup meeting where everyone has a chance to say something. I was only here for a little more than a month and I could give an honest critique about aspects of the product and Lydia never told me that I shouldn’t criticize things – rather, she appreciated it and took it as input.

Yes, things are different here. Discussion is very much valued. That makes the work very motivating. Everyone can discuss everything with everyone and it’s a very friendly atmosphere.

Anything else you would like to say? What comes next for you?

I now feel that these 45 days were… how should I say… I’d call it my “golden days” in Germany.

Within the next 10 days, I will start learning German at a school. I already studied German on my own with books, so I’m in a good position, but I really should go to school and take a proper course. That will take about 6 months, 4 hours every day.

After that I will search for work. Let’s see if Wikimedia Deutschland will have openings. But in any case, I’m proud that I was part of this organization and I will always try to keep in touch with you.

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (17 Bewertungen, Durchschnitt: 5,00 von 5)
Loading...

Wikidata auf der GPN16

Vom 26. bis zum 29. Mai fand in Karlsruhe die Gulaschprogrammiernacht (GPN),  eine Veranstaltung des Entropia e.V. (CCC Karlsruhe) statt, zu der sowohl Mitarbeitende von Wikimedia Deutschland angereist waren, als auch Stipendiaten aus der Community. Einer der von Wikimedia Deutschland geförderten Freiwilligen, Benutzer:Gorlingor, hat über die vier Tage Spaß am Gerät bei der Hackercommunity einen kleinen Bericht für uns geschrieben.

Was ist die GPN?

Die Gulaschprogrammiernacht findet einmal im Jahr für vier Tage in Karlsruhe statt. Dort treffen sich etwa 500 Teilnehmende, um sich über verschiedene Themen auszutauschen – schwerpunktmäßig Informationstechnik –, um an eigenen Projekten zu arbeiten, um Leute zu treffen und um Spaß zu haben. Die meisten Besucherinnen und Besucher kommen aus persönlichem Interesse zu der Veranstaltung, was sich natürlich positiv auf die Atmosphäre auswirkt: Es geht dort sehr entspannt zu.

Wer bin ich?

Ich bin Jakob. In der deutschsprachigen Wikipedia hinterlasse ich als Gorlingor seit einigen Jahren meine kleinen Spuren. Als Programmierer und überzeugter Freund freier Software verbringe ich meine Freizeit aber gelegentlich auch damit, Code zu Open-Source-Projekten beizusteuern.

Was haben wir dort gemacht?

Jetzt hatte ich die Gelegenheit, drei Mitarbeitende des Entwicklungsteams für Wikidata mit zur GPN16 zu begleiten, wo sie an ihrem Tisch für Interessierte ansprechbar waren und einen Vortrag über den Query Service von Wikidata gehalten haben – für Programmiererinnen und Programmierer eine ziemlich coole Schnittstelle, weil man damit komplexe und spannende Anfragen an die Wissensdatenbank stellen kann. Zum Beispiel: Zeige mir alle Haustiere, deren Besitzerinnen oder Besitzer ein Amt bekleidet haben. Wie es aussieht, sind Hunde die beliebteren Begleiter.

Während die anderen regulär gearbeitet haben, solange der Tisch nicht besucht wurde, habe ich Fotos für den Blogeintrag geschossen, die Gelegenheit genutzt, schon mal ein paar Profis neben mir sitzen zu haben, und einen Patch für MediaWiki angefangen und nebenbei die WMDE-Mitarbeitenden kennengelernt.

Was kam an Feedback?

Im Laufe der Veranstaltung haben wir unterschiedliche Leute aus der technischen Community getroffen und dabei kamen verschiedene Fragen zustande: zur Technik, zu den Daten und ihrer Herkunft und zur Zielsetzung von Wikidata. Weiterlesen »

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (5 Bewertungen, Durchschnitt: 5,00 von 5)
Loading...

Wikidata beim Hackathon HackHPI in Potsdam

Am 11. und 12. Juni 2016 fand in Potsdam der HackHPI statt, ein Hackathon für Studierende zum Thema Datenanalyse und Machine Learning im Hasso-Plattner-Institut an der Universität Potsdam. Wikidata war vertreten, um sowohl die APIs von Wikidata und den Query-Service mit SPARQL vorstellen, als auch eine Einführung in den Machine-Learning-Dienst ORES zu geben.

Machine Learning oder maschinelles Lernen ist nach Wikipedia die „künstliche“ Generierung von Wissen aus Erfahrung: Ein künstliches System lernt aus Beispielen und kann diese nach Beendigung der Lernphase verallgemeinern. Das heißt, es werden nicht einfach die Beispiele auswendig gelernt, sondern es „erkennt“ Muster und Gesetzmäßigkeiten in den Lerndaten.

Bei ORES wird maschinelles Lernen zum Beispiel eingesetzt, um Vandalismus aufzuspüren. Nachdem typische Muster von Vandalismus trainiert wurden, erkennt das System neuen Vandalismus mit sehr hoher Wahrscheinlichkeit und kann diesen (menschlichen) Administratoren anzeigen.

Zwei Teams bei HackHPI beschäftigten sich mit dem maschinellen Lernen oder der Datenanalyse bei Wikidata. In einem Projekt wurde eine Visualisierung zum „Bias“ bei Inhalten (Artikel zu psychischen Störungen) angefertigt, um Unterschiede zwischen Sprachversionen aufzuzeigen.

 

Richtig überzeugt hat uns aber das Projekt eines Teams, das sich daran machte, „Show case items“, also besonders gut ausgearbeitete Wissensgegenstände in Wikidata aufzuspüren und zu evaluieren. Dabei wurden zunächst gut ausgearbeitete Datenobjekte wie das zu Douglas Adams maschinell untersucht, um Kriterien zu finden, die sie zu Vorzeigeobjekten machen.

Damit werden nicht nur Datenschätze in Wikidata aufgespürt, es entsteht auch ein Score als Metrik, um die „Vorzeigbarkeit“ eines Wikidata-Items bewerten zu können.

Maschinelles Lernen ist zur Zeit ein besonders spannendes Thema, an dem intensiv geforscht wird. Die Ergebnisse dieser Forschung klingen nach Science Fiction, umgeben uns aber bereits heute – digitale Assistenten im Smartphone, die auf Zuruf Dinge im Internet recherchieren, sind bereits für viele menschen Alltag. Mit Wikidata als strukturierter Datenfundus über das Wissen der Welt steht eine Quelle für maschinelles Lernen zur Verfügung, die den Anspruch hat, Freies Wissen zu schaffen – für Maschinen und Menschen gleichermaßen.

 

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (2 Bewertungen, Durchschnitt: 5,00 von 5)
Loading...

Artikel-Platzhalter für kleine Wikipedien

 

Lucie Kaffee ist Software-Entwicklerin (Werkstudentin) bei Wikimedia Deutschland und hat auch ihre Bachelor-Arbeit bei Wikimedia Deutschland geschrieben. Hier beschreibt sie, wie die Software-Erweiterung für den Artikel-Platzhalter entstanden ist und welche Überlegungen dahinter stehen.

Datei:LucieKaffee.jpg

Im Rahmen meiner Bachelorarbeit hatte ich die Möglichkeit, bei Wikimedia Deutschland an einer neuen Extension für MediaWiki zu arbeiten.

MediaWiki ist die Software hinter Wikipedia und ihren Schwesterprojekten. Diese hat sogenannte Extensions, um Funktionalitäten an die Bedürfnisse dieser Schwesterprojekte anzupassen. Wikidata zum Beispiel nutzt MediaWiki und die Wikibase Extension, die sich um die strukturierten Daten in Wikidata kümmert.

Viele solcher Funktionalitäten werden über Extensions hinzugefügt — damit ist es sehr einfach, von neue Funktionalitäten zum Beispiel nur auf einzelnen Wikis Gebrauch zu machen.

So eine Extension für die Wikipedia habe ich auch geschrieben- den ArticlePlaceholder, Artikel Platzhalter.

Die Sprache, die im Internet mit Abstand am meisten genutzt wird, ist Englisch. Über 50% der Inhalte online sind auf Englisch. Damit ist der Zugang zu Wissen für viele nicht-englisch Sprecherinnen und Sprecher sehr eingeschränkt.

Ähnlich sieht es auf der Wikipedia aus, dort ist die mit Abstand meist genutzte Wikipedia auch die Englische Wikipedia.

Dadurch entsteht für viele Wikipedien ein Teufelskreis, aus dem es schwer ist, auszubrechen. Durch die wenigen Artikel, die es auf diesen Wikipedien gibt, bekommen sie auch wenig Aufmerksamkeit von den Leserinnen und Lesern in den jeweiligen Sprachen und können somit wenig Freiweillige zum Editieren gewinnen, wodurch es schwierig wird, mehr Artikel zur Verfügung zu stellen und zu schreiben.

Die Informationen, die diese kleine Wikipedien bräuchten, sind aber da draußen. In anderen Wikipedia Artikeln, aber auch in Wikidata, der freien Wissensdatenbank.

In Wikidata sind Daten in vielen Sprachen schon verfügbar, auch wenn es noch keine Artikel zu dem Thema gibt. Die Properties wie zum Beispiel Einwohnerzahl (P1082) muss nur einmal übersetzt werden, um dann auf allen Datenobjekten verfügbar zu sein — Berlin hat eine Einwohnerzahl, so wie Deutschland oder die Türkei und Istanbul. Also kann diese Übersetzung einfach immer wieder verwendet werden.

Jetzt haben wir folgendes Problem — kleine Wikipedien mit zu wenig Artikeln und einen möglichen Lösungsansatz — eine Wissensdatenbank mit freien, multilingualen Daten.

Die Artikel-Platzhalter machen sich dies zu Nutze. Wenn es zu einem Thema noch keinen Artikel gibt, aber ein Datenobjekt auf Wikidata, wird ein Artikel Platzhalter aus diesen Daten generiert. Dieser enthält keinen echten Text, sondern stellt nur die Daten und ihre Referenzen da, um den Benutzer zu ermutigen, einen Artikel mit mehr Informationen und Kontext zu erstellen.

Um klar zu machen, dass diese Platzhalter keine regulären Artikel sind, unterscheidet sich die Darstellung sehr von Wikipedia Artikeln, wobei einige wohlbekannte Elemente aus dem Wikipedia Layout beibehalten werden.

Der Großteil der Extension ist in Lua geschrieben. Dadurch ist es möglich, im Modul AboutTopic auf der Wikipedia, auf der ArticlePlaceholder verwendet wird, jeden Teil der Darstellung eines Datenobjekts zu überschreiben und an die Bedürfnisse der Community anzupassen. So könnte zum Beispiel die Beschreibung eines Datenobjekts aus Wikidata entfernt werden, wenn eine Community das wünscht.

Außerdem wird die Sortierung der Daten auf der jeweiligen Wikipedia geregelt. Eine Seite mit allen Properties und ihrer Reihenfolge kann so je nach Community angepasst werden und beeinflusst direkt in welcher Reihenfolge die Boxen mit Daten auf dem Platzhalter erscheinen.

Zur Zeit können diese Platzhalter über die Suche unter Verwendung der Wikidata Datenobjekt ID gefunden werden oder ganz einfach über die Suche auf Wikipedia. Sie werden unter den restlichen Suchergebnissen dargestellt.

Vier Wikipedia Gemeinschaften haben sich bisher bereit erklärt, den ArticlePlaceholder zu testen: Odia, Esperanto, Haitianisch und Neapolitanisch. Auf diesen kann man sich diese Platzhalter jetzt schon anschauen, so zum Beispiel anhand der Katze “Socks” auf der Esperanto Wikipedia.

Noch ist viel zu erledigen, dennoch sind die Artikel Platzhalter ein wichtiger Schritt in die richtige Richtung für mehr Zugang zu Wissen.

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (6 Bewertungen, Durchschnitt: 3,67 von 5)
Loading...