Skip to content

Wochenrückblick 17/2014

Der Wochenrückblick lässt das Geschehen der vergangenen Woche rund um Ubuntu, Linux und Open Source Revue passieren.

Rund um Ubuntu

Ubuntu 14.10 heißt Utopic Unicorn

Mark Shuttleworth hat in seinem Blog den Namen der nächsten Ubuntu-Version 14.10 angekündigt, die auf „Utopic Unicorn“ hören wird.

Mehr Informationen gibt es im Ikhaya-Artikel.

Weitere Quellen: OMG!Ubuntu!, Pro-Linux, heise, Linux-Magazin

Zusammenfassung der OpenWeek

Letzte Woche fand von Dienstag bis Donnerstag wieder eine Ubuntu Open Week statt. Die IRC-Logs aller Vorträge und Gespräche sind nun online verfügbar.

Ubuntu 14.04 LTS DVDs vorbestellbar

Im Canonical-Shop können ab sofort die Desktop- und Server-DVDs für Ubuntu 14.04 LTS „Trusty Tahr“ vorbestellt werden. Die Auslieferung der DVDs wird aber noch etwas Zeit brauchen.

Quelle: OMG!Ubuntu!

Linux-Kernel 3.13 wird von Canonical weitergepflegt

Eigentlich ist die Unterstützung für die Linux-Kernelversion 3.13 bereits ausgelaufen. Canonical hat die Pflege der Version in einem eigenen Git-Repository übernommen, weil er in der neuesten Ubuntu-Version 14.04 LTS „Trusty Tahr“ zum Einsatz kommt. 14.40 soll bis April 2017 mit Sicherheitspatches unterstützt werden, worunter auch der Kernel 3.13 zählt.

Quellen: heise, Golem

Neues rund um Linux

LinuxTag 2014 veröffentlicht Programm

Vom 8. bis 10. Mai 2014 findet in Berlin wieder der LinuxTag statt. Das Programm wurde letzte Woche veröffentlicht und hält insgesamt 160 Vorträge für die Besucher bereit.

Mehr Informationen zum Programm gibt es im Ikhaya-Artikel.

Weitere Quellen: Pro-Linux, heise, Linux-Magazin

Full Circle Magazine #85 veröffentlicht

Das Full Circle Magazine, was sich hauptsächlich mit Ubuntu-Themen beschäftigt, aber auch auf andere Distributionen schaut, wurde als PDF und EPUB in Version #84 veröffentlicht und hält zahlreiche interessante Artikel bereit.

Quelle: Full Circle Magazine

Linux Foundation gründet Core Infrastructure Initiative

Die Core Infrastructure Initiative soll sich um die finanzielle Unterstützung von Open-Source-Kernkomponenten kümmern, die wichtig für alle Systeme und Funktionen sind. Ausgelöst wurde die Initiative durch den Heartbleed-Bug in der OpenSSL-Implementierung. Unterstützer der Initiative sind Firmen wie Amazon, Dell, Facebook, Gogle, IBM, Intel und Microsoft.

Quellen: Linux Foundation, Golem, Linux Magazin, heise, Pro-Linux

Musikalbum für Nerds von Netcat

Die us-amerikanische Band Netcat hat sich für ihr neues Album „Cycles per Instruction“ etwas ganz Besonderes ausgedacht: Das Album wird als Linux-Kernel-Modul zum Selberkompilieren aus dem Quellcode bereitgestellt. Alternativ kann man sich das Album aber auch auf Bandcamp anhören, herunterladen und als limitierte [wikipedia:Musikkassette] kaufen.

Quellen: Pro-Linux, Golem

Spielen unter Linux

Humble Weekly Sale mit neun Linux-Spielen

Das neue Weekly Bundle bietet neun Spiele für Linux, MacOS X und Windows und drei weitere für Windows. Alle Linux-Spiele sind DRM-frei und jeder kann den Preis selbst bestimmen und an die Entwicklerstudios verteilen.

Mehr Informationen gibt es im Blog-Artikel.

Wasteland 2 für Linux

Das postapokalyptische Rollenspiel Wasteland 2 steht ab sofort als Betaversion auf Steam auch für Linux-Nutzer zur Verfügung. Im Zuge einer Kickstarter-Kampagne wurde das Spiel vorfinanziert, die Linux-Portierung ließ aber etwas auf sich warten.

Quelle: Pro-Linux

Hardware und Mobiles

Neuer Raspberry Pi und neues Beagle Bone

Die beiden Mini-Computer Rasberry Pi und Beagle Bone Black bekommen Konkurrenz bzw. kommen in einer neuen Version daher. Der Raspi-Klon „Banana Pi“ hält eine Allwinner-A20-Dualcore-CPU und eine Mai-400-GPU bereit. Dazu gibt es 1 GB Speicher, Ethernet und SATA. Die Revision C des Beagle Bone Black hat 4 GB Flash-Speicher und es wird Debian Linux statt Ångström Linux per Standard installiert.

Quellen: heise, Pro-Linux

HummingBoards von Solid-Run

Das HummingBoard ist wie der Raspberry Pi und das Beagle Bone ein Mini-Computer mit Freescale-Quadcore-CPU, eine Vivante-GC2000-3D-GPU, 2 GB Speicher, Ethernet, HDMI, zwei USB-Ports und einiges mehr.

Quelle: Pro-Linux

Humble Weekly Sale mit neun Linux-Spielen

Mit „Masse samt Klasse“ kann man den aktuelle Humble Weekly Sale beschreiben. Insgesamt zwölf Spiele, von denen neun auch unter Linux spielbar sind, werden diese Woche angeboten und sollen kurz vorgestellt werden.

