Samstag, 18. November 2017

Freitag, 10. November 2017

Bibliotheken zur Auswertung von Kommandozeilenparametern

Computerprogramme werden mit einem bestimmen Zweck entwickelt. Die Werkzeuge auf UNIX/Linux-Systemen sind sehr spezialisiert und folgen der Idee "ein Werkzeug für eine Aufgabe, aber so gut wie möglich." Einzelne Werkzeuge kombinieren Sie miteinander zu mächtigen Werkzeugketten. Mit Hilfe von
Kommandozeilenparametern, die sie den Programmen beim Aufruf mitgeben, steuern Sie die Ausführung und fangen Sonderfälle ab.

Jede Programmiersprache verfügt über eine oder mehrere Möglichkeiten, diese Kommandozeilenparameter auszuwerten. Nachfolgend eine erste Zusammenstellung dazu.

Mal sehen, was wir noch ergänzen können.

Für Python gibt es hier einen ausführlicheren Beitrag von mir auf StackAbuse.

[Nachtrag am 20. Jan 2018]

Im Magazin LinuxUser ist in der Ausgabe 02/2018 ein ausführlicher Beitrag von mir zu Docopt erschienen.

Debian Package Creation HowTo

Debian-Pakete zu erstellen, ist ein Prozess, der viel Wissen voraussetzt. Es geht dabei auch darum, einen hervorragenden Ruf in Bezug auf Qualität der Software und des Paketformats der Linux-Distribution aufrecht zu erhalten. In unserem Buch zu Debian-Paketmanagement wurde sicher schon deutlich, wie vielschichtig das Thema Paketverwaltung ist.



Für das Newsportal Linuxhint entstand jetzt ein Beitrag, der den Ablauf des Bauens von Paketen verständlicher macht. Der Beitrag ist keine vollständige Anleitung, erleichtert aber den Einstieg und verhilft Ihnen zu ersten Erfolgserlebnissen. Für Verbesserungen dazu bin ich dankbar. Diese können direkt an das GitHub-Archiv erfolgen.

Mittwoch, 8. November 2017

Lean Coffee

Der Mittwochmorgen gehört inzwischen einem kleinen Zusammensein, genannt Lean Coffee Startup Meeting. Unternehmer und Ingenieure aus allen Bereichen treffen sich zu einem recht zwanglosen Gedankenaustausch in einem vorher vereinbarten Cafè. Den Kaffee sponsorn die Organisatoren.

Klingt erstmal reichlich unorganisiert, ist es aber beileibe nicht. Der Ablauf der Veranstaltung ist auf eine Stunde begrenzt und folgt der Methode des Lean Coffee. Nach einer kurzen Vorstellungsrunde notiert jeder Teilnehmer auf Notizzetteln die Themen, die er gern besprechen möchte -- von der Besiedlung des Mars über neueste Fintech-Trends bishin zu kniffligen Fragen bei der Unternehmensführung. Nach drei Minuten werden die Vorschläge bewertet -- dazu vergibt jeder Teilnehmer maximal drei Punkte auf den Notizzetteln. Der Koordinator der Veranstaltung legt danach fest, welche Themen besprochen werden. Die Themen mit den meisten Punkten haben Vorrang, da sie das größte Interesse aller Teilnehmer signalisieren.

Gespräche mittendrin

Nach fünf Minuten wird per Daumen-hoch oder -runter abgestimmt, ob das Thema für weitere drei Minuten interessant ist. Danach wird das Thema gewechselt. Zum Schluß sammeln sich alle Themen.

Zusammenfassung am Schluß
Warum das Ganze? Die Gründe reichen vom gemeinschaftlichen Austausch mit Gleichgesinnten auf Augenhöhe über das Problemlösen bis hin zum Knüpfen von neuen Kontakten. Auch wer neu in der Stadt ist, findet somit flink und unkompliziert Anschluß.

Jetzt heißt es wieder eine Woche warten -- bis zum nächsten Zusammentreffen.

Donnerstag, 2. November 2017

Eins

Ein Jahr Kapstadt. Ein Jahr Eintauchen und Schwimmen in einer Welt, die sich irgendwo ähnlich ist und sich trotzdem so anders als das vorher Gewohnte anfühlt. Eine neue Mischung aus anderen Gewohnheiten und Abläufen, Menschen und Hautfarben sowie Gerüchen und Geräuschen, die jeden Tag spannend ist und sich so sehr von Europa abhebt. Es fühlt sich leicht an und setzt doch viel mehr Organisiertheit voraus, ohne das es nicht geht. Vor der faszinierenden Kulisse des Tafelbergmassifs und des blauen Ozeans darf nicht vergessen werden, das Business auch konstantes Werkeln bedeutet. Dranbleiben ist angesagt.

War der Schritt richtig? Ja. Weiter? Ja! Zeit für eine Eins und den Start in die Zwei.

Jubiläums-Eins

Donnerstag, 26. Oktober 2017

Das kulturelle Erbe hübsch verpackt

Wie bereits im September berichtet, hat MyCiti anlässlich des Heritage Day einen speziellen Linienplan veröffentlicht, in dem auch die Sehenswürdigkeiten in und um Kapstadt samt passender Haltestelle eingetragen sind. Die Karte kommt mit einem hübschen Cover und macht neugierig auf den Inhalt. So wird der nächste Ausflug richtig gut.

Hülle der Karte

Mittwoch, 25. Oktober 2017

Arbeitspause

Wer diesen Blog etwas verfolgt hat, wird gesehen haben, dass es eine recht intensive Arbeitsphase ist. In den letzten Wochen gab es etliche Veröffentlichungen in Printmedien und auch online.

Gemeinsames Arbeiten


