building your own writeDelimitedTo() for python protobuf

Protobuf is a nifty tool that lets you comfortably transmit data without having to care about proper (de)serialization. Protobuf is usually pretty straight-forward and fuss-free– unless you want to send data from a python client/server via TCP.

delimiters

Protobuf messages are not delimited by default. This means that the receiver has no idea how long a received message is and where the next message starts. If you want to stream data, this is a problem– how are you going to know where to chop your stream into correct messages?

This is where delimiters come in handy. A delimited message contains the length of the message as the first information, so your server/client can read out the length, then know how many bits to read next to properly receive the whole message. Then it reads the next number and so on.
With Java’s writeDelimited(), this works perfectly fine: assemble your message, delimit it and send it.
Unfortunately, a .proto compiled into python source code doesn’t seem to have this function and adding a delimiter isn’t as trivial as simply prepending len(serializedMessage) .

the fix

After googling for quite some time, I found this 1 :

from google.protobuf.internal import encoder

serializedMessage = packetMessage.SerializeToString()
delimiter = encoder._VarintBytes(len(serializedMessage))

return delimiter + serializedMessage    

So what you basically do is calculate and encode your delimiter manually and append your protobuf message. I’m sure this can be done without using google.protobuf.internal.encoder, but I found it less messy to do it like this.

disclaimer

I have no idea why protobuf for python doesn’t support delimiters. My workaround may be wrong or dangerous. If you can shed some light on the issue, I’d love to hear from you in the comments or via E-Mail.

Notes:

  1. To save you some time and a bunch of nasty swearwords, this post is my attempt at making this workaround easier to find.

flattr this!

I mog di, derf I?

(Dieser Text befindet sich hier nur zu Dokumentationszwecken. Das Original ist unter ifrogdi.tumblr.com zu finden.)

Lebkuchenherzen mit den Aufschriften: I frog di -- I glang di ned a! -- I mog di, derf I? -- Konsens-Spatzl

Jedes Jahr ereignen sich zahlreiche sexualisierte Übergriffe auf dem Oktoberfest. Leider liegt die Verantwortung für das Verhindern dieser Übergriffe in den Augen vieler immer noch bei den Betroffenen: Frauen wird ein ganzer Verhaltenskatalog nahe gelegt, der verhindern soll, dass ihnen etwas zustößt. Während Begleitung durch Freundinnen und Freunde und Taxis sicherlich (leider) sinnvoll sind, tragen diese wichtigen Ratschläge immer auch eine gefährliche Botschaft in sich: Wenn dir etwas zustößt, ist nicht nur der Täter schuld, sondern auch du, weil Du nicht vorsichtig genug warst oder nicht gut genug aufgepasst hast. Es wiegt Menschen außerderm in der trügerischen Sicherheit, dass ihnen nichts zustoßen könne, wenn sie nur gut genug aufpassen – und führt dazu, dass immer wieder Betroffenen die Schuld gegeben wird und nicht etwa den Übergriffigen. Für Betroffene erschwert dies ihre eh schon schlimme Lage erheblich: Die Angst Betroffener vor Stigmatisierung durch Polizei und Justiz sowie davor, dass die übergriffige Person nicht zur Verantwortung gezogen wird, sind Gründe für die extrem hohe Dunkelziffer bei Vergewaltigungen und anderen sexualisierten Übergriffen. [1] Read more

flattr this!

Noobspotting

Der kläglich gescheiterte Versuch, eine Antwort auf folgende Stelle in monoxyds Blogpost zu seinem anstehenden Blue Moon über Sexismus in Gaming und Interwebs in einen Tweet zu quetschen.

PS: Ab und zu höre ich in Diskussionen: “Das will ich nicht erklären, dass hast du dir gefälligst selbst anzulesen.” Abgesehen davon, dass ich das eine anstrengende Einstellung finde, gilt das heute Abend nicht. Diese Sendung findet für ALLE Menschen statt, insbesondere also auch die, die sich noch nie mit dem Thema beschäftigt haben, es aber wollen.

Was mir hier nämlich fehlt ist die Berücksichtigung der Art, wie die Frage gestellt wird. Einsteigerfreundliche Formate zu gestalten finde ich gut, richtig und notwendig. Danke allen, die sich damit befassen. Ich lerne selbst besser durch Zuhören und Nachfragen als durch Lesen und schätze solche Formate daher generell sehr. Die (verkürzte) Antwort darauf, warum ich dennoch in letzter Zeit leider des öfteren zur RTFM-Femnistin mutiere, findet sich allerdings auch im vorherigen Satz. Read more