Das neue Weekly Bundle bietet neun Spiele für Linux, MacOS X und Windows und drei weitere für Windows. Alle Linux-Spiele sind DRM-frei, wie das von den meisten Humble Bundles bekannt ist. Jeder kann den Preis selbst bestimmen und in variablen Anteilen auf die Entwicklerstudios, die Humble-Anbieter und die Hilfsorganisation Direct Relief verteilen.

Die Spiele im Detail

Thomas Was Alone ist ein Spiel über Freundschaft in einem andersartigen Design. Als kleines Rechteck bahnt man sich in dem Jump'n'Run-Geschicklichkeitsspiel anfangs alleine seine Weg durch die Welt, um später neue Freunde zu gewinnen, die einem beim Bestehen des Abenteuers helfen. Das Spiel war bereits im Humble Indie Bundle 8 enthalten.

Stilistisch interessant wirkt Dustforce. In diesem „Aufräumspiel“ übernimmt man die Rolle von – nicht lachen – Hausmeistern, die sehr akrobatisch alle Arten von Müll entfernen müssen. Ob Staub, Laubblätter oder Biomüll, alles wird sehr sprungintensiv weggefegt. Das Spiel war bereits im Humble Indie Bundle 6 enthalten.

Thomas Was Alone
Thomas Was Alone
Dustforce
Dustforce

VVVVVV ist ein 2D-Plattformspiel, bei der man als unerschrockener Wissenschaftsleiter eines abgestürzten Raumschiffes seine Truppe wieder einsammeln muss. In den Levels kann man sich nur nach rechts und links bewegen und die Gravitation umkehren, was aber für genügend Denkarbeit sorgt. Das Spiel war bereits im Humble Indie Bundle 3 enthalten.

CaveStory+ ist die Neuauflage des bekannten Jump'n'Run-Spiels Cave Story. Man übernimmt die Rolle eines namenlosen Helden, der auf einer Insel mit hasenähnlichen Kreaturen gestrandet ist und von dort wieder weg will. Grafik und Sound wurden in der Neuauflage verbessert. Das Spiel war bereits im Humble Indie Bundle 4 enthalten.

Das Roboterabenteuer Puzzle Bots gibt es nur für Windows.

VVVVVV
VVVVVV
Cave Story+
Cave Story+

Wer mindestens 6 US-Dollar zahlt, bekommt noch folgende weitere Spiele dazu.

In dem Aufbauspiel Reus spielt man vier freundliche Giganten, die dabei helfen müssen, die Menschheit aufblühen zu lassen. Hierzu kann man die Erde beeinflussen und Wälder wachsen lassen, sodass sich die Menschen vermehren. Das Spiel war bereits im Humble Indie Bundle X enthalten.

In Limbo spielt man einen kleinen Jungen, der eigentlich nur nicht sterben darf. Die Welt ist dabei in Grau/Schwarz gehalten und besticht einfach durch die visuelle Umsetzung. Limbo hat beim IGF 2010 die Preise für „Excellence in Visual Art“ und „Technical Excellence“ gewonnen. Das Spiel war bereits im Humble Indie Bundle V enthalten.

Reus
Reus
Limbo
Limbo

Lone Survivor richtet sich eher an hartgesottene Spiele-Fans. Obwohl in Pixelgrafik gehalten erinnert das Ambiente des Horror-Survival-Spiels an Silent Hill und Co. und steht diesen in Gruselmomenten in nichts nach. Für die Ausführung wird Adobe Flash benötigt. Das Spiel war bereits im Humble Indie Bundle V enthalten.

In Element4l kontrolliert man die vier Elemente und versucht durch den Einsatz ihrer besonderer Fähigkeiten die physikbasierenden Level zu meistern. Dabei hängt alles von sehr gutem Timing und Geschichlichkeit ab.

Lone Survivor
Lone Survivor
Element4l
Element4l

Für Windows gibt es noch die beiden nur über Steam erhältlichen Spiele Cthulhu Saves the World und Mutant Mudds Deluxe.

Wer mindestens 10 US-Dollar zahlt, erhält den grafisch überaus gut aussehenden Action-Plattformer Teslagrad, in dem man sich als kleiner Junge in einer Steampunk-Welt durchkämpfen muss. Durch verschiedene physikalische Eigenschaften wie Magnetismus oder Induktion kann man die Welt beeinflussen.

Daneben gibt es exlusiv von TSG für alle Käufer ab 40 US-Dollar ein Humble-T-Shirt und einen Schlüsselanhänger sowie ab 100 US-Dollar noch zusätzlich ein weiteres T-Shirt, mehrere Aufkleber mit den Helden der Humble-Spiele und drei Grafikposter mit Konsolenhardware.

Teslagrad
Teslagrad

Für alle Spiele außer Puzzle Bots, VVVVVV, Cthulhu Saves the World und Lone Survivor gibt es den Soundtrack als MP3 und teilweise auch als verlustfreies FLAC-Format zum Download.

Bis auf Reus, Limbo, Element4l und Teslagrad sind alle Spiele in Englisch.

Bundle erwerben

Die Spiele stehen nach dem Kauf für Linux als Direkt-Download oder BitTorrent-Link zur Verfügung. Für alle Spiele gibt es auch Steam-Keys.

Bezahlen kann man wie immer über Kreditkarte, Paypal, Google Wallet, Amazon Payments oderBitcoin. Das Angebot besteht noch bis zum 1. Mai 2014.

Achtung: Vor dem Kauf sollte man zu allen Spielen die Systemvoraussetzung für Linux lesen.

Meinung zum Bundle

Die Mischung ist bei diesem Bundle sehr gut, auch wenn ein Großteil der Spiele schon in früheren Bundles enthalten war. Wer diese aber nicht besitzt oder zumindest an den zwei völlig neuen Linux-Spielen Interesse hat, sollte sich die Spiele anschauen. Vor allem Teslagrad sieht mit seinen handgezeichneten Grafiken sehr gut aus und spielt sich auch entsprechend gut.