Zum guten Arbeiten gehört auch eine verdiente Pause. Diese hier kombiniert Meerblick, leckeren Fisch, Roiboos-Tee und ein gutes Buch.

Arbeitspause

Sonntag, 22. Oktober 2017

Der Sommer ist wieder da

Endlich ist er zurück - der Sommer. Nach etlichen Tagen mit eher gemischtem Wetter wird es wärmer und die Sonnenscheindauer größer. Das gibt Energie und motiviert, mehr Zeit draußen zu verbringen. Bei der Location ist das sicherlich auch kein Wunder.

Hout Bay mit Strand

Kapstadt mit Hafen und Tafelberg

Samstag, 14. Oktober 2017

Informationen zu Busnetz von Golden Arrow als Open Data verfügbar

Im Western Cape operieren mehrere Busunternehmen im Rahmen des ÖPNV, so z.B. MyCiti, Golden Arrow und die vielen privat betriebenen Minitaxis. Wie bereits früher berichtet, existiert seit Beginn diesen Jahres eine Karte der Initiative WhereIsMyTransport, auf der alle regelmäßigen Buslinien von MyCiti und den Minitaxis zusammengefasst sind. Das erleichert Ihnen den Weg von A nach B im Großraum Kapstadt erheblich.

Die frei verfügbare Datenmenge zum Verkehrsnetz wird jetzt noch größer. Wie OpenUp in der vergangenen Woche via Twitter mitteilte, stehen von nun an auch sämtliche Haltestellen des Busnetzes von Golden Arrow im Rahmen des Projekts Code for South Africa als Open Data zur Verfügung. Bereitgestellt hat die Daten freundlicherweise die Stadtverwaltung von Kapstadt. Damit wird die bereits bestehende Karte noch umfangreicher und erlaubt weitere Verknüpfungen und Erweiterungen der bestehenden Navigationssoftware.

Die Haltestellen von Golden Arrow auf einer Landkarte von Google Maps


Freitag, 13. Oktober 2017

Wildfeuer am Tafelberg

Rund um den Tafelberg flammen jedes Jahr immer wieder Feuer auf. Auf Fotos sieht das insbesondere in der Nacht sehr spektakulär aus. Die Rauchsäule ist oft sehr groß. Häufig ist die Ursache für das Feuer nicht ermittelbar, wobei die Trockenheit meist der entscheidenden Faktor ist. Das Unterholz brennt sehr schnell und großflächig.



Derzeit gibt es ein größeres Feuer auf der Westseite des Tafelbergmassivs zwischen Camps Bay und Hout Bay. Ausgebrochen ist es am Mittwoch, d.h. vor zwei Tagen. Trotz massiver Bekämpfung mit mehreren Löschhubschraubern und einer dreistelligen Anzahl an Einsatzkräften ist das Feuer bis heute nicht wirklich unter Kontrolle. Das beeinträchtigt auch den Verkehr, weil zeitweise die Küstenstraße (M6) gesperrt ist und somit die Verbindung nach Kapstadt sehr eingeschränkt ist.

Blick von Hout Bay zum Tafelberg mit Rauchwolken

Mittwoch, 11. Oktober 2017

Noch mehr Artikel auf StackAbuse

In den letzten Tagen sind zwei weitere Artikel von mir auf StackAbuse erschienen. Im ersten geht es um symbolische Links -- wie man dieser erstellt und validiert. Dazu gehört auch die Vorstellung des Werkzeugs symlinks.

Der zweite Beitrag widmet sich dem Thema des Findens bestimmter Inhalte in Textdateien, komprimierten Dateien sowie Archiven. Ebenfalls dürfen Rechenblätter von Tabellenkalkulationen und PDF-Dokumente nicht zu kurz kommen. Behilflich sind hierbei Werkzeuge wie zgrep, loook und pdfgrep.

Suche mittels loook
Hier geht es zu den beiden (englischsprachigen) Artikeln:

Mittwoch, 4. Oktober 2017

Herbstkooperation mit StackAbuse

Stack Abuse ist eine kleiner Wissensfundus, bei der Themen aus der IT-Welt auseinandergenommen und detaillierter erklärt werden. Vieles dreht sich um die Programmiersprache Python und deren Module. Wer die Sprache kennt, weiß dass es vergleichsweise einfach ist, mit ihr warm zu werden und damit schnell produktiven und verständlichen Code zu fabrizieren, den man auch später wieder versteht.

Etwas unübersichtlich ist jedoch die Menge der Module (Bibliotheken), die es mittlerweile gibt und die Teil der regulären Python-Veröffentlichung sind. Diese decken nahezu alle Bereiche ab -- sei es Kryptographie, Netzwerkfunktionen, Listen und Baumstrukturen sowie die Verarbeitung und Aufbereitung von numerischen Daten.

Nicht zu allen Themen gibt es Einführungen -- aber das soll sich ändern. Beigetragen habe ich dazu bisher mit diesen Themen:


Weitere Beiträge folgen :)

Ähnliche Beiträge hier im Blog waren bislang:
Weitere Veröffentlichungen finden Sie hier in dieser Liste.

Mittwoch, 27. September 2017

Zeitz MOCAA. Ein Museum für den afrikanischen Kontent

Am 22. September 2017 eröffnete in Kapstadt das Zeitz Museum of Contemporary Art of Afrika, kurz: MOCAA. Beheimatet in einem ehemaligen Silo in den Docklands der Waterfront, gibt es auf 6 Etagen und über 9500qm verteilt den Raum frei für zeitgenössische Kunst aus dem afrikanischen Kontinent.

Das beinhaltet Skulpturen, Fotos, Audio- und Videoinstallationen sowie Zeichnungen von über 60 verschiedenen Künstlern. Es zeigt die gesamte Bandbreite und Vielfalt. Damit wird der Blick auf den Kontinent, seine Mystik und Glaubensebenen erlebbar. Status: anschauenswert.

