10th anniversary of Polish Wikipedia
Last weekend, as a long-standing Polish Wikipedian, I went to Poznań to celebrate the 10th anniversary of Polish Wikipedia.
The event started on Friday, September 23th and went on until Monday, September 26th, the actual date of establishing Polish Wikipedia. During that time, I’ve met old friends, colleagues, and newcomers to our project. The event took place in Multikino cinema in Shopping, Arts and Business Center “Stary Browar” (lit. “Old Brewery”), a place dating back to 1844, when Ambrosius Hugger, a Wirtembergian brewer, came to Poznań to start his brewery there.
Author: Radomil. License: CC-BY-SA
Almost 200 people came to celebrate with us and to participate in talks and presentations, making it the biggest Wikipedia meet-up in Poland so far. As usual, there were also guests from other countries: we were visited by Wikipedians from Germany, Czech, Belarus, Philippines, Hungary, Ukraine and Russia. On Friday we spent time on getting together, drinking beer and organizing our stay in hostels.
The actual event started on Saturday with a discussion between founders of Polish Wikipedia, Paweł Jochym and Krzysztof Jasiutowicz, who told us about the beginnings of Polish Wikipedia and how they imagine its future. What’s worth noting this is also the first time these founders actually met each other. Before now they only collaborated on the encyclopedia online, and we’ve never seen them together during one conference. Other speakers included: Jan Wróbel (a contributor to a weekly newsmagazine Wprost), Piotr Marcinkowski (vicepresident of Library of University of Poznań), Sylwia Ufnalska (translator and science journalist), Jarosław Lipszyc (president of Modern Poland Foundation) and Edwin Bendyk (famous editor, blogger and journalist).
We also had a chance to see a documentary Truth in Numbers? Everything, According to Wikipedia, which explores the history and cultural implications of the online user-editable encyclopedia Wikipedia. The film attempts to answer the question of whether all kinds of individuals or just experts should be tasked with editing an encyclopedia.
Apart from that, there was a surprise made by Wikimedia Polska Association for all editors: a video with congratulations on the anniversary from famous Polish people:
Congratulations for our work were given from: Polish president Bronisław Komorowski, professor Jerzy Bralczyk, Bartłomiej Chaciński, Ilona Łepkowska, Marek Niedźwiecki, Krzysztof Skowroński, Mariusz Szczygieł and Ewa Wachowicz. President Komorowski encouraged to edit Wikipedia and share the knowledge, Mariusz Szczygieł and Marek Niedźwiecki admitted Wikipedia helps them in their work, and professor Bralczyk expressed his pride in Polish Wikipedia being one of the biggest language version of this encyclopedia.
Author: Polimerek. License: CC-BY-SA 3.0
And thus, the event concluded on Sunday, with a group photo of all the attendees, after which all of us started going home, tired, but happy after seeing each other again, hoping we can make the best of this great project, to which we contributed over past decade. And that is what I wish to Polish Wikipedia for this and next decades to come! Let’s make the best encyclopedia ever!
Photos from the event are available on various free licenses on Wikimedia Commons in [[Category:10th birthday of Polish Wikipedia]]
Die Internetwoche Köln