Bei Lone Survivor werden bei mir leider keine Spielstände gespeichert oder ich habe nicht gefunden, wo ich diese laden kann.

LaTeX-Beamer mal anders: Ubuntu-Präsentation

Auf der Frühjahrstagung 2014 von DANTE in Heidelberg (zu der ich auch noch einen Bericht schreiben müsste) hielt Axel Kielhorn einen Vortrag zu „Präsentationen mit Beamer“, d.h. wie man mit der Beamer-Klasse von LaTeX Präsentationen erstellen kann.

Er zeigt dabei die zahlreichen verschiedenen Formatvorlagen, die es vordefiniert im Beamer-Paket gibt – die aber auch alle sehr ähnlich langweilig aussehen (was natürlich Geschmackssache ist). Er zeigte auch eine Vorlage von Uwe Ziegenhagen mit dem Kommentar „Und das sieht doch gleich ganz anders aus.“ Ich weiß nicht, ob dies ernst gemeint war, jedenfalls musste ich schmunzeln, da sich in der Vorlage von Uwe sich nicht viel geändert hat.

Dass es auch wirklich anders geht, will ich an den LaTeX-Vorlage zeigen, die ich für meine Firma im Corporate Design erstellt habe. Da ich das hier natürlich nicht zeigen kann, habe ich die Vorlage etwas umgewandelt und eine Ubuntu-Präsentation draus gemacht. Diese sieht wie folgt aus:

In der Beispieldatei kann man die Bilder ein- und ausschalten, die Sprache auf Deutsch oder Englisch umstellen und zwischen zwei verschiedenen Titellayouts wählen. Als Bild habe ich eines der offiziellen Ubuntu-Community-Bilder genommen, konkret dieses hier.

Download der Folien: ubuntubeamer.tar.gz

Ob man die Farbauswahl (es sind die offiziellen offiziellen Ubuntu-Farben) oder das Layout gut findet oder nicht, ist dabei zweitrangig. Das Beispiel soll nur veranschaulichen, dass man mit LaTeX und der Beamer-Klasse auch wirklich etwas ganze Neues erstellen kann. (Dass das Positionieren der Bilder und Blöcke auf der Titelseite ein Kampf war, verschweige ich aber besser einmal ... ;) Das textpos-Paket wollte zumindest im ersten Versuch nichts darstellen, sonst hätte ich das genommen.)

Spiel: Krosmaster Arena

Krosmaster: Arena ist ein Brettspiel, welches im März 2013 durch Kickstarter finanziert wurde. In dem Spiel treten zwei Teams mit ihren Figuren (den sogenannten Krosmastern) in einer Arena zum Kampf gegeneinander an. Das Spiel basiert dabei auf den beiden MMORPG Dofus und Wakfu des französischen Herstellers Ankama.

Das Spiel besticht vor allem durch seine Komponenten und war mir deswegen auch vor der Spielemesse 2013 in Essen aufgefallen. Das Spielbrett ist nicht flach, sondern besteht aus Büschen, Bäumen und Kisten aus Pappe, die so eine dreidimensionale Welt darstellen, was später auch spielerisch wichtig ist. Die Figuren wiederum sind aus Hartplastik und extrem detailliert und schön gefertigt.

Krosmaster-Spielbrett
Krosmaster-Spielbrett

Der Spielablauf ist einfach: Jedes Team (bestehend aus je einem oder zwei Spielern) sucht sich bis zu vier Krosmaster-Figuren aus, mit denen es antreten will. Jede Figur darf sich dann auf dem Spielbrett je nach Charaktereigenschaften bewegen, Zaubersprüche wirken oder angreifen. Die Möglichkeiten sind nicht endlos und daher ist das Spiel auch schnell zu lernen. Einige Sonderfähigkeiten wie „Durchbohrender Angriff“ oder „Rüstung“ muss man noch beachten, aber dies lernt man sehr schnell.

Jeder Spieler zieht abwechselnd seine Figuren und versucht den Gegner einzukreisen und KO zu schlagen. Dies geht solange, bis ein Team komplett aus dem Spiel ist. Manchmal geht dies sehr schnell, manchmal dauert ein Schlagabtausch aber auch zwei Stunden. Es bieten sich dabei vor allem bei der Figurenauswahl am Anfang viele taktische Möglichkeiten. Greift man lieber aus der Ferne an oder versucht man sich als Nahkämpfer an den Gegner heranzuschleichen. Das Terrain bietet Möglichkeiten sich hinter Bäumen zu verstecken, den Weg zu blockieren oder auf Kisten zu steigen, um einen besseren Überblick zu bekommen.

Krosmaster-Spielbrett und -Figuren
Krosmaster-Spielbrett und -Figuren

Wie gesagt, sind vor allem die Figuren die Besonderheit am Spiel. Insgesamt gibt es derzeit 59 Stück. Im Grundspiel sind 8 Stück enthalten. Weitere kann man als deutsche Blindbox kaufen (man weiß also nicht, welche Figur man kauft) oder als englisches Viererset an Figuren. Vor allem die Kickstarter-Promo-Figuren sind heiß begehrt und gehen bei Ebay auch mal für 20 Euro über den Tisch.

Auf Board Game Geek gibt es eine aktive Community und zahlreiche Bilder und Spielerhilfen. Vor allem das Spielbrett wurde sehr oft in echtem 3-D nachmodelliert, sodass sich ein großartiges Spielgefühl ergibt. Da ich auch einige weitere Figuren dazu gekauft habe, musste ich mir eine neue Verstaumöglichkeit in der Box überlegen (Download der Vorlage):

Selbstgebasteltes Inlay aus Schaumstoff
Selbstgebasteltes Inlay aus Schaumstoff