Auf der Terasse des Zeitz MOCAA

Montag, 25. September 2017

Hadedas. Der persönliche Klang von Afrika

Afrika ist überall anders und passt nicht in eine vorgefertigte Schublade. Zudem hat jeder seine persönliche Referenzen, was er mit einem zunächst für ihn fremden Kontinent oder Ort verbindet.

Für die einen ist es das Meeresrauschen, für den anderen die Sprachvielfalt der Menschengruppen oder das Hupen der Autos. Für mich ist es der charakteristische Ruf des Hadeda Ibis (Bostrychia hagedash). Diese Vogelart gehört zu den Ibisen und zählt zu den lautesten Vertretern seiner Art. Mit diesem Geräusch frühmorgens geweckt zu werden, heißt für mich, in Afrika zu sein.


Sonntag, 24. September 2017

Das kulturelle Erbe im Blick

Seit 1995 feiert Südafrika am 24. September offiziell den Heritage Day. Dieser Tag gilt als offizieller Feiertag. Ziel ist, den Blick für das kulturelle Erbe sowie die Vielfalt von Glauben und Traditionen zu erhalten -- das, was die südafrikanische Nation in seiner Gesamtheit auch sehr spannend macht. Um diese Vielfalt bewußter zu erleben, laufen etliche Veranstaltungen, die unter dem Hashtag #HeritageDay kommentiert und dokumentiert werden.

Damit Sie einen schärferen Blick für die Vielfalt bekommen, hat sich MyCiti -- einer der Nachverkehrsbetreiber in Kapstadt -- etwas sehr hübsches einfallen lassen. Von seiner Karte mit den einzelnen Buslinien gibt es seit Ende der Woche auch eine spezielle Ausgabe, auf der 20 Sehenswürdigkeiten eingetragen sind.

Der MyCiti-Routenplan (Ausschnitt)
Neben der Buslinie, mit der Sie den Ort erreichen, finden Sie eine Kurzbeschreibung zur Sehenswürdigkeit. Auf geht's!

Die Sehenswürdigkeiten mit Liniennummer (Ausschnitt)

Donnerstag, 21. September 2017

ÖPNV live. Die Fähre im Blick

Mehr und mehr Verkehrsunternehmen statten ihre Fahrzeuge mit GPS-Sensoren aus, um deren Position zu erfassen und in Echtzeit Aussagen zur Route geben zu können. Mittlerweile stehen viele der erfaßten Daten als Open Data zur Verfügung und können jedem Interessenten in eigenen Anwendungen verarbeitet werden. Das Schweizer Projekt Opendata.ch stellt dazu eine eigene API bereit, ebenso andere Logistikdienstleister wie die Deutsche Bahn oder die SBB.

Neben Routenplanern und Standortinformationen erlaubt die Technik auch eine Visualisierung auf einer Landkarte. Das Projekt livemap24 erfaßt nicht nur Busse und Bahnen, sondern auch Flugzeuge, Fähren und Seilbahnen -- weltweit.

ÖPNV in Venedig. Wann kommt die nächste Fähre?

Mittwoch, 20. September 2017

Share the road

Mobilität ist in (Süd)Afrika ein großes Thema. Die Benutzung eines Kraftfahrzeugs stellt für viele Menschen die einzige Möglichkeit dar, um sich in überschaubarer Zeit zwischen zwei Orten zu bewegen. Lediglich in den Großstädten wie bsw. Kapstadt, Johannesburg und Durban besteht ein öffentliches, dichtes Nahverkehrsnetz.

In der Region Western Cape -- sprich in und um Kapstadt -- sind das MyCiti, Golden Arrow und Minitaxis. Während MyCiti und Golden Arrow auf festen Routen unterwegs sind, sind die Minitaxis deutlich flexibler. Sie bringen Sie genau dahin, wo Sie hinwollen und halten an allen möglichen und unmöglichen Stellen auf Zuruf.

Trotzdem habe sich einige Strecken herausgebildet, die als zentrale Verkehrsadern regelmäßig von den Minitaxis frequentiert werden. Diese inoffiziellen und nicht ausgeschilderten Routen wurden vom Projekt WhereIsMyTransport in enger Zusammenarbeit mit den Betreibern und Eigentümern der Minitaxis erfaßt und in den zentralen Liniennetzplan integriert.

Ausschnitt des Liniennetzes
Für Radfahrer ist es mitunter sehr schwierig, sich den Platz auf den Straßen zu erkämpfen. Initiativen wie Arrive Alive oder die Pedal Power Association kämpfen für mehr Gleichberechtigung. Vielfach erinnern Hinweisschilder daran, dass es noch andere Verkehrsteilnehmer außer Autos gibt.

Hinweis am Chapman's Peak Drive

Montag, 18. September 2017

Die Ausgabe von Asciidoc nach PDF anpassen

Asciidoc ist eine textbasierte Sprache (Markup Language). Diese vereinfacht es erheblich, (Text)Dokumente zu Erstellen, zu Pflegen und deren Änderungen in Revisionskontrollsystemen wie Git nachzuverfolgen. Aufgrund der Kompaktheit und Verständlichkeit der Sprache hat Asciidoc den Prozess zur gemeinsamen Erstellung und Pflege von Büchern, Dokumentation und Schulungsmaterial erheblich erleichtert.

Bei Asciidoc handelt es sich um Plaintext mit speziellen Markierungen. Erst durch den expliziten Aufruf eines Übersetzerprogramms wandeln Sie diesen Ursprungstext über mehrere Zwischenstufen in das gewünschte Zielformat um, bspw. zu Postscript, PDF, HTML, Epub und Handbuchseiten (Manpages). Im UNIX/Linux-Werkzeugkasten finden Sie dafür bspw. Asciidoc, a2x, Asciidoctor und Asciidoctor-pdf.

