Direkt zum Hauptbereich

Posts

Es werden Posts vom 2018 angezeigt.

Ohne Wenn und Aber

Der Statistik nach scheint "Code Retreat: Keine If-Ausdrücke" der am häufigsten gelesene Artikel dieses Blogs zu sein (Wie geht das, bei nur zwei Lesern?). Dabei enthält der Artikel nur ein unsinniges Anti-Pattern und ist damit nicht sehr hilfreich.

In diesem Artikel möchte ich deswegen etwas nützlichere Informationen geben. Ich wechsle dabei in den Beispielen zwischen C#- und Python-Code hin und her :-)

Natürlich sind bedingte Verzweigungen (if, switch, ?-Operator) nicht an sich schlecht. Allerdings kann es Alternativen zu ihrer Verwendung geben, die den Code übersichtlicher und verständlicher machen. Ob das in einem konkreten Fall wirklich so ist, muss dann situativ entschieden werden.
Fall 1: Desine decision vs. Runtime decision Einige Ifs können manchmal schon entfernt werden, weil sich herausstellt, dass die Fallunterscheidungsinformationen bereits zur Zeit der Programmierung und nicht erst zur Laufzeit zur Verfügung steht.

Mit If:
File Open(string path, string accessT…

In der Weihnachtsbäckerei

Letztes Wochenende haben wir unsere erste Charge Weihnachtsplätzchen in Angriff genommen.

Das erste Bild zeigt das Ergebnis und das zweite Bild den Weg dorthin.

Kein Adventskalender

In der Adventszeit bieten einige kommerzielle Seiten und auch private Blogs einen Online-Adventskalender an.

Ähnlich wie ich vor Halloween oft darüber nachdenke ein Gruselhaus zu gestalten, kommt mit auch vor Weihnachten immer Mal wieder in den Sinn, jeden Tag ein Kalendertürchen auf diesem Blog zu öffnen.

Auch dieses Jahr ist es nur bei der Idee geblieben. Was soll ich 24 Tage hintereinander veröffentlichen?

Jeden Tag ein weihnachtliches Bild? Oder ein Gedicht? Eine Fortsetzungsgeschichte? Vierundzwanzig Weihnachtslieder von YouTube?

Nachdem ich letztes Jahr meine 500-Lines-Challenge begann, überkam mich kurz der Größenwahn und ich dachte tatsächlich daran 24 Arcade-Klassiker runterprogrammierbare (innerhalb eines Monats) und dann jeden Adventstag ein solches Javascript-Spiel zu präsentieren.

Ich kam aber bereits wieder zur Vernunft, bevor ich auch nur mit dem zweiten Spiel anfing.

Aber mit langer Vorausplanung und im Team?

Wenn meine beiden programmiergestählten Leser mitmachen wür…

Bloggeburtstag

Heute vor zehn Jahren habe ich meinen ersten Post in diesem Blog veröffentlicht.

Ich hatte den Blog eröffnet, da Steinchen mir vorschlug, statt immer nur ihn mit E-Mails zu nerven, meine Tiraden auch auf andere loszulassen.

Entsprechend ging es in den Artikeln der ersten 4 Jahre überwiegend um Ökonomie und Politik. Erst dann gab es einen Artikel zu einem IT-Thema.

Schaut man sich die Statistik an, sieht man, dass ich einigermaßen motiviert startete, dann jedoch langsam nachließ. In diesen ersten vier Jahren veröffentlichte ich durchschnittlich etwa alle 22 Tage einen Artikel.

Dann kam mit 2013 mein produktivstes Jahr: Durchschnittlich fast alle 11 Tage schrieb ich einen Post. Neben Ökonomie und Politik fanden nun auch die Themen Programmierung, Studium und Kinder Beachtung. Diese Phase endete im April 2014.

Erst im Sommer 2016 schrieb ich den nächsten Artikel und veröffentlichte seit dem - bis zum April diesen Jahres - nur etwa alle drei Monate einen weiteren.

Und dann?

Dann kaufte ic…

Ach!

Da heißt mein Blog nun schon "Des Pudels Kern", aber ich habe noch gar keinen Bezug zu Faust gebracht. Das soll sich mit dieser Lesung ändern.

Erster Schnee

Gestern fiel bei uns der erste Schnee. Jetzt beginnt also wieder die schöne Zeit des Schneeschippens, Autofensterfreikratzens und Nicht-mehr-über-den-Berg-kommens. Yippie!


Eisen im Garten

Waffenkammer

Ich dachte echt, wir hätten mehr Spielzeugwaffen. Zumindestens eine Keule und ein Schwert müssten noch irgendwo rumliegen.

Wir haben ja noch nicht einmal Schusswaffenattrappen. Was ist denn das für ein Haushalt?!

Ich denke, zwei Prozent unseres Einkommens sollten wir für Spielzeugwaffen (oder Waffenspielzeug?) ausgeben.

Wie würden wir sonst nächstes Jahr dastehen? Noch so ein Jahrhundertsommer und keine Wasserpistole im Haus!

Und auch an der Modernität unseres Waffenarsenals muss gearbeitet werden. Ich meine: Keulen und Schwerter?! Wann und wo leben wir denn?

Ich würde da gerne mindestens eine Drohne in unserer Ausstattung sehen.

Unsere Kinder müssen schließlich vorbereitet sein, wenn wir mal wieder Besuch aus dem Osten bekommen.

Alles Neu macht der November

Ich habe Sebastians Kommentar gleich zum Anlass genommen, das Blog-Design zu ändern. Blogger stellt mir etwa elf verschiedene Varianten zur Verfügung und das hier kam meinen Vorstellungen am nächsten.

Ein bisschen stört mich, dass das neue Layout nur mit Javascript funktioniert, was Nutzer, die Javascript voreingestellt abgeschaltet haben - so wie ich - etwas behindert. Aber so ist wohl der Lauf der Zeit, auch wenn ich nicht glaube, dass sich dieses "Internet" langfristig durchsetzen wird.

Kurz spielte ich auch mit dem Gedanken, die Gelegenheit zu nutzen, und den Blog komplett auf z.B. WordPress umzuziehen. Aber abgesehen von dem initialem Aufwand des Aufsetzens, Einrichtens und Überspielens der Daten, bin ich ja dann auch für die dauerhafte Administration verantwortlich.

Also bleibe ich wohl vorerst bei Tante Google. Prinzipiell kann ich das dahinterstehende HTML/CSS ja auch anpassen.

Kritik am Design ist willkommen.

Activity sampling

Wenn ich in den letzten Jahren Schülerpraktikanten betreut habe, ließ ich diese immer einen "Activity Tracker" entwickeln. Damit sie in den anderthalb bis zwei Wochen einen wirklichen Einblick in den Arbeitsalltag bekommen, habe ich ihnen am Anfang immer eine Einführung in den Softwareentwicklungsprozess gegeben, den sie dann so auch nachvollziehen mussten: Analyse, Design, Implementierung, Test, Wartung - das klassische Wasserfallmodell eben (Softwareentwicklung ist nicht nur Programmierung).

Ich hoffe, ich konnte ihnen auch das zu bearbeitende Problem so erläutern, dass sie die Motivation dahinter verstanden und damit die Aufgabenstellung als sinnvoll empfanden und nicht nur als Beschäftigungstherapie begriffen:

Ich erklärte ihnen, dass wir oft mehrere Projekte parallel bearbeiten und auch innerhalb eines Projekts verschiedene Tätigkeiten ausführten (siehe die verschiedenen Phasen oben) und dass wir diese Tätigkeiten zur Nachverfolgung, der Kostenermittlung und für später…

Jasper - Kids der 1990er (Viva la 90er)

Ok, ein Kid der 90er bin ich dem Song nach wohl eher nicht, sondern eher ein Teen, was ich daran merke, dass ich mit einigen Dingen die erwähnt werden, nicht unbedingt etwas anfangen kann.

Egal, gefallen tut mir das Lied trotzdem.


Happy Halloween

Diesen Kürbis hat meine Frau letztes Jahr zu Halloween geschnitzt. Ich möchte vor allem auf die Zunge hinweisen, die sich des auslaufenden Naseninhalts annimmt.

Dieses Jahr haben wir leider keinen Halloween-Kürbis mehr bekommen. Das heißt, nicht nur die Dekoration fällt aus, sondern auch die Kürbissuppe.

Vor zwei und drei Jahren mussten wir noch mit den beiden älteren Kindern um die Häuser ziehen und die Nachbarn belästigen. Das war schon peinlich, da vor allem ältere Generation Halloween nicht kennen, und der ganze "Süßes oder Saures"-Vorgang für mich schon sehr nah an krimineller Nötigung war. Einige haben dann wirklich ihre letzten Reserven rausgekramt und eine Tafel Schokolade für die ganze Kindergruppe herausgeben mit einem "Entschuldigung, aber wir haben leider nicht mehr."

Deswegen haben wir diese Plünderungen letztes Jahr ausfallen lassen, uns stattdessen mit Süßigkeitenbergen eingedeckt und auf die Räuberbanden gewartet - die aber nicht kamen.

Ich überleg…

Organspende

Zur Zeit ist die Widerspruchslösung für Organspenden in der Diskussion.

Für Liberale ist die Gegnerschaft zu diesem Vorschlag logisch: Nur der Mensch selbst darf über seinen Körper bestimmen. Eine Organspendepflicht, auch wenn sie mit einer Ausstiegsmöglichkeit verbunden ist, würde die Beweispflicht verschieben. Statt dass, wie heute, der Nachweis erbracht werden muss, dass eine Einwilligung vorliegt, müsste bei einer Widerspruchslösung der Nachweis der Ablehnung erfolgen.

Für sogenannte Libertäre geht die körperliche Autonomie sogar so weit, dass der Staat die Bürger weder zur Organabgabe verpflichten, noch sie vom Verkauf der eigenen Organe abhalten darf.

Ein Horrorszenario für die meisten Menschen; würde dies doch letztlich dazu führen, dass die Armen zu Ersatzteillagern der Reichen würden. Eine Befürchtung, die ich teile. Jedoch steht diese Position aktuell auch nicht zur Debatte.

Doch kehren wir zurück zur aktuellen Auseinandersetzung und der Position der Befürworter der Widerspr…

Judith Holofernes feat. Maeckes - Analogpunk 2.0

Hier mal etwas Retro. Die meisten werden es schon kennen und sich sagen: "Damit kommt der erst jetzt?"

Ja eben!

Kosten von Bad Code

Laut einer Studie (hier das englischen Original) des Bezahldienstleisters Stripe, gehen 42 Prozent der Arbeitszeit eines Entwicklers für die Beschäftigung mit technischen Schulden und "Bad Code" drauf.

Ich habe das gerade erst wieder Freitag selbst erlebt. Ich habe den ganzen Tag mit der Erweiterung eines von mir entwickelten Skripts zugebracht, welches ich schon länger nicht mehr "angefasst" hatte (was ein gutes Zeichen ist, denn es ist in der ganzen Abteilung fast täglich im Einsatz und die Bugs halten sich demnach in Grenzen :-)).