Bereits letztes Jahr in Essen wurde eine weitere Kickstarter-Kampagne angekündigt, welche die Erweiterung Frigost hervorbrachte, die es inzwischen auch schon zu kaufen gibt. Das Spiel hat sich dadurch aber wenig geändert. Es ist effektiv nur das gleiche Spielbrett in Weiß statt Grün.

Dieses Jahr soll dann auch noch Krosmaster Junior herauskommen, was die Regeln etwas vereinfacht und so auch für jüngere Spieler geeignet ist, sowie Krosmaster: Quest, bei dem wirklich 2 bis 6 Spieler gegeneinander in der Arena antreten können. Vorteil bei „Krosmaster: Quest“ ist, dass sich das Spiel ändert, man aber mit den gleichen Figuren wie „Krosmaster: Arena“ spielen kann.

Als wäre dem nicht genug, liegt jedem Spiel und jeder Figur ein Online-Code bei. Dieser lässt sich auf der Webseite eingeben und „Krosmaster: Arena“ online gegen andere Spieler spielen. In echt macht das Spiel wegen der Komponenten natürlich mehr Spaß. Wer taktische Spiele mit einer überragenden Optik und Komponenten mag, sollte sich „Krosmaster: Arena“ auf alle Fälle anschauen!

Ein paar der 59 Figuren im Überblick
Ein paar der 59 Figuren im Überblick

Full Circle Magazine 84 erschienen

Gestern ist die neue Ausgabe des englischsprachigen Magazins Full Circle Magazine erschienen. Themen der 84. Ausgabe sind unter anderem

  • Einführung in Git
  • Python-Programmierung – Teil 53
  • OpenVPN-Verbindung einrichten
  • Ubuntu auf dem Mac
  • Blender-Tutorial – Teil 11b
  • Inkscape-Tutorial – Teil 24
  • Linux Lab: PinguyOS
  • Review: Aduino Starter Kit
  • Kryptowährung – Teil 3
  • Ubuntu Games: Portal 2 Beta und Toki Tori 2+
  • News, Leserbriefe und mehr

Links: Webseite, Forum und Wiki

Buch: Clean Coder

Titel Clean Coder
Autor Robert C. Martin
Sprache Deutsch
Genre Fachbuch
Herausgeber mitp-Verlag, 2014
Seitenanzahl 216 Seiten

Es gibt sehr viele Bücher darüber, wie „ordentlicher“ Code auszusehen hat, wobei das teilweise natürlich auch Geschmackssache ist. Robert C. Martin, der u.a. für sein Buch „Clean Code“ bekannt ist, hat das Konzept auf die Entwickler ausgeweitet und will ein paar Verhaltensregeln für professionelle Programmierer geben.

Hinweis: Mit dem Begriff „Entwickler“ in dem Artikel sind sowohl weibliche als auch männliche Personen gemeint.

Was heißt professionell?

Die Antwort auf diese Frage erfährt man, wenn man das Buch durchgelesen hat. Martin gibt nicht am Anfang eine klare Definition von „Professionalität“, sondern zeigt mehrere verschiedene Verhaltensregeln auf und definiert diese als professionelles Vorgehen.

Worauf baut Martin seine Aussagen? Er selbst schreibt am Anfang des Buches, dass viele Ratschläge auf seiner persönlichen Erfahrung beruhen. Und davon hat er genug, schließlich ist er seit 1970 als Programmierer tätig und hat vermutlich jeden Fehler gemacht, den man in dieser Branche machen kann. Martin sagt aber auch, dass nicht alle Ratschläge auf jeden passen. Einige werden sicherlich nur für Kopfschütteln sorgen, aber im Großen und Ganzen kann jeder etwas aus dem Buch mitnehmen.

Verantwortung: Die Basis der Professionalität

Das Buch beginnt mit einem Unglück. Am 28. Januar 1986 explodierte die Raumfähre Challenger kurz nach dem Start. Sieben Menschen kamen dabei ums Leben. Grund für die Explosion war ein Ausfall der Dichtungsringe zwischen zwei Komponenten, weil es an dem Tag zu kalt war und die Dichtungsringe nicht für solche niedrigen Temperaturen ausgelegt waren. Den Ingenieuren der Raumfähre war das Problem bekannt und sie sprachen auch beim Management vor, um den Start zu verschieben. Das Management setzte sich aber darüber hinweg, was zu der vorhergesagten Katastrophe führte.

Was Martin mit dem Beispiel zeigen will, ist dass man als Konstrukteur von etwas die Verantwortung zu tragen hat. Sei es als Ingenieur oder Software-Entwickler. Die Verantwortung des Challenger-Unglücks lag sicherlich auch beim Management, weil sie nicht auf ihre eigenen „Profis“ hörte. Sie lag aber auch bei den Ingenieuren, die sich überstimmen ließen, obwohl sie diese Katastrophe voraussagen konnten. Was Martin sagen will: Profi zucken nicht mehr den Schultern, wenn sie einen Fehler sehen und keiner auf sie hört, sondern sie setzen alles daran, dass nichts und niemand zu Schaden kommt. (Diese Aussage deckt sich im Übrigen auch mit der Aussage von Martin Fowler auf der OOP 2014, dass Entwickler „not just code monkeys“ sind, auch wenn der Kontext ein anderer ist).

Dementsprechend hat jeder Entwickler „seinen“ Code zu verantworten. Er soll zum einen keinen Schaden am Verhalten zulassen (eine Funktion verhält sich plötzlich anders als zu vor), aber auch keinen Schaden an der Struktur. Vor allem der letzte Punkt ist etwas, der bei langjährigen Projekten früher oder später immer zu einem Problem wird, weil sich die Entwickler nicht daran halten, z.B. durch Refactorings für eine klare Struktur zu sorgen.

Testen, testen, testen