Der Weg von Asciidoc nach PDF funktioniert entweder über Dblatex oder über den Apache Formatting Objects Processor -- kurz FOP. Der erste Weg setzt auf die Werkzeugkette aus DocBook, xsltproc und Dblatex, der zweite nutzt statt Dblatex die auf Java basierende Software FOP. Beide Wege werden durch das Programm a2x gekapselt, d.h. mit einem einzigen Aufruf angestoßen. Für Dblatex sieht der Aufruf wie folgt aus:

a2x -f pdf document.adoc

Der Schalter -f pdf veranlasst a2x, das Backend Dblatex zu benutzen. Für die Verwendung von FOP nutzen Sie stattdessen diesen Aufruf:

a2x --fop document.adoc

Zur Demonstration nutzen wir dieses Asciidoc-Dokument, in den beiden vorherigen Aufrufen schlicht als document.adoc bezeichnet. Der darin genutzte Text stammt nicht vom Autor selbst, sondern wurde aus dem Wikipedia-Artikel zu Kapstadt entnommen und etwas bearbeitet.

:author: Frank Hofmann

= Visiting South Africa =

== Cape Town ==

Cape Town is a port city on South Africa’s southwest coast, on a peninsula beneath the imposing Table Mountain. Slowly rotating cable cars climb to the mountain’s flat top, from which there are sweeping views of the city, the busy harbor and boats heading for Robben Island, the notorious prison that once held Nelson Mandela, which is now a living museum.

image::capetown.jpg[width=200]


Die erzeugten Ergebnisse in der Ausgabe fallen durch die verwendeten Stilvorlagen recht unterschiedlich aus. Während der Weg über Dblatex sowohl ein Titelblatt, die Revisionshistorie des Dokuments sowie ein Inhaltsverzeichnis produziert, ist die Ausgabe via FOP deutlich kompakter.

Das erzeugte PDF via Dblatex

Das erzeugte PDF via FOP
Dblatex bietet eine Reihe von Schaltern, um die Elemente der Ausgabe zu verändern. Möglich sind zum Beispiel diese hier:

BedeutungParameter
kein Inhaltsverzeichnis-P doc.toc.show=0
nur Tabellenverzeichnis -P doc.lot.show=table
nur Abbildungsverzeichnis -P doc.lot.show=figure
Überschriftenebene -P doc.section.depth=5
keine Versionshistorie -P latex.output.revhistory=0
blau hinterlegte Links -P latex.hyperparam=colorlinks,linkcolor=blue
als Encoding Latin1 nutzen -P latex.encoding=latin1
Papiergröße Letter -P paper.type=letterpaper
Wasserzeichen einfügen -P draft.watermark=1
Schneidemarken einfügen -P crop.marks=1

Im Aufruf sieht das dann wie folgt aus, um weder eine Revisionshistorie zu erhalten und lediglich eine Liste der Tabellen:

a2x -f pdf --dblatex-opts "-P latex.output.revhistory=0 -P doc.lot.show=table" document.adoc

Am besten legen Sie das in einem Shellskript ab. Das erleichtert nicht nur das Experimentieren mit den Parametern, sondern auch die spätere Automatisierung im Übersetzungsprozess.

Automatisierung als Shellskript
Das obige Skript erwartet einen zusätzlichen Parameter im Aufruf. Dieser beinhaltet den Namen ihres Dokuments, welches Sie nach PDF übersetzen möchten. Benennen Sie ihr Skript convert2pdf.sh und übersetzen ihr Dokument namens document.adoc, sieht der Aufruf wie folgt aus:

./convert2pdf.sh document.adoc

Das fertige PDF-Dokument liegt dann im lokalen Verzeichnis vor.

Donnerstag, 14. September 2017

Unterwegs auf der Langstrecke

Wer in Europa unterwegs ist, kommt in kurzer Zeit recht schnell voran. Trotzdem erscheint einem das recht groß. Was Distanzen wirklich bedeuten, merkt man erst, wenn sich das Flugzeug nicht mehr spürbar auf der Landkarte bewegt. Nachfolgend zwei Aufnahmen vom Flug von Istambul nach Kapstadt.

Gleich sind wir da. Noch eineinhalb Stunden.

Fast gerade runter von Istambul nach Kapstadt.

Sonntag, 10. September 2017

Standortwechsel

Eine Ära geht ihrem Ende entgegen. Seit 2009 befand sich mein Berliner Arbeitsplatz im Büro 2.0 in Neukölln. Wer den Blog verfolgt, wird gesehen haben, dass seit einiger Zeit ein anderer Kontinent verstärkt im Fokus steht. Es ist an der Zeit, die Anker dahingegehend endgültig zu lichten. Schön war's -- nun gibt's mehr Raum für Neues.

Alles im Eimer.

Dienstag, 5. September 2017

Zündelnde Katzen

Katzen sind die Herrscher des Hauses -- und spielen auch gern mal mit dem Feuer. Die zeitgemäße Variante sind Induktionsherde. Der nachfolgende Artikel aus der taz erklärt, was es damit auf sich hat.

Katzendramen am heimischen Herd

Dienstag, 18. Juli 2017

Cape Town is awesome!

Unter dem gleichnamigen Titel trägt Callie Van Graan seit mehreren Jahren die sehens- und erlebenswerten Ereignisse der Region Western Cape zusammen. Das beinhaltet nicht nur Ankündigungen und Berichte zu Veranstaltungen in und um Kapstadt, sondern auch Empfehlungen zu Essen & Trinken sowie atemberaubenden Ausflugszielen. Gestern war ich mit einem Photo Feature vertreten, bei dem zehn ausgewählte Aufnahmen von mir zu sehen sind. Alle Aufnahmen sind innerhalb der vergangenen 12 Monate entstanden.

