Tag 179/2016: Workshop Soziale Medien im Unternehmen

Auf Einladung des Bayerischen IT-Logistikclusters durfte ich heute in der TechBase Regensburg zum Thema Social-Media im Unternehmen referieren. Welchen Nutzen können technologieorientierte Unternehmen unter Marketing-Gesichtspunkten aus Social-Media-Plattformen ziehen?

Die Anwesenden nutzten überwiegend Facebook, Google+, Twitter, Xing. Ich habe versucht, den Bogen von den „passiven Basics“ auf der eigenen Homepage über die Chancen auf den Plattformen zu spannen, z.B. im Bereich Vertrieb, Human Resources oder Forschung; dazu ein kurzer Hinweis auf Social-Media-Tools zum Monitoring & Management.

Das Feedback nach knapp 1 Stunde + Q&A war positiv, ich hoffe, dass alle Unternehmerinnen und Unternehmer Lust auf eigene Kampagnen, Experimente und Projekte bekommen haben!

Blick auf das die TechBase Regensburg das Innovationszentrum von der Bushaltestelle gegenüber. Man sieht viele Wolken, denn der April macht was er will.

Tag 178/2016: Jeden Tag eine gute Tat – heute für Joey Kelly

Sonntag, traditioneller Tag für ein hartes und intensives Workout, da kann man in der Boomtown Regensburg in einem der Parks schon mal auf andere Sportler treffen.

Heute also am Oberen Wöhrd auf Joey Kelly getroffen. Joey Kelly, das wissen wir Finisher ja, hat Marathons, Ultra-Marathons, Ironmans, Wüsten-Ultra-Läufe, Powermans, Races-Across-America, uvm. erfolgreich hinter sich gebracht.

Was viele aber nicht wissen, ist, dass er auch eine musikalische Vergangenheit hat. Als Mitglied der Kelly Family hat er auch auf der ein oder anderen Bühne gestanden. Na, aus dieser Zeit hat er noch ein paar Compact Discs rumliegen, die er nicht los wird. Hey, da muss man ihm doch helfen, also hab ich mir eine geben lassen. Wenns hilft, dass sein Keller leerer wird, hab ich mir gedacht.

Ansonsten waren am Oberen Wöhrd noch ein paar Leute mehr, alle sehr engagiert und trainiert. Super Sache.

Joey-Kelly-Lauf-Regensburg - 3

Eine Attraktion auch der Bananenstand:

Joey-Kelly-Lauf-Regensburg - 1

Ein tolles Rezept, das ich mir gleich notiert habe.

Tag 177/2016: Achso

Entschuldigung, dass ich schon wieder das Wetter erwähne. So als wäre das hier ein Kennenlernblog. Aber gerade trifft mich die Erkenntnis wie ein Blitzschlag: Das Icon aus meiner Wetterberichtsapp, das ich immer für die Darstellung von Regentropfen hielt, wo es doch nie regnete wenn es angezeigt wurde, meint eigentlich „Schweißtropfen“.

Folgerichtig ist bei der Niederschlagsmenge die Sekretion pro Quadratmillimeter gemeint.

Gibt also keinen Grund, am Wetterbericht herumzumäkeln.

Tag 176/2016: Die Sonne ist so weit weg

…aber mir ist trotzdem heiß“.

Das war mal ein Spruch von irgendeinem Comedian auf MTV, betont unlustig, damit keiner lacht. Was auch geschah. Und weil man sich unlustige Sachen gut merken kann, erinnere ich mich daran in unschöner Regelmäßigkeit, vor allem bei Wetter wie diesem heute.

Auf dem Arbeitscomputer hätte man irgendwann ein Spiegelei braten können und meinem Freund, dem Infoscreen, wars auch zu heiß (Aufmacherbild oben). Damit hat er wieder eine neue Facette von sich gezeigt, die anderen beiden Male gab er sich ja betont zurückhaltend:

Der Hitzespuk ist aber schon wieder vorbei, die kommenden Tage wird das Wetter wieder besser. Glück auf!