Was einen professioneller Entwickler laut Martin auch auszeichnet, ist, dass er weiß, dass sein Code funktioniert. Und hier bedeutet „wissen“ nicht bloß „glauben“, sondern er muss es beweisen können. Das geht entweder durch sehr intensives Code-Studium oder durch Tests, besser noch automatisierte Tests.

Robert C. Martin nennt hier vor allem den Begriff „Test Driven Development“ (kurz TDD). Darunter versteht man, dass man zuerst den Test schreibt, der scheitert, und danach den Code, der den Test durchlaufen lässt. TDD hat dabei noch andere Vorteile, aber in Bezug auf Professionalität zeigt es, dass der Code funktioniert und genau das tut, was von ihm erwartet.

Neben TDD geht Martin noch auf andere Teststrategien wie Akzeptanztests ein, denen ebenfalls ein eigenes Kapitel gewidmet ist.

Profis sind Teamplayer

Wer heute eine Stellenausschreibung für einen Job als Software-Entwickler anschaut, wird das Wörtchen „Teamarbeit“ so gut wie immer lesen. Nach Martin sind die meisten Entwickler zwar eher Einzelgänger und haben lieber mit abstrakten Problemen als mit Menschen zu tun, aber man kommt normalerweise auch nicht darum herum, mit anderen Leuten zusammenzuarbeiten. Und sei es nur, dass irgendjemand die Anforderung stellt, was man als nächstes entwickeln soll. Hier stellt Martin heraus, dass ein Teamplayer nicht zu allem Ja und Amen sagt, sondern alles daran setzt, dass das Team als Ganzes vorwärts kommt.

Hierzu gehört eine klare Kommunikation mit dem Management und Kollegen. Wer kennt es nicht, dass der Software-Manager oder Product Owner auf einen zukommt und fragt: „Schaffst Du das bis nächste Woche Dienstag?“ und man antwortet: „Ich versuch's.“ In der Regel antwortet man nur so schwammig, weil man sich nicht sicher ist bzw. sich sogar sicher ist, es nicht zu schaffen, aber nicht Nein sagen will. Der Software-Manager oder Product Owner hört aber aus dieser Aussage eher ein „Ja, das ist machbar.“ heraus. Man sollte also grundsätzlich klar ansagen, was möglich ist und was nicht. Und man sollte auch grundsätzlich nichts bloß versuchen. Oder wie Yoda schon sagte: „Tu es oder tu es nicht. Es gibt kein Versuchen.“

Zum Teamwork gehört es aber auch, Hilfe anzubieten, wenn man sieht, dass jemand irgendwo hängt. Ebenso sollte man sich Zeit für Kollegen nehmen, die eine Frage haben. Das muss nicht unbedingt sofort sein, weil man ansonsten ständig in seiner aktuellen Tätigkeit unterbrochen wird, aber fünfzehn Minuten später ist ja auch okay. Auf der anderen Seite sollte man in einem Team auch nicht zögern, um Hilfe zu bitten. Vielen Menschen denken, dass Fragen ein Zeichen von Schwäche ist. Ganz im Gegenteil ist fragen menschlich (um das deutschsprachige Ubuntu-Portal zu zitieren), denn niemand weiß alles. Anstatt einen Woche alleine an einem Problem zu knabbern (und damit den Abgabetermin zu gefährden) ist es sinnvoller, jemanden zu fragen, der die Antwort in zehn Minuten parat hat.

Zeiteinteilung und Stichtage

Zur korrekten Kommunikation mit dem Management zählt laut Martin auch, dass man Aufwände richtig abschätzt. Wie der Ausdruck „Aufwandsabschätzung“ aussagt, handelt es sich dabei um keine definitive Zusage, was allen Beteiligten klar sein sollte. Es kann mal kürzer oder mal länger dauern.

Aus diesem Grund gibt Martin verschiedene Schätztechniken an. So werden zum einen das aus der Agilen Entwicklung bekannte „Planning Poker“ genannt, was auf der Delphi-Methode basiert. Zum anderen wird aber auch PERT erwähnt, was für Program Evaluation and Review Technique steht. Die Besonderheit ist hier, dass man die Schätzung nicht als einfache Zahl angibt, sondern als eine Art Mittel aus Bestfall, Normalfall und schlimmsten Fall. Hiervon berechnet Martin auch noch die Standardabweichung, um so die Abweichung für den Schlechtfall einzukalkulieren.

Damit man seine Aufgaben ordentlich und zeitgemäß erfüllen kann, gehört auch eine Zeiteinteilung. Zeitmanagement ist für einen Entwickler normalerweise sehr wichtig, da er viele Aufgaben „gleichzeitig“ bearbeiten oder zumindest im Kopf halten muss. Darauf wird in einem eigenen Kapitel auch eingegangen, was sich unter anderem dem leidigen Thema der Meetings widmet. Laut Martin ist es okay, ein Meeting frühzeitig zu verlassen (oder erst gar nicht teilzunehmen), wenn man nicht mehr benötigt wird. Vor allem die Aussagen, dass es die Pflicht des Vorgesetzten ist, dem Entwickler Meetings zu ersparen, ist interessant, denn oft sind es genau die Vorgesetzten, die einen zu diesen Meetings „ermuntern wollen“ (um es positiv auszudrücken).

Fazit

Lernt man durch das Buch, ein professioneller Programmierer zu werden? Hier kann man ein ganz deutliches und klares „Vielleicht“ als Antwort geben. Grund für diese ausweichende Antwort ist, dass das Wort Professionalität nicht fest von der Welt definiert ist. Robert C. Martin gibt seine Einschätzung, was er unter Professionalität versteht und wie man diese erreichen kann.