Cape Town is awesome!

Weitere Links:

Montag, 3. Juli 2017

Mageia Linux 6 RC mit Kindersicherung

Wie bereits berichtet, finalisieren derzeit die Entwickler von Mageia ihre nächste Veröffentlichung -- die Release 6. Nach den bisherigen Tests zur urteilen läuft das Gesamtsystem ausgesprochen stabil und ist tauglich für die angepeilte Gruppe der Ein- und Umsteiger (Endbenutzer). Es ist schnörkellos, einfach zu bedienen und übersichtlich.

Geeignet ist es nicht nur für Nutzer, die (noch) keine Technikfreaks oder Linux-Profis sind, aber mehr als nur die Auswahl von Ubuntu haben wollen und sich trotzdem nicht scheuen, zu verstehen, wie das alles funktioniert und zusammenhängt.

Kindersicherung in Mageia 6

Bemerkenswert ist die integrierte Kindersicherung. Obwohl bereits in den vorherigen Veröffentlichungen enthalten, verfügt unseres Wissens nach keine andere Mainstream-Distribution über ein solches Feature.

Sie erreichen diese Einstellungsoption im Control Center unter den Netzwerkeinstellungen. Darüber legen Sie pro Benutzer fest, welche Programme und Dienste dieser verwenden und wie lange und innerhalb welcher Zeiten er bspw. im Internet surfen darf. Somit haben Sie ihren Nachwuchs und dessen Internetkonsum stets im Blick.

Sonntag, 2. Juli 2017

Südafrika durchleuchtet. Transparentes Budget dank Open Data

Jeder von uns -- ganz gleich ob Bürger oder Unternehmen -- trägt mit seinen Steuern und Abgaben zum Budget seiner Region bei. Oft fragen wir uns, was mit unserem Geld passiert, sprich: welche Ausgaben werden darüber finanziert, wie verteilt sich die Geldmenge und welche Möglichkeiten bestehen in der Zukunft. Viele Städte halten sich da bislang etwas bedeckt. Nur auf Anfrage erhalten Sie Informationen zu diesen Finanzdaten.

Glücklicherweise hat ein Umdenken begonnen und die diesbezügliche Offenheit nimmt zu. Begrffen wurde vielerorts , dass wir als Bürger wissen und mitentscheiden möchten, wie mit unserem Geld gewirtschaftet wird. Dieses Vorgehen gehört bspw. in der Schweiz seit langem zum Alltag und ist als Teil des gesellschaftlichen Miteinanders fest verankert. Das kann durchaus auch dazu führen, dass im Rahmen einer Abstimmung entschieden wird, die lokalen Steuern anzuheben, um bspw. eine neue Sporthalle zu finanzieren.

Seit mehreren Jahren geht Südafrika einen ähnlichen Weg. Das gesamte Budget vieler Städte und Regionen ist transparent. Über die Webseite municipalmoney wird dieses in allen Details aufgeschlüsselt und für einen Normalbürger verständlich visualisiert. Sie erhalten daher nicht nur nackte Zahlen, sondern Grafiken, die den aktuellen Zustand und den Verlauf passend darstellen. Grundlage dafür sind die Budgetzahlen, die hierfür zur Auswertung von den jeweiligen Gemeinden bereitgestellt werden.

Nachfolgendes Bild zeigt das für Kapstadt. Sichtbar ist hier, wie lange das verfügbare Geld noch reicht (Cash Coverage) sowie wieviel tatsächlich ausgegeben wurde (Spending of Operating Budget). Sichtbar wird hier, dass a) das Budget noch für etwa eineinhalb Monate reicht und b) in den letzten beiden Jahren weniger ausgegeben wurde, als ursprünglich geplant.


Budgetanalyse von Kapstadt
Ausgewertet werden die Daten in Kooperation zwischen der Stadtverwaltung und einem Team von Analysten, die im Inkubator namens Codebridge im Kapstädter Osten beheimatet sind. Alle zwei Wochen findet vor Ort ein Community Meeting statt, zu dem jeder Interessierte hinzukommen und sich über das Projekt und dessen Entwicklung informieren kann.

Das Logo des Codebridge-Projekts

Die Auswertung der Daten fließt vielfach als Datensatz in das Projekt Code for South Africa ein und ist somit für jedermann verfügbar. Begonnen als Projekt von Spezialisten aus dem Themengebiet Open Data auf freiwilliger Basis, sind daraus mittlerweile mehrere dauerhafte Arbeitsplätze entstanden. Möglich wurde das Dank kontinuierlicher Finanzierung durch die Stadtverwaltung.

Weiterführende Links:

Samstag, 1. Juli 2017

Co-Working Spaces: Spin Street House, Cape Town

Mitten im geschäftigen Zentrum von Kapstadt befindet sich der Co-Working Space Spin Street House (SSH). Dieser residiert in einem Gebäude, welches bereits etliche Jahrzehnte Geschichte dieser Stadt miterlebt hat. Verteilt über drei Etagen, stehen sowohl flexible, als auch fest anmietbare Arbeitsplätze zur Verfügung. Genutzt wird das Angebot derzeit von Einzelpersonen, als auch kleineren Firmen unterschiedlichster Branchen.

Flexible Arbeitsplätze in historischem Ambiente
Der Co-Working Space glänzt durch eine ausgezeichnete Internetanbindung, zentrale Lage, viel Platz zum Arbeiten Dank großer Schreibtische, Sauberkeit sowie ingesamt eine sehr angenehme Atmosphäre. Ergänzt wird das ganze durch eine große Küche, mehrere Besprechungsräume sowie einem Raum mit Sofa, falls ein Nickerchen notwendig wird. Die Kombination aus historischer Einrichtung und modernen Technologien gibt dem Haus seinen besonderen Reiz.