flattr this!

„Sag mal was zu euren Frauen“ – ein Leitfaden für Interviewte.

Es ist ein leidiges Thema– die Frage nach den weiblichen Piraten. Früher oder später wird jeder Pirat* mit ihr konfrontiert, häufig in Interviewsituationen. Leider erwischen wir dabei gerne Fettnäpfchen. Um das zu vermeiden und zu erklären, worin das Problem lag, möchte ich im Folgenden ein paar Aussagen von Piraten* analysieren und ggf. Alternativantworten vorschlagen. Die Zitate sind bewusst weder verlinkt noch mit Autor*en versehen, da hier niemand an den Pranger gestellt werden soll. Sie dienen lediglich als Anschauungsbeispiel.

flattr this!

Die Shitstormkritische Ratloseria.

Shitstorms. Sie sind Teil unserer Debattenkultur. Sie können filtern, reinigen– und hemmen und verdammt verletzen. Wir haben uns alle schon einmal darüber beklagt. Dank ihnen trauen sich Piraten nicht, Themen anzuschneiden oder (öffentlich) zu Ende zu denken. Sie werden als Argument gegen das sog. „Klarnamensliquid“ benutzt. Ganz gleich, ob wir für oder gegen dieses Konzept sind, glaube ich, dass die Verwendung von „Anfeindungen und Shitstorms“ als Argument problematisch ist.

Read more

flattr this!

Warum mach ich den Scheiß eigentlich?

Der nachfolgende Post war eigentlich als Kommentar zu diesem Blogbeitrag gedacht, ist aber während des Tippens zu dem „Warum mach ich den genderpopender-Scheiß eigentlich“- Text geworden, den zu schreiben ich seit Monaten prokrastiniert habe. Er dreht sich größtenteils um die Piraten, ist aber auch auf Geekfeminism übertragbar. Ganz fertig ist er nicht, aber wenn ich darauf warten würde, würde er auf Ewig in meiner TODO-Schublade rumgammeln. Was soll’s. Hoffentlich lern ich was dazu.

Hallo Nordlicht,

ich bin eine von den Kegelklublerinnen, die für die Umfrage verantwortlich ist. Auch wenn ich wahrscheinlich ein paar Jahre jünger bin als du, sieht meine Biografie ähnlich aus– ich habe mit Lego und Barbies gespielt, Baumhäuser gebaut und meinen Stofftieren Hosen genäht. Meine Eltern (ihres Zeichens Kreative) haben mir vermittelt, dass sie mich in allem unterstützen, was ich anpacke– auch wenn sie die Nachricht, dass ihre Kunst-Leistungskurs-Tochter jetzt Informatik studiert, etwas verdattert hat. In den 2,5 Jahren seit meinem Studienbeginn habe ich zum allergrößten Teil wunderbare Menschen getroffen, die mir bedingungslos geholfen und mich für voll genommen haben. Auch wenn ich im ersten Sommer bei 35° in langer Jeans und T-Shirt ordentlich geschwitzt habe. ;D

Ich bin im Januar 2010 in die Piratenpartei eingetreten, weil die Emma den Piraten mit hanebüchenen Begründungen den Pascha des Monats verliehen hat und ich bei der Debatte mit den Redakteurinnen und im Forum nicht mehr „die“, sondern „wir“ schreiben wollte. Auch damals gab es eine Genderdebatte – die innerhalb und außerhalb der Piratenpartei nach den Aktionen von Leena Simon gehörig aus dem Ruder lief.

Auch ich war empört: Gerade unter Nerds hat mein Geschlecht so selten eine Rolle gespielt und jetzt wird mir der Stempel aufgedrückt, ich sei benachteiligt? Bitte?
(Ich finde die Debatte bis heute unglücklich, die Gründe dafür sprengen aber den Rahmen dieses Posts) Und jetzt, fast 2 Jahre später, roll ich’s trotzdem noch einmal auf. Meinen Beweggrund dafür hast du bereits formuliert:

„Jawoll, ich bin eine Frau, und ich fühle mich schon wohl hier. Lasst uns trotzdem gucken, wie wir *andere* Frauen zum Mitmachen bewegen können.“

Ich hege mittlerweile den Verdacht, dass ich sowohl in der Informatik als auch bei den Piraten recht schnell Anschluss gefunden habe, weil ich meine Jugend fast ausschließlich unter Kerlen verbracht habe. Ich kann zwar nähen und auf 12 cm-Absätzen laufen, aber ich kann eben auch die „typischen Jungssachen“: Ich rede laut, unterbreche andere viel zu oft (arbeite dran), bin leicht reizbar und die ungeschlagene Rülpskönigin meines Freundeskreises. Ich finde mich in Männergruppen unterschiedlichster Konstellation meistens zurecht.

Aber ich will nicht, dass das die Voraussetzung für politische Teilhabe ist.

Wenn wir uns auf die Fahne schreiben, eine Mitmachpartei zu sein, dann müssen wir auch dafür sorgen, dass Menschen, die ungern auf den Tisch hauen oder gelernt haben, dass man auch mal zurückstecken muss oder dass sie xyz eh nicht können oder die von einer harschen Diskussionskultur oder taktlosen Anmachen abgeschreckt sind… usw. bei uns mitmachen können und wollen. Und diese Eigenschaften gehören alle zur traditionellen /weiblichen/ Geschlechterrolle, die uns im Laufe unseres Lebens mehr oder weniger stark vermittelt wurde. ( Ich sehe die oben genannten Kriterien nicht als in Stein gemeißelt an. Ziel der Umfrage war es ja u.a. auch, herauszufinden, was denn genau abschreckend wirkt. Denn dass wir ein Abschreckungsproblem haben, lässt der gefühlte Frauenanteil sowie der von Frauen in Piratenämtern (9% laut Lena Rohrbach) stark vermuten. )

Hier sollte eigentlich ein Absatz stehen, der betont, dass Genderpopender weder Frauensache ist noch sich nur um Frauen dreht und dass ich Männer gerne stärker mit einbeziehen will, dass ich mir der abschreckenden Wirkung und der Abwehrreaktionen bewusst bin und auch dort an mehr open-ness arbeiten möchte. Gerade bei den Piraten gibt es genug Menschen aller Geschlechter, die sich nicht Rollenkonform verhalten und sehr schmerzhafte Reaktionen darauf erfahren mussten. Der Absatz sollte die „What about teh Menz!!“- Schreier beschwichtigen, aber gleichzeitig betonen, dass es, wie @rhotep so schön schrieb, ganz allgemein um unseren Umgang miteinander und um die Frage, wie wir Menschen verschiedener Sozialisation gleichberechtigt einbinden können geht. Leider verläuft die Grenze zwischen Ausschluß- und Integrationsmechnismen in der Gesellschaft und – wenig überraschend – auch bei uns häufig eben gerade dort, wo auch die Grenze zwischen den traditionellen Geschlechterrollenbildern verläuft.
Ich habe diesen Absatz nicht elegant eingebunden bekommen und deshalb steht er jetzt als Klumpen hier. Weiter geht’s!

Dass das Ganze nicht die einzige Baustelle ist, ist mir auch klar. Ich glaube aber, das es wichtig ist, sie anzupacken. (Ganz abgesehen davon, dass wir dabei viele Erfahrungen für die nächsten Baustellen sammeln können)

Du sagst, du hast Angst, dass die Debatte das Klima dahingehend verändern könnte, dass du nicht als Pirat, sondern nur noch als Frau wahrgenommen wirst. Das ist eine valide Befürchtung, die ich teile. Der Punkt ist nur– du wirst jetzt schon als Frau wahrgenommen. Du heißt nur nicht so.
Wir hatten letztens einen Abend im Dicken Engel zum Thema Netzfeminismus und einen Diskussionsabend im Kegelklub-Mumble– neben sehr tollen Beiträgen gab es dort auch Beiträge, die genau das lieferten, was du für die Zukunft befürchtest. Es gab…