Unter dem Gesichtspunkt kann man zum Buch aber zumindest sagen, dass es wirklich sehr viele hilfreiche Tipps enthält, wie man ein besserer Programmierer werden kann. Angefangen bei der Verantwortung, die man für den Code hat, bis hin zu einer störungsfreien Kommunikation zwischen allen Parteien.

Interessant ist auch, dass Martin das Thema Karriere und Fortbildung in die Hände der Entwickler legt. Sicherlich hat auch eine Firma Interesse daran, seine Entwickler weiter zu auszubilden, um neuen Anforderungen gewachsen zu sein. (Aus einem anderen Buch zwischen zwei Managern: „Was ist denn, wenn wir unsere Leute teuer weiterbilden und sie dann den Job wechseln?“ – „Was ist, wenn wir sie nicht weiterbilden und sie bleiben?“) Aber Martin sieht es als Pflicht eines professionellen Programmierers an, sich auch privat weiterzubilden. Sei es durch kleine Fingerübungen am heimischen PC (am besten in einer Sprache, die man nicht täglich nutzt), bis hin zu Mentorenarbeit oder Hilfe in einem Open-Source-Projekt. (Martin selbst zeigt sich zum Beispiel für das Open-Source-Testing-Framework FitNesse verantwortlich.)

Schön ist die klare Gliederung des Buches, deren Kapitel nicht aufeinander aufbauen. So kann man sehr leicht auch nur ein einzelnes Thema durchlesen oder etwas nachlesen, wenn es einen interessiert. Ebenfalls gut sind die Beispiele im Buch, die sehr oft als Gespräch zwischen zwei oder drei Beteiligten dargestellt werden. Nach einem Gespräch analysiert Martin dann, was und wie es gesagt wurde und wo es ggf. zu Problemen bei der Kommunikation kam. Das ist sehr anschaulich und verständlich, da fast jeder schon ähnliche Gespräche gehabt hat.

Eine Besonderheit, die es abschließend noch hervorzuheben gilt ist, dass Robert C. Martin sich gegen den Flow-Zustand ausspricht. Das ist insoweit besonders, da fast alle Programmierbücher propagieren, dass man genau in diesem Zustand bessere Arbeit leistet. Martin ist ein Gegner dieses Flows und versucht alles, nicht dort hineinzukommen bzw. darin zu bleiben, weil man in dem Zustand zwar produktiver ist, aber auch Teile seines Gehirn für rationales Denken ausschaltet und somit eher Fehler macht.

Alles in allem ist „Clean Coder“ ein sehr schönes Buch, das, wenn es einen vielleicht auch nicht gleich professionell werden lässt, zumindest Tipps und Regeln an die Hand gibt, wie man ein besserer Programmierer werden kann.

Von LaTeX nach HTML und EPUB

Wozu die Feiertage alles gut sind … Weil ein Leser nach den konkreten Skripten fragte, wie das mit LaTeX gesetzte freiesMagazin nach HTML und EPUB konvertiert wird, habe ich dazu eine kleine Anleitung geschrieben. Es gab ja schon einmal eine ausführliche Anleitung, wie der prinzipiell Ablauf der Konvertierung ist, aber es fehlten die konkreten Beispiele und Skripte.

Link zur Anleitung

Film: Der Super-Hypochonder

Titel Der Super-Hypochonder
Genre Komödie, 2014
Darsteller Dany Boon, Alice Pol, Kad Merad
Regisseur Dany Boon
Länge 107 min
Trailer Trailer

Romain Faubert (Danny Boon) scheut den Kontakt mit Menschen und öffentlichen Plätzen. Wenn etwas nicht desinfiziert ist, bevor er es anfässt, bekommt er Panikattacken. Nicht nur er hat darunter zu leiden, sondern auch sein Arzt Dimitri Zvenka (Kad Merad), den Romain ständig mit neuen Scheinkrankheiten nervt. Dimitri hat die Idee, Romain zu verkuppeln, um ihn so loszuwerden. Durch eine kleine Verwechselung trifft Romain aber auf Dimitris Schwester Anna (Alice Pol) und verliebt sich in sie.

„Willkommen bei den Sch’tis“ ist sicherlich der bekannteste Film von Danny Boon und war auch in Deutschland sehr erfolgreich. „Der Super-Hypochonder“ versucht in die gleiche Kerbe zu schlagen, erreicht das zwar fast, aber nicht ganz, denn manchmal ist der Humor etwas zu platt bzw. zu Slapstick-artig. Die Komödie ist für einen unterhaltsamen Abend zu zweit vor dem Fernseher oder im Kino dennoch sehr gut geeignet und zahlreiche Stellen laden zum Mitlachen ein.

Humble Weekly Oh Man Sale

Zur aktuellen, wöchentlichen Humble-Aktion will ich gar nicht viel sagen, weil die Spiele nicht wirklich gut sind (nach meinem Spielempfinden).

Enthalten sind dieses Mal:

  • The Real Texas – ein Action-Adventure in Minecraft-Klötzchen-Optik
  • Cryptic Sea EP – drei kleinere Arcade-Spiele (Skateboard fahren, Autorennen und Tetris-Verschnitt)
  • Dungeon Hearts – ein gutes Drei-in-einer-Reihe-Spiel mit Rollenspielanleihen

Cryptic Sea EP – Volta
Cryptic Sea EP – Volta
Cryptic Sea EP – Touring Car
Cryptic Sea EP – Touring Car
The Real Texas
The Real Texas
Dungeon Hearts
Dungeon Hearts

Wer mindestens 6 US-Dollar zahlt, erhält noch:

  • Krunch – ein Geschicklichkeitsspiel, bei dem es auch auf Geschwindigkeit ankommt
  • Foul Play – ein interessantes Beat 'em up in einem Theater (aber nur für Steam!)
  • Legend of Dungeon – ein Rollenspiel mit bunter Grafik