Mittwoch, 28. Juni 2017

Nachbrenner

Nicht nur Kaffee und Tee werden geschätzt, sondern auch gutes Essen im Allgemeinen. Dafür braucht es auch eine gute Auswahl. Möglichst frisch zubereitet, ist es dann ein Genuß. Eine dieser besonderen Anlaufpunkte ist im V&A Waterfront der Food Market. Hier bekommt der Feinschmecker alles, was er begehrt -- sei es herzhaft oder süß, fest oder flüssig.

Blick aus dem ersten Stock zu den Verkaufsständen
Neben traditioneller afrikanischer Küche stehen ebenso indische wie auch thailändische Gerichte zum Verkauf. Backwaren mit französischer Herkunft ergänzen den Speiseplan. Wer Nachtisch zum Mitnehmen sucht, sollte die leckeren Fudges von Sweet Dreams nicht auslassen. Angeboten in mehr als zehn verschiedenen Sorten zergehen die Bonbons auf der Zunge.

Fudges von Sweet Dreams

PDF-Dokumente auseinanderzupfen

Jeder von uns kennt das -- wir bekommen ein PDF-Dokument und benötigen nur eine bestimmte Seite daraus. Nachfolgend stehen zwei Möglichkeiten im Fokus, das Ziel ohne viel Tamtam zu realisieren.

Variante 1 ist Gimp. Öffnen Sie ihr PDF-Dokument mit dem Bildbearbeitungsprogramm, erhalten Sie ein Dialogfenster, aus welchem Sie die gewünschte Seite auswählen. Diese Seite speichern Sie dann über den Menüpunkt Exportieren als ... unter einem neuen Namen.

Auswahl der einzelnen Seite in Gimp
Variante 2 geht über das Werkzeug pdfseparate aus dem Paket poppler-utils. Mit dem Aufruf 

pdfseparate document.pdf page-%d.pdf

auf der Kommandozeile zerlegen Sie das Originaldokument namens document.pdf in alle Einzelseiten. Jede Seite wird als PDF mit der entsprechenden Seitennummer gespeichert, so finden Sie bspw. die Seite 1 in page-1.pdf

Benötigen Sie nur ausgewählte Seiten, kommen zwei Schalter ins Spiel. Über die beiden Schalter -f (für first) und -l (für last) grenzen Sie ein, welches die erste bzw. letzte extrahierte Seite werden soll. Hiermit erhalten Sie die nur die dritte bis fünfte Seite:

pdfseparate -f 3 -l 5 document.pdf page-%d.pdf

 

Montag, 26. Juni 2017

Tips und Tricks: Erstellte Pads in Etherpad Lite aufräumen

Möchten Sie gemeinsam an einem Textdokument arbeiten, ist das Versenden der Versionen an alle Mitwirkenden äußerst umständlich und verstopft über kurz oder lang ihr Postfach. Außerdem birgt das Vorgehen die Gefahr, dass der Überblick verloren geht, welche Version des Textdokuments gerade aktuell ist oder ein Mitwirkender bei der Zusendung vergessen wird.

An dieser Stelle kommt Etherpad Lite ins Spiel. Diese kollaborative Software ist im wesentlichen ein Texteditor, den Sie über ihren Webbrowser bedienen. Ausgestattet mit einer Versionsverwaltung geht zudem kein Zwischenschritt verloren. Jedes Textdokument bearbeiten Sie in einem Pad, welches i.d.R. auf dem Server gespeichert wird, auf dem ihre Instanz von Etherpad Lite gehostet wird.


Die einzelnen Dokumente in Etherpad Lite verwalten
Mit der Zeit sammeln sich diverse Pads an. Von hause aus bringt Etherpad Lite nur die Möglichkeit mit, Pads über die Etherpad-Lite-API und einen passenden http-Request wieder zu entfernen. Einfacher geht es hingegen mit Hilfe des Plugins adminpads. Dieses klinkt sich direkt in die Admin-Konsole des Etherpad Lite ein.

Über den Menüpunkt Manage pads in der Navigation erreichen Sie alle Pads auf einen Blick und erfahren deren Status. Das hilft Ihnen dabei, herauszufinden, wie lange ein Pad bereits besteht, wieviele aktive Bearbeiter es derzeit hat und wann dessen Inhalt zuletzt modifiziert wurde. Wird es nicht mehr benötigt, entsorgen Sie es samt Historie mit einem beherzten Klick auf den dazugehörigen Löschknopf. Voila!

Einen Überblick zu weiterer Software aus dieser Kategorie bietet der lesenswerte Blogbeitrag von Jens Kubieziel.

Freitag, 23. Juni 2017

Herzlichen Glückwunsch, Workshop17!

2 Jahre Workshop17
Heute war es soweit -- der Coworking Space Workshop17 feierte sein zweijähriges Bestehen. Herzlichen Glückwunsch!

Beheimatet im Watershed -- einer ehemaligen Bootshalle im Hafen von Kapstadt -- bietet es eine luftige, offene Atmosphäre für die Kreativwirtschaft, Startups und Unternehmer aus der IT-Welt. Neben Einzelarbeitsplätzen, die spontan von jedem Interessenten genutzt werden können, stehen auch dauerhaft anmietbare Schreibtische zur Verfügung.

Emsiges Werkeln in offener Atmosphäre