Allerdings waren mir dadurch die Feinheiten der API nicht mehr so ganz präsent, so dass ich nach einigen Stunden plötzlich in einen Fehler lief (beim manuellen Testen. Selbstverständlich gab es keine ständig ausführbaren, voneinander unabhängigen automatischen Tests).

Also debugged (mittels "print") und irgendwann schlug dann die Erkenntnis zu: Stimmt ja, dieser Befehl führt den Code ja verzögert aus. Variablen die darüber d…

Kettenbrief

Ich habe gestern einen dieser ominösen Kettenbriefe bekommen und natürlich gleich weitergeschickt.

Allerdings ist schon angekündigt worden, dass in den nächsten Wochen noch weitere dieser Briefe kommen werden.

Tscha, die Vergangenheit holt einen irgendwann ein...

Ich werde mich wohl noch ordentlich mit Briefmarken eindecken müssen.

Einkaufswagenchips

Es empfiehlt sich immer genug Einkaufwagenchips dabei zu haben, wenn man gezwungen ist, mit der gesamten Bagage einen Supermarkt aufzusuchen.

Da jeder der Rabauken seinen eigenen Kindereinkaufswagen haben will, braucht man natürlich keinen eigen mehr, um die Einkäufe zu verstauen. Ja, ein eigener Wagen wäre sogar eher hinderlich, wenn man verhindern will, dass das Jüngste gerade mit Anlauf ins Spirituoseregal reindonnert.