Krunch
Krunch
Legend of Dungeon
Legend of Dungeon

Wer mindestens als 10 US-Dollar zahlt, erhält noch:

Alle Spiele bis auf Foul Play (was ich aber nicht getestet habe) sind in Englisch. Für alle, außer für Cryptic Sea, gibt es auch den Soundtrack als MP3 zum Download.

Bezahlen kann man wie immer über Kreditkarte, Paypal, Google Wallet, Amazon Payments oder Bitcoin. Das Angebot besteht noch bis zum 24. April 2014.

Achtung: Vor dem Kauf sollte man zu allen Spielen die Systemvoraussetzung für Linux lesen.

Meinung zum Bundle

Lohnt sich der Kauf? Für mich nicht wirklich. „Cryptic Sea EP“ ist eine Beta-Version, was man merkt, denn der Skateboard-Teil lief bei mir nicht los und auch die anderen beiden Teile sind nicht sehr gut. „The Real Texas“ hatte eine interessante Anfangsstory, aber grafisch spricht es mich gar nicht an. „Foul Play“ ist nur für Steam und fällt daher raus. „Krunch“ ist nett, bietet aber auch nichts besonderes, was es nicht schon einmal (besser) gab. „Legend of Dungeon“ und „Dungeon Hearts“ sind die einzigen zwei Spiel, die mich interessiert haben.

Bei „Dungeon Hearts“ fand ich die Idee, Rollenspielelemente mit Pattern Matching zu verbinden, recht interessant. Das kannte ich schon von „Puzzle Quest“ (für Windows), was ich sehr mochte, hier geht es aber mehr um Geschwindigkeit. Leider merkt man, dass das Spiel eher für ein Tablet gemacht ist, weil die Mauswege oft sehr lang sind und man nicht schnell genug hinterherkommt. Dennoch ein sehr nettes Spiel für zwischendurch.

Und „Legend of Dungeon“ spielt sich ebenfalls ganz nett und sieht trotz der Pixelgrafik ganz gut und bunt aus. Vor allem Licht-Elemente wurden gut eingesetzt. Nur die Bedienung des Inventars ist ein Graus.

Review: Papers, Please

Die folgenden Tagebucheinträge wurden nach der Entlassung des Genossen XXXXXXX in seiner Wohnung in der XXXXXXXX-Straße beschlagnahmt. Alle persönlichen Daten wurden geschwärzt.

Tagebucheinträge

22. November 1982

„Heute ist mein Glückstag! Ich erhielt heute ein Schreiben, dass ich die Arbeitslotterie des Monats gewonnen habe. Ich hatte mich zuerst gewundert, weil ich an keiner Lotterie teilgenommen habe. Aber da man nicht jeden Tag etwas gewinnt, habe ich mich trotzdem gefreut.“

„Der Gewinn ist eine neue Arbeitsstelle in Grestin. Unsere großartige Führung in Arstotzka will die Grenzen nach Kolechien öffnen und jemand muss natürlich die ehrenvolle Aufgabe übernehmen, die Einreisenden zu kontrollieren. Ich freue mich wahnsinnig, dass ich diese Aufgabe übernehmen darf.“

„Meine Frau XXXXXX und mein Sohn XXXXX ziehen gleich mit in die neue Wohnung ein. Auf die Mitnahme meiner Schwiegermutter hätte ich verzichten können. Auch wenn mir unsere aktuelle Wohnung der Klasse 6 in XXXXXX gefällt, wird die neue der Klasse 8 in Ost-Grestin sicher nicht schlecht sein.“

„In der Zeitung steht mein neuer Job.”
„In der Zeitung steht mein neuer Job.”

23. November 1982

„Mein erster Arbeitstag bei der Grenzstelle. Ich musste mich am Anfang durch das Handbuch wühlen, aber prinzipiell sind die Regeln einfach: Arstotzkaner mit gültigem Pass dürfen rein, der Rest nicht. Immerhin zwölf Leute konnte ich so abfertigen. Ich fand es etwas schade, dass nicht jeder in unser schönes Arstotzka einreisen darf, aber das hat sicherlich seine Gründe.“

„Meine Grenzkabine ist gemütlich, aber nicht sehr groß. Vor allem der Lautsprecher, mit dem ich ‚Es lebe Arstotzka!‘ und ‚Nächster!‘ in die Menge brüllen darf, macht mir viel Freude.“

„Es lebe Arstotzka.“
„Es lebe Arstotzka.“

24. November 1982

„Heute ist etwas Tragisches passiert. Es steht sicherlich morgen in allen Zeitungen. Ein Terrorist ist bei der Einreise einfach über die Absperrung gesprungen und hat eine Rohrbombe auf einen Grenzsoldaten geworfen. Es war grauenhaft …“

„Und das auch noch an dem Tag, an dem unsere großartige Regierung die Einreisebestimmungen gelockert hat. Eigentlich durfte jeder mit gültigem Pass einreisen. Ich denke, das wird sich ab morgen ändern.“

25. November 1982

„Wie erwartet sind die Prüfungen jetzt wesentlich strenger – was für mich mehr Arbeit bedeutet. Es gab viele neue Regeln, die ich beachten muss. Jeder Ausländer muss einen Einreisebeleg vorlegen, dessen Datum ich prüfen muss.“

„Insgesamt gefällt mir die Arbeit gut. Es ist nicht so anspruchsvoll, aber man sieht viele Menschen.“

26. November 1982

„Hätte ich mich gestern nur nicht beschwert. Einreisebelege sind wegen des blühenden Schwarzmarktes nicht mehr erlaubt und ich muss jetzt Einreise-Genehmigungen prüfen. Name, Passnummer und Einreisegrund müssen alle geprüft werden und stimmen. Immerhin komme ich so mit den Leuten etwas ins Gespräch, es ist aber dennoch anstrengend.“