Während im Erdgeschoß des Gebäudes vielfältige, afrikanische Kunst verkauft wird, dominieren im 1. Stock Laptops und in ihr Tun vertiefte, digitale Helden aus aller Welt. Ein Kontrast, wie er zu Afrika passt und die Gegensätzlichkeit des Kontinents sehr deutlich zeigt.

Donnerstag, 15. Juni 2017

Umweltdaten messen mit einem Feinstaubsensor

Am 25. Mai 2017 fand auf dem Areal des Kulturzentrums Freiland e.V. im Zentrum von Potsdam der diesjährige OpenTechSummit statt. Eine überschaubare, sehr relaxte Veranstaltung mit internationalem Flair, bei der nicht nur Gäste aus Europa teilnahmen.

Stolz den Feinstaubsensor begutachten
Auf großes Interesse traf ein Sensor zur Messung von Feinstaub. Diesen Sensor stellte Frank Riedel vom Projekt luftdaten.info vor. Als Bausatz für den Außeneinsatz konzipiert, setzen Sie diesen in zehn Schritten zusammen, verbinden ihn mit dem Internet und das Erfassen der Daten beginnt. Alle Daten werden gesammelt und sind am Folgetag sichtbar.

Ursprünglich nur für den Großraum Stuttgart gedacht, nutzen diesen inzwischen auch andere Interessenten. Über eine interaktive Karte auf der Basis von OpenStreetMap sehen Sie, welche Werte der Sensor seit dessen Inbetriebnahme an dem jeweiligen Standort gemessen hat.

Erfasste Messwerte für einen ausgewählten Sensor

Donnerstag, 8. Juni 2017

Mageia Linux 6 RC

Control Center im Mageia 6 (XFCE-Design)
Stets im Sommer erscheint eine neue Version der französischen Linux-Distribution Mageia. 2010 geforkt vom Mandriva-Projekt, hat sich die Distribution mittlerweile einen guten Ruf erarbeitet. Der erste Test des RC für die Version 6 war sehr positiv. Mehr dazu in Kürze.

Dienstag, 30. Mai 2017

Cubietruck im Alltagsbetrieb

Cubieboard 3 (Cubietruck) im Test
Vor über einem Jahr liefen mehrere Tests mit dem Cubieboard 3 (Cubietruck) sehr erfolgreich. Seitdem war das Board vorrangig als Fileserver auf der Basis des Debian-Derivats Armbian für Schulungszwecke im Einsatz. Bei meinen Linux-Trainings ließ sich leistungsstarke Board zum Mitbringen immer wieder gut in Szene setzen.

Inzwischen bekam das Board ein mattschwarzes Gehäuse, was es gegen Staub schützt und zudem auch leichter transportabel macht. Es bleibt darin genügend Platz für eine 2.5"-Festplatte, die das Leistungsspektrum des Cubietruck nochmal steigert.

Gehäuse für das Cubietruck
Ordentlich bedruckt macht das Gehäuse einen professionellen Eindruck und ist somit auch endkundentauglich. Die Reaktionen darauf waren bislang nur positiv.

Das Gehäuse mit den sauber ausgeführten Anschlüssen
Derzeit entsteht in Zusammenarbeit mit dem Berliner Kooperationspartner Zugangswerk e.V. ein Prototyp für eine Aufzeichnungssoftware, die auf dem Cubieboard aufsetzt. Grundlage dafür bildet wiederum ein Etherpad Lite, welches auf die speziellen Bedürfnisse von den Nutzern -- hier Dolmetschern -- angepaßt wird. Jetzt stehen intensive Tests an, um noch störende Bugs zu beseitigen.

Sonntag, 28. Mai 2017

Analyse der Ausführungszeit eines Kommandos in der bash

Für diesen Anwendungsfall -- das Messen der Ausführungszeit eines Programms -- existiert das UNIX-Kommando time. Es ermittelt diese drei Werte:
  • real: die gesamte, tatsächliche Ausführungszeit (elapsed real time)
  • user: die Zeit, in der die CPU tatsächlich den (User-)Code des Programms ausführt (Total number of CPU-seconds that the process spent in user mode)
  • sys: jene Zeit, in der die CPU mit Ausführung von Kernel-Code für das Programm beschäftigt ist (Total number of CPU-seconds that the process spent in kernel mode) 

Beispiel 1

Um die Zeit zu ermitteln, rufen Sie time vor ihrem eigentlichen Kommando auf:

$ time find . -user frank
...
real   0m3.681s
user   0m0.248s
sys    0m0.916s
$

Das Beispiel ermittelt alle Dateien, die dem Benutzer frank gehören. time rechnet aus, dass find dafür 3.6s benötigt.

Skripting in der Praxis

Spannender wird die Zeitmessung, wenn mehrere Kommandos zusammenspielen, bspw. in einem Shellskript. Nachfolgend geht es darum, die User ID und den dazugehörigen Namen des UNIX-Nutzers zu ermitteln, der ein Skript gerade aufruft. Variante 1 greift auf interne Variablen und das Kommando whoami zurück:

#!/bin/bash
userId=$UID
userName=$(whoami)
echo "the script runs as user $userName with UNIX id $userId"

Variante 2 nutzt stattdessen grep und cut:

#!/bin/bash
userId=$UID 
userName=$(grep ":$UID:" /etc/passwd | cut -d: -f 1)
echo "the script runs as user $userName with UNIX id $userId"

In Variante 3 kommen grep und awk zum Einsatz:

#!/bin/bash
userId=$UID
userName=$(grep ":$UID:" /etc/passwd | awk -F : '{ print $1 }')
echo "the script runs as user $userName with UNIX id $userId"

Für Puristen ist die Variante 4 -- diese nutzt ausschließlich awk:

#!/bin/bash
userId=$UID
userName=$(awk -F : '/:'$userId':/ { print $1 }' /etc/passwd)
echo "the script runs as user $userName with UNIX id $userId"