Sollten sich wieder erwarten alle drei Knalltüten freiwillig in unmittelbar Nähe aufhalten und davon absehen jeweils getrennt die Gänge des Marktes zu vermessen, muss darauf geachtet werden, die Waren gerecht auf die Spediteure zu verteilen.

Es ist weiter daran zu denken, dem kleinsten der Helferlein eher robuste Güter anzuvertrauen. Mögen die Eier selbst unbeschadet im Wage landen, so kann bald darauf die nächste Konservendose, aus nicht zu tolerierender Höhe allein der Schwerkraft überlassend, auf erstgenannte herabgesenkt werden.

Am Ende des fröhlichen Familienau…

Online-Lebensmitteleinkauf

Da wir in letzter Zeit nicht zum Einkaufen kamen, haben wir jetzt schon ein paar Mal den Abholservice des nahegelegenen Supermarkts genutzt.

Man wählt die Waren online aus, fährt beim Markt vor, bezahlt und bekommt die Kisten in die Hand gedrückt. Nur noch liefern wäre bequemer, aber der Dienst wird hier noch nicht angeboten.

Manchmal sind die Angaben auf der Bestellseite jedoch etwas irreführend. So war z.B. eine Zwiebel abgebildet und die Einheit lautete "Stück". Ich packte demnach also 3 Zwiebeln in den Einkaufswagen.