Tag 175/2016: Tests

Ah, Codeception. Ein Projekt zum Testen von (PHP-)Anwendungen, Frameworks, APIs. Der Spruch „Write and execute a test for an existing app in less than 5 minutes“ stimmt tatsächlich.

Das PHAR Archiv ist schnell geladen, die Teststruktur mit codecept bootstrap gleich initialisiert und die Methodennamen für die Tests sind sofort verständlich.

Aus dem Quickstart-Beispiel:

$I->amOnPage('/');  ⇒ I am on page '/'
$I->click('Enter'); ⇒ I click 'Enter'
$I->see('Welcome'); ⇒ I see 'Welcome

Man kommt schon recht weit mit dem integrierten PHP-Browser, für komplexere Sachen mit Javascript-Erfordernis kann via Selenium Webdriver, PhantomJS u.a. eigentlich jede beliebige Konstellation getestet werden.

Ist das zu testende Projekt per BASIC-AUTH geschützt? Braucht es spezielle Cookies für den Zugriff? Muss z.B. in der Datenbank eine bestimmte Ausgangssituation wiederhergestellt werden? Kann alles in der via bootstrap angelegten Konfiguration hinterlegt werden. Natürlich können auch Screenshots gemacht werden, was im Fehlerfall sehr hilfreich ist.

Weil das Erstellen der Tests wirklich unkompliziert ist, sollte jeder, der es noch nicht kennt, unbedingt mal einen Blick drauf werfen.

Tag 174/2016: Nix passiert

aufstehen, frühstücken, kaffee, fahrradfahren, meeting, wasser, kaffee, programmieren, kaffee, neue liquify-features in photoshop cc ausprobieren, wasser, telefonkonferenz, mittagessen, koffeinbritzelwasser, jemand hält mir die tür auf + ich bedanke mich, telefonkonferenz, wasser, programmieren, kaffee, fahrradfahren, jede rote ampel mitnehmen, paket abgeben, fahrradfahren, abendessen.

lächeln, lachen, lesen.

Tag 173/2016: Lächeln

Sagt Wikipedia:

Lächeln bewirkt angeblich nicht nur eine Veränderung des Gesichtausdrucks, sondern führt auch dazu, dass das Gehirn Endorphine produziert, die körperliche und seelische Schmerzen verringern und das Wohlbefinden steigern. Einem Lächeln kann sich kaum jemand entziehen, wenn das Lächeln ehrlich ist. Ein Lächeln ist ansteckend und somit ein Weg Fröhlichkeit und Wohlbefinden zu übertragen.

Deine Aufgabe heute: Einfach lächeln. Jetzt.

 

Tag 172/2016: Indianerspiele und der Mittelsmann

Viele Blogs und Content-Management-Systeme sind ziemlich mit dem Apache-Webserver verheiratet, insbesondere machen sie reichlich Gebrauch von den verfügbaren Apache-Modulen (rewrite, setenvif, expires, auth_basic, deflate, unique_id uvm).

Eingebürgert hat sich, dass die Einstellungen in dezentrale Konfigurationsdateien geschrieben werden, bei Apache in der Voreinstellung als .htaccess definiert (veränderbar mit der AccessFileName-Direktive). Manche Plugins passen die .htaccess-Dateien sogar sehr häufig an, beispielsweise um IP-Adressen zu blockieren oder durchzulassen.

Der Aufbau der .htaccess-Datei ist dabei leicht verständlich, da von oben nach unten zu lesen. Eine kurze if-Abfrage ob das entsprechende Modul vorhanden ist, danach die spezifischen Anweisungen. Hin und wieder gibt es vielleicht Konfigurationsfehler mit unschönen HTTP-Statuscode-500 „Internal Server Error“ Meldungen, weil die AllowOverride-Direktive in der Hauptkonfigurationsdatei eine spezifische Einstellung nicht erlaubt – aber im großen und ganzen hat sich das Schema bewährt (wenn auch nicht unbedingt unter dem Gesichtspunkt der Performance).