„Vor allem bin ich durch die vielen Prüfungen nicht mehr so schnell. Gerade einmal sechs Personen konnte ich kontrollieren. Aber ich will keinen Fehler machen. Da ich nur fünf Krediteinheiten pro Kontrolle bekomme, reicht das Geld gerade einmal für Miete (die heute auch noch erhöht wurde) und Heizung. Immerhin hatte ich etwas Geld gespart, um Essen für meine Familie kaufen zu können.“

„Als Grenzschützer muss ich jeden Pass genau kontrollieren.“
„Als Grenzschützer muss ich jeden Pass genau kontrollieren.“

27. November 1982

„Da es gestern so langsam voran ging, wollte ich heute etwas schneller arbeiten. Die Ersparnisse halten nicht ewig als Reserve. Dummerweise sind mir dabei mehrere Fehler passiert. Ich habe einige Leute wohl fälschlicherweise weggeschickt, obwohl sie einreiseberechtigt waren. Und ein oder zwei sind wohl durch meine Kontrolle geschlüpft, obwohl ihre Daten nicht gepasst haben.“

„Jede meiner Entscheidungen wird wohl von höherer Ebene noch einmal geprüft, wie auch immer die das machen. Jedenfalls gab es erst zwei Ermahnungen und danach durfte ich fünf Krediteinheiten Bußgeld pro Fehler bezahlen. Im Endeffekt habe ich heute nichts verdient, was ich meiner Frau natürlich nicht sagen kann.“

„Die Ersparnisse reichen leider nicht mehr für Heizung und Essen. Ich hoffe, dass mir meine Familie es abnimmt, dass bei Bauarbeiten was an den Heizungsrohren kaputt gemacht wurde.“

28. November 1982

„Heute war ein schlimmer Tag. Das Ministerium hat mir einen Arrest-Knopf in die Kabine eingebaut. Jedes Mal, wenn ich jemand Verdächtigen bemerke, soll ich den drücken. Ich dachte mir nichts dabei und als ich ihn drückte, ging ein Alarm los und zwei Wachen führten den Mann vor mir weg. Ich will gar nicht wissen, was sie jetzt mit ihm machen.“

„Zusätzlich ist meine ganze Familie krank, weil es hier so saukalt ist. Ich habe heute wieder nicht genug Geld nach Hause gebracht, um Miete, Heizung und Essen zu bezahlen. Zusätzlich brauchte ich auch noch Medikamente für XXXXXXX und XXXXXXX. Ich glaube, wir müssen, das Essen rationieren.“

„Entweder Essen oder Medikamente für die Familie …“
„Entweder Essen oder Medikamente für die Familie …“

29. November 1982

„Ich kann nicht mehr! Drei weitere Leute mussten wegen mir abgeführt werden. Ich hätte sie ja gerne durchgelassen, denn sie sahen echt nicht wie Terroristen aus. Aber ich hatte davor schon zwei Fehler gemacht und jeder weitere hätte wieder negative Krediteinheiten bedeutet.“

„XXXXXXX ist wieder gesund, aber XXXXXXX hat den Tag nicht überlebt. Ich weiß, man sollte das nicht sagen, aber ich konnte sie eh nie leiden. Ich versuche natürlich dennoch XXXXXXX zu trösten, aber mir scheint, sie gibt mir die Schuld daran.“

30. November 1982

Als ich heute nach Hause kam, lag ein Brief vom Ministerium auf dem Tisch. Weil wegen mir ein Familienmitglied gestorben ist und die Partei nur erfolgreiche Mitarbeiter in ihren Reihen wissen will, wurde ich entlassen. Die Wohnung wurde uns gekündigt. Morgen werde ich mich an den Grenzübergang nach Kolechien stellen. Hoffentlich sind deren Auflagen für eine Einreise nicht so streng wie bei uns …“

Zahlen und Fakten

„Papers, Please“ ist ein sehr ungewöhnliches Spiel. Der Startbildschirm und die militärische Musik zeigen es deutlich, dass man kein Highend-Grafik-Spiel erwarten kann. Dafür überzeugt „Papers, Please“ durch moralische Entscheidungen, die dem eigentlichen Spielziel, Fehler in einem Suchbild zu finden, oft entgegenlaufen.

Titelbildschirm von „Papers, Please“.
Titelbildschirm von „Papers, Please“.

Das macht das Spiel dann auch aus, denn man muss schon zweimal überlegen, ob man immer nach Vorschrift arbeitet oder eine Familie, die den Grenzübergang passieren will, trennt, weil bei einer Person der Pass abgelaufen ist. Teilweise haben Entscheidungen sogar Auswirkungen, die in der Zeitung am nächsten Tag aufgegriffen werden.

Durch die Bestrafung von Fehlern überlegt man sich auch zweimal, ob man absichtlich jemanden die Grenze überqueren lässt, der eigentlich nicht dürfte. Grob gerechnet muss man jeden Tag mindestens zwölf Personen korrekt kontrollieren, damit man Miete, Heizung und Essen bezahlen kann. Reicht das Geld nicht aus, muss man entweder Heizung oder Nahrung streichen, was sich auf die Gesundheit der Familienmitglieder auswirkt. Eine wissentliche Fehlentscheidung kann sich also auf die eigene Familie auswirken.

Leider kann man deswegen auch nicht einfach die Regeln des Spiels über den Haufen werfen, in dem man einfach alle Menschen einreisen lässt, was bei freien Grenzen ja toll wäre. Das System bestraft einen so stark, dass man so keine zwei Tage weit kommt.

„Papers, Please“ selbst kann man beispielsweise über Steam oder den Humble Store erstehen. Der Preis liegt bei ca. 9 US-Dollar. Das Spiel liegt in verschiedenen Sprachen vor, unter anderem auch Deutsch.