Zuhause beim Auspacken stellten wir dann fest, dass ich 3 Netze voll Zwiebeln gekauft hatte.

Ja nun. Kennt jemand Zwiebelgerichte?

Test vom Smartphone

Mit diesem Post möchte ich testen, wie komfortabel ich Blogeinträge vom Smartphone aus schreiben kann. Die Autovervollständigung funktioniert schon einmal sehr gut.
Weiter teste ich:

AufzählungslistenBilderLinksFormatierungen Hier nun das Bild:


Und jetzt kommt ein Link.
Funktioniert auch. Nun noch einigeExperimente zur allgemeinenTextformatierung.
So, jetzt Mal schauen, was mir die App noch alles anbietet.
Stimmt: Ein Zitat muss auch noch rein. sagte schon Klaus Müller.
Das sieht doch alles ganz gut aus. Gut zu wissen, dass das funktioniert, wenn man einmal im Jahr einen Blogeintrag veröffentlicht.
Label kann ich aber scheinbar nicht vergeben.

Code Retreat: Keine If-Ausdrücke

Ich hatte am letzten Samstag einen Code Retreat organisiert. Dabei hatten wir auch zwei Sessions mit der Vorgabe, keine If-Ausrücke (auch keine switches oder ?-Operatoren) zu verwenden.

Folgendes fand sich daraufhin haufenweise im Code eines Paares:

while (a == 1) { //do somethingbreak; }
Soviel also zum Ziel, saubereren Code zu schreiben...