Und wieder ist es soweit: die Internetwoche Köln 2011 findet zwischen dem 19.09.2011 – 23.09.2011 statt. Die Internetwoche Köln ist eine Plattform für Kölner Internetstartups in der Veranstaltungen rund um das Thema Web-Business organisiert werden.
Wir möchten Euch herzlich zu folgenden Events einladen:
Montag
- Das Unternehmerfrühstück im Rahmen der Internetwoche Köln wo wir auch Railslove kurz in einem Vortrag vorstellen werden. Start 9:15 im eco Kubus
Lichtstraße 43 i - Der 26. Webmontag in Köln natürlich unter Moderation von Rene Bredlau. Ab 19:00 im Spielplatz. Ubierring.
Mittwoch
- Limited WIP Society Cologne -Kanban User Group Köln. In der Gasmotorenfabrik ab 19:00
- dmexco – Digital Marketing Exposition and Conference
Donnerstag
Freitag
- Das DevHouse Friday Chillout. Start 19:00. Ort wird noch bekannt gegeben.
Das Railslove-Team freut sich auf gemeinsame spannende Talks während der Internetwoche Köln.
Was ist die Internetwoche Köln?
Internetwoche Köln: Netz-Know-how und Networking
Zum zweiten Mal bieten Kölner Unternehmen in der Internetwoche Köln vom 19. bis 25. September Businesswissen rund um das Internet: Ein Unternehmerfrühstück zum Start bereitet den Boden für lokales Networking, die internationale Advance Conference vernetzt Start-ups und Investoren und zahlreiche Workshops liefern viele Antworten: Wie präsentiere ich mein Unternehmen im Netz? Wie mache ich einen QR-Tag? Wie bekomme ich meine eigenen Top-Level-Domain? Wie geht Online-Lernen? Ist die Cloud eine Option für mein Unternehmen? Wie gestalte ich meinen Büroalltag effizienter?
Organisatoren der Internetwoche Köln sind eco – Verband der deutschen Internetwirtschaft und die Köner Internet-Union (KIU).Alle Veranstaltungen finden sich unter http://iwcgn.koeln.de/.
JSON Schema Baby
Building an application programming interface is not easy. Designing an API is more complex than just writing code. For a few projects we tried out different approaches to implement an API in Ruby on Rails. There are two main ways to make your resources accessible:
- using the standard to_json renderer built into Rails
- building your own views
Using standard renderer provided by Rails
In Rails 2.0 you have the possibility to using the respond_to block to expose your resource in whatever format you rewuire (xml, json, html). E.g.:
The same is possible in Rails 3.0 but a little bit easier:
In these examples you can define the representation of your resource by defining the format you want the resource to be represented in. But in most cases you don’t want to expose every attribute of your resource. To achieve this, you could use Rails’ as_json method to create a custom JSON structure of your resource. E.g:
As Jonathan Julian mentioned in his blog post, call as_json directly or override it in your model to customize your representation of your resource. Sounds easy so far. Summarizing this approach we can say:
- It is understandable and quite easy to use
- You can easily customize the representation of your resources via the as_json method
But the way how this approach is realized is not the best in my opinion, because it too much correlated with the models when we talking only about a “representation”. That’s why I like the second approch – building your own views.
Customize it baby
What does it exactly mean? Instead of just overriding the as_json method in your model, build a template that exposes your API. The easiest way is, e.g., to use RABL – Ruby API Templating Language.
As in the example before you define within your controller structure WHICH resources are being exposed, like:
And within your RABL-Template now you can define HOW your resources should look:
What happened here is that the representation of the resource is properly split from the resource using templates, like using .html-templates that belongs to your views. Thats great. You’re very flexible to define how the respresentation should looks like without overriding some methods. The resource is exposed ‘as it is’ but the template takes the response of what representation exactly the API users should get. In general, that seems to be the right approach; and it really is, but for me it isn’t going far enough. What I like to see is an even looser representation.
Here comes JSON-Schema
Now we’re going a step further and completely split our resource from the representation. Based on JSON-Schema (http://json-schema.org/) we’re going to define one that is responsible how our resource is being represented. With this approach, it is also possible to define our yourself in which way you want to interpret the schema within your code. And it’s fully decorrelated if you want to.
If found a very good approach for using the JSON-Schema for an API representation (sk_api_schema – https://github.com/salesking/sk_api_schema) – a Ruby library that defines the schema which takes care of the representation of their API resources.
How does it work? Your controllers are almost the same. E.g.:
The only small difference is the object_as_json method, which is provided by your own schema library. This method takes the properties defined in the schema and looks them up on the object in question.
Within your schema for a single resource looks like this:
As you can see, the schema described everything:
- The resource itself – here a user
- Its properties – the attributes of this resource
- Links belonging to this resource – These describe some nested resources which belong to this resource and you can also define search parameters here
And there’s even one more big advantage: publishing your JSON-Schema library gives your API users a good and clean documentation of your interface. You don’t have to describe it anymore. Moreover, it could be possible to generate a nicer representation from your documentation. You can see an example of thishere: http://sk-api-browser.heroku.com/. This API browser reads the JSON-Schema here and generates a nice overview of the API.
Summary
What I tried to describe here were some facts about how to implement an API with Ruby on Rails but more about how to split the resource itself from the representation in your webservice. For this you can use internal methods responsible for representing your resource, or create your own templates with defined libraries like RABL. Using JSON schema for the representation of your API is the most loosely coupled approach. With JSON schema you’re don’t care about the resource’s representation within your code but reather within your schema. It’s a description of whatever you want to expose to your clients.
Resources
- A JSON schema browser
- SalesKing API schema
- JSON schema
- Set up RABL for Ruby on Rails
- Using RABL in Rails JSON Web API
- RABL
- RABL, The Ruby API Templating Language
- Rails to_json or as_json?
Nerds/Cookbooks
Beside our NerdPursuit project, we’re proud to invite the Nerds/Cookbooks project today. Go ahead and create real recipes for real nerds today!
The Recipe of the day: fried egg with applesauce and mashed potatoes
DevHouse Friday @ Simfy
Dieses mal gastiert der DevHouse Friday bei simfy.
Kickertisch, Terasse, Beamer als auch fette Beschallung sind vorhanden.
Wenn das nicht genug Argumente sind vorbei zu kommen, legt simfy noch einen Premium-Gutschein für einen Monat drauf.
WANN: 19.08.2011 ab: 19:00 Uhr
WO: simfy GmbH, Vogelsanger Straße 187, Köln
WAS: Guter Musikgeschmack!
MORE: http://devhousefriday.org/ AND @devhousefriday
Der erste Rock’n'Roll Devhouse Friday erwartet euch!
UPDATE: and the Friday, 19th of August is, of course, the Whyday.