• Den Piraten, der meinte, Frauen sollen doch mal sichtbarer werden indem sie z.B. Frauenthemen wie Familien und Bildung kapern
• eine Gruppe von Piraten, die betonte, dass sie Frauen in der IT ja total total klasse fänden würden, wenn diese überdurchschnittlich kompetent wären und keinen Nagellack trügen. Wer die Chuzpe besitzt, beim Coden auch noch Weiblichkeit raushängen zu lassen, müsse sich nicht wundern wenn er (oder sie) nicht ernst genommen wird.
• Piraten, die meinten, ein Stammtisch sei ihr Wohnzimmer und deshalb müssten andere darauf Rücksicht nehmen, wenn sie dort Witze über Stereotype reißen wollen, bitte sehr. ( Der Hinweis, dass gerade Neulinge davon verletzt oder abgeschreckt würden, wird dabei gern als Zensur abgetan )

… Um nur einige Beispiele zu nennen. Die Aufnahmen der Abende findest du hier: Dicker Engel vom 17.11.2011,
1. Abend im kegelklub-Raum (14.11.2011)
Bemerkenswert war hierbei, wie viele der Redner am Anfang ihres Beitrages betonten, wie Post-Gender sie doch seien, um dann zu alltagssexistischen Tiefschlägen auszuholen.

Ich weiß, dass das weder die Mehrheit noch repräsentativ ist. Ich habe gerade während des Berlin-Wahlkampfes unglaublich viele tolle, konstruktive, hilfsbereite, vorbehaltlose nette Piraten aller Geschlechter (und Landesverbände) kennen gelernt und es war eine Freude, mit ihnen zusammenzuarbeiten. Wir haben den kompletten Sommer über gemeinsam an der Belastungsgrenze geschuftet und gemeinsam ein unglaubliches Ergebnis eingefahren. Diese Erfahrung möchte ich um keinen Preis missen.
Ich möchte mit so vielen Piraten wie möglich diese oder ähnlich grandiose Erfahrungen teilen, ich möchte, dass sie all die tollen Menschen kennen und lieben lernen wie ich es getan habe, dass sie mit Stolz auf die großartigen Dinge gucken können, die sie aus dem nichts geschaffen haben, dass sie das Gefühl kennen lernen, neben einem proppevollen Wahlkampfmobil zu stehen und vor Freude über die 9%-Prognose, die einem gerade am Telefon entgegengeschrien wurde, fast zu heulen.
Und es macht mich unfassbar wütend, wenn diese Chance von einigen wenigen lauten Idioten zerstört wird.

Hier: http://www.haecksen.org/index.php/HowtoEncourageWomenToLinux Schreibt Valerie Aurora:
„Wenn deine Gruppe neun hilfsbereite und höfliche Mitglieder hat, und ein ungehobeltes, sexistisches, lautes Mitglied, werden die meisten Frauen wegen dieses einen Mitglieds weiter fernbleiben. Ich sehe ein, dass das den anderen Mitgliedern der Gruppe gegenüber unfair ist, aber so ist nun mal die Realität.“
Und das ist der Knackpunkt. ( Überhaupt lässt sich sehr vieles, was in diesem Artikel beschrieben wird, auf die Piratenpartei übertragen )
Wir müssen lernen, dieses Mitglied zu Identifizieren – und darauf zu achten, ob wir selbst nicht manchmal dieses Mitglied sind. Wir müssen sensibler werden für Mechanismen, die Menschen ausschließen – ganz oft sind es Dinge, die überhaupt nicht so gemeint sind! Wir müssen dennoch lernen, einem Stammtischmitglied zu sagen, dass der Scherz gerade eben nicht okay war. Auch wenn es „nur ein Scherz“ war. Und auch, wenn wir die Person sonst sehr gern mögen und ihre Arbeit schätzen.
Wir werden den Sexismus, den wir alle mehr oder weniger bewusst mit auf den Weg bekommen haben, nicht los, indem wir ihn tabuisieren. Wir können uns nicht dahinter verstecken, dass wir laut Parteiprogramm Post-Gender seien, vor allem nicht, wenn wir kaum begriffen haben, was dieses Genderdings überhaupt bedeutet. Gerade als Partei, die den Anspruch erhebt, sich mit Dingen, zu denen sie sich äußert, gründlich und pragmatisch zu befassen, haben wir hier alle noch viel zu lernen und ordentlich an uns zu arbeiten (und ich an mir).
Und deshalb mache ich diesen Genderpopender-Scheiß.

( mit Dank an @rhotep, der mir geholfen hat, Gedanken und Sprache etwas zu sortieren. )

flattr this!