Das das auch mit einer Skriptsprache wie Perl geht, zeigt das Variante 5:

#!/usr/bin/perl -w
$username=$ENV{'LOGNAME'};

# read /etc/passwd
open(FH, "/etc/passwd") || die "Cannot open /etc/passwd: $!";
{
  while(<FH>) {
    # look for the user name
    if (m/^${username}:/) {
      @fields=split(/:/, $_); 
 
      # extract user id
      $uid=$fields[2];
      print "the script runs as user $username with UNIX id $uid\n";
     }
   }
}
close(FH);

Auswertung der Laufzeit

Nun wird es spannend, welche der fünf Varianten am flinkesten ist. Rufen Sie die Konstrukte alle einzeln auf, liefert time bei allen einen Wert von etwa 1s. Um die Unterschiede deutlicher sichtbar werden zu lassen, bauen wir eine Schleife drumherum und lassen das ganze 10000 Mal durchlaufen:

#!/bin/bash
# define loops
loops=10000

time {
  for((i=$loops; i>0; i--))
  do
    userId=$UID
    userName=$(whoami)
    echo "the script runs as user $userName with UNIX id $userId"
  done
} | grep "real"

Analog erfolgt das auch für die Varianten 2 bis 5. Folgendes Ergebnis wird sichtbar:

Variante Ausführungszeit
Variante 1 mit whoami 8.25s
Variante 2 mit grep und cut 11.03s
Variante 3 mit grep und awk 17.1s
Variante 4 nur mit awk 13.9s
Variante 5 mit Perl 15.22s

Fazit

Eindeutiger Gewinner ist Variante 1, gefolgt Variante 2 und Variante 4. Es hilft also doch, bei der Programmierung stets die Laufzeit im Blick zu behalten.

Links

Samstag, 27. Mai 2017

Beweiszettel. Linux-Zertifizierungen kurz angerissen

Bücher zur Vorbereitung -- eine kleine Auswahl.
Beschäftigen Sie sich mit dem freien Betriebssystem Linux, rutschen Sie heute vielfach noch in die Kategorie der Exoten. Dabei ist Linux inzwischen ein Vierteljahrhundert alt und gehört in der IT-Welt zum Alltag. Damit werden nicht nur vereinzelte Endgeräte betrieben, sondern komplette Rechenzentren gefüllt.

Mit Linux nur zu arbeiten, ist das eine. Hingegen mehr davon zu verstehen und es auch produktiv nutzen zu können, das andere. Ein guter Weg, nachzuweisen, dass Sie mehr als nur der Oberflächenklicker sind, ist ein Zertifikat. Dieses steht dann für eine oder mehrere Prüfungen.

Grundsätzlich sortieren sich die Zertifizerungen in zwei Klassen ein -- distributionsübergreifend und distributionsspezifisch. Als Anbieter umfaßt das auf der einen Seite das Linux Professional Instititute (LPI), die Linux Foundation und die Computing Technology Industry Association (CompTIA). Auf der anderen Seite stehen die Hersteller bzw. Distributoren RedHat und SuSe.

Diese Prüfungen für Zertifikate werden derzeit angeboten:

Form Anbieter/Programm Zertifikat (Auswahl)
distributionsübergreifend LPI, Linux Foundation, CompTIA
distributionsspezifisch RedHat, SuSe
Aufgrund der längeren Marktpräsenz gelten die LPIC-Zertifikate als etabliert und werden bspw. auch durch die Bundesagentur für Arbeit öffentlich gefördert.
Weitaus seltener unterstützt werden RHCE/RHCSA sowie die SUSE-Prüfungen, nicht zuletzt weil sie herstellerspezifisch sind.

Im Prinzip erst seit 2017 am deutschen Markt vertreten und daher noch nicht so bekannt in Deutschland sind die Abschlüsse der Linux Foundation. Neben einem ansehnlichen Angebotsumfang kann es mit zwei großen Namen auftrumpfen -- Linus Torvalds und Microsoft. CompTIA ist zwar ebenfalls schon lange in Deutschland vertreten, tritt aber weniger als Linux-Spezialist auf.

Montag, 8. Mai 2017

Gesucht und Gefunden

Recherche im Baumhaus Berlin
Neben einer sehr angenehmen Atmosphäre hat das Baumhaus Berlin eine sehr originelle Form für eine Pinnwand - Schnüre und Wäscheklammern. Ein Blick darauf lohnt sich ebenso :)

Auf einen Blick sehen, wo was los ist

Freitag, 5. Mai 2017

Die Mäuse kommen

11+4 Mäuse
Alle sind für einen guten Zweck. 15 Mäuse unterstützen soziale Projekte.

Montag, 1. Mai 2017

Training Linux/Programmierung mit der bash in Hamburg 6.+7. Juni 2017

Diese bash -- immer muss ich da so viel eintippen! Wenn das nicht alles irgendwie einfacher gehen würde. Aber das geht tatsächlich und Sie können das auch erlernen. Aber es ist eine ganze Menge an Stoff.

Hier findet der nächste Kurs statt -- es gibt noch freie Plätze:

dama.go Hamburg, Süderstraße 77, 20097 Hamburg
Dienstag, den 6. und Mittwoch, den 7. Juni 2017
9h00-16h30

Kontakt und Anmeldung zum bash-Kurs:
Stefanie Johannsen Cömert
Telefon: (040) 254 133 950

Und das steht bisher als Themen auf dem Plan:

  • Die bash im Detail
  • Die bash als Programmiersprache
  • Praktische Shellskripte
  • Interaktive Shellskripte
  • Der Stromeditor sed
  • Die Programmiersprache awk

Die Schulung findet auf einem Debian GNU/Linux statt.