Seit einiger Zeit wird nun der Webserver nginx immer beliebter und dieser kennt keine dezentralen zur Laufzeit gelesenen Konfigurationsdateien. Vor allem die CMS‘, die stark auf mod_rewrite setzen und eine Menge Umleitungsregeln definiert haben, können oft nicht so schnell migriert werden.

Für PHP-Anwendungen mit großer mod_rewrite-etc.-Abhängigkeit, die aber trotzdem gut performen sollen, habe ich ein Setup mit nginx + Microcaching + Request-Limits, Apache mit mod_event (statt prefork) + mod_proxy/fcgi + PHP-FPM ausprobiert. Da gibt es zahlreiche Stellschrauben für die Performance; Hauptvorteil ist, dass die Ressourcen explizit definiert sind und eigentlich kaum der Fall eintritt, dass die Maschine 100% Last erreicht. Allerdings bin ich zu Beginn gleich in eine Situation geraten, in der ein CMS nicht mit PHP 7 lauffähig war, die ältere (distributionseigene) PHP-Version aber noch nicht den fastcgi-Patch hatte, der die besondere Art der sprechenden Pfade des CMS erlaubt hätte. So ist das Leben.

Trotzdem: Der Mittelsmann, hier Apache mit mod_event, soll auch noch weg. Eher früher als später. Glücklicherweise beginnen mehr und mehr Projekte, Profile für nginx zu entwickeln. Manche Anweisungen in liebgewonnenen oder unbedingt notwendigen Plugins lassen sich mit geübtem Auge auch selbst umschreiben. Dass nicht mehr die Reihenfolge, sondern die Spezifität der Anweisung entscheidend für die Ausführung ist, kann durchaus in unüberschaubare Situationen führen. Gute Kommentare oder auch Tests können da Abhilfe schaffen.

Ich baue gerade ein kleines Ansible-Playbook, in dem Apache nicht mehr vorkommt und nginx via fastcgi direkt mit PHP-FPM kommuniziert. Neben der Performance auch ein Gewinn an Übersichtlichkeit und einem Prozess weniger, dessen Ressourcen man messen, schätzen und anpassen muss.

Tag 171/2016: Das Leben ist schön

Sagt Wikipedia:

Beim Wurstlotten oder Eierlotten in Teilen des Bergischen Landes werden zur Grünkohlsaison Mettwürstchen und in der Zeit vor Ostern Eier nach den Bingoregeln verlost.

Steht im Artikel über Bingo. Ein bisschen gegoogelt, ob das wirklich stimmt. Zumindest gibt es eine Ronsdorfer Wochenschau, dort steht z.B. in der Novemberchronik 2012 „Wurstlotten auf dem Heidt“.

Aber: Stand 19. Juni 2016 führt die Suche nach „Wurstlotten“ oder „Eierlotten“ auf YouTube noch zu keinem Ergebnis.

Das macht nachdenklich.

Tag 170/2016: Wolbergs und Schlegl

Soll niemand sagen, das viele Geld, das von SPD und CSU im Wahlkampf 2014 in die heimische, österreichische, darmstädtische und sonstige Wirtschaft investiert wurde, hätte keinen bleibenden Wert!

Der formschöne, Millionen Menschen bekannte und gut in der Hand liegende Senator-Kugelschreiber ist mit motivierenden Sprüchen bedruckt wie „Wolbergs macht’s!“ und „er kniet sich rein!“.

Auch der blau-grün gestaltete nützliche Schreibblock wartet mit Hinweisen wie „Christian Schlegl, DER KANN’S“ auf.

Beide Produkte zeichnen sich durch lange Haltbarkeit aus und können im Alltag vielseitig verwendet werden; immerhin war die Oberbürgermeister- und Stadtradswahl ja schon vor über 2 Jahren.

Trotzdem, ein Vorschlag zur Kostenminimierung:

Wenn jetzt die Wahlkampfspender transparent gemacht werden sollen, gäbe es bestimmt noch ein paar Kugelschreiber und Schreibblöcke, auf die man die Namen schreiben könnte.