Rückblick auf 2018
Nun ist das Jahr 2018 bereits seit zwei Wochen Geschichte und voller Vorfreude und Erwartungen blicken wir auf das aktuelle Jahr 2019. Ich möchte an dieser Stelle einen kleinen Rückblick auf das vergangene Jahr geben und auch einen kleinen Ausblick auf das Jahr 2019. Beginnen wollen wir hierbei mit ein paar Zahlen.
Frohe Weihnachten
Auf diesem Wege möchte ich allen Leserinnen und Lesern meines Blogs für ein tolles Jahr 2018 danken und gleichzeitig frohe Weihnachten, besinnliche Feiertage und einen guten Rutsch ins das Jahr 2019 wünschen
Ich werde noch einmal in einem separaten Blog-Beitrag auf das Jahr 2018 zurückblicken und einen Ausblick auf das Jahr 2019 geben. Aber jetzt geniessen wir erst einmal die Weihnachtszeit und die Tage zwischen den Jahren.
Alexa-SkillRequest verifizieren
Bisher habe ich ja bereits den einen oder anderen Alexa-Skill veröffentlicht und bisher sind die Funktionen alle auf AWS, also in der Amazon Cloud, gehostet. Aber es gibt natürlich auch andere Cloud-Anbieter, wie zum Beispiel Microsoft Azure und da bei einem Alexa-Request auch nur JSON-Dateien ausgetauscht werden, ist es auch relativ einfach einen Skill bei einem anderen Cloud-Anbieter zu hosten. Amazon möchte jedoch, dass jeder Request dahin gehend verifiziert wird, dass dieser wirklich von Alexa stammt und ich möchte in diesem Beitrag zeigen, wie man dies innerhalb einer Azure Function mit der Hilfe des NuGet-Packages Alexa.NET und ein wenig Code erledigt.
Xamarin.Forms Controls: RepeaterView mit DataTemplateSelector
Ich habe ja bereits gezeigt, wie wir ein neues Xamarin.Forms Control, nämlich die RepeaterView, erstellen und diese haben wir bereits erweitert, dass jede zweite Zeile eine andere Hintergrundfarbe bekommt. In diesem Beitrag möchte ich euch jetzt zeigen, wie ihr die RepeaterView
so ergänzen könnt, dass statt eines ItemTemplates
auch ein DataTemplateSelector
angegeben kann, welcher auf Grund verschiedener Regeln das passende Template auswählt und darstellt.
AppCenter CLI
Im Rahmen eines Blog-Beitrags bzgl. der Dr. Windows habe ich bereits erwähnt, dass ich zum Bauen der Test- und Store-Versionen das AppCenter von Microsoft verwende. Zusätzlich habe ich in den letzten Tagen verstärkt unter Linux mit der Bash gearbeitet und habe ein wenig Gefallen an der Verwendung eines Terminals für verschiedene Aufgaben gefunden. Daher kommt es genau recht, dass es ein Command Line Interface für das AppCenter gibt, so dass man alle Aufgaben auch über das Terminal vornehmen kann.
Windows 10 IoT Core auf einem Raspberry Pi
In diesem Beitrag möchte ich euch kurz aufzeigen, wir ihr in wenigen Schritten Windows 10 IoT Core auf einem Raspberry Pi installieren könnt. Anschließend könnt ihr eure eigene UWP-App direkt auf dem Raspberry Pi laufen lassen, um so zum Beispiel ein Dashboard mit wichtigen Informationen mit wenig Aufwand zu bauen. Aber beginnen wir erst einmal mit der Einrichtung bzw. der Installation.
Xamarin.Forms Controls: RepeaterView mit alternativen Zeilenfarbe
Ich habe bereits gezeigt, wie man sich ganz einfach eine RepeaterView erstellen kann. Nun möchte ich die bestehende Implementierung so erweitern, dass jede zweite Zeile eine andere Hintergrundfarbe hat. Dies hat den großen Vorteil, dass sich die Lesbarkeit der Daten deutlich erhöht und man einen größeren Kontrast zwischen den einzelnen Einträgen herstellen.
Mail vom AWS IoT Button senden in C#
Ich habe ja bereits in einem meiner letzten Beiträge gezeigt, wie ihr euch euren AWS IoT Button einrichten könnt. Ebenso habe ich euch beispielhaft gezeigt, wie ihr eine vorgefertigte NodeJS Lambda-Funktion zum Senden einer eMail-Nachricht als Standardfunktion festlegen könnt, welche dann beim Drücken des Buttons ausgeführt wird. In dem heutigen Beitrag möchte ich euch nun zeigen, wie ihr diese Funktion selbst schreiben könnt und zwar in C# mit der Hilfe von Visual Studio.
Sketch2Code
Heute möchte ich euch eine kleine Webseite vorstellen, welche in der Lage ist eure gezeichneten Layout mit der Hilfe von künstlicher Intelligenz zu analysieren und anschließend als HTML-Code anzuzeigen. Das Projekt stammt dabei aus der Feder von Microsoft und soll aufzeigen, was heutzutage bereits mit KI möglich ist.
ScreenToGif: Bildschirm als Gif speichern
Manchmal möchte man seinen Bildschirm aufzeichnen und daraus eine kleine GIF-Datei erzeugen, welche man dann auf einer Webseite einbinden kann oder auch als kleines Tutorial in einer PowerPoint-Datei verwenden kann. In diesem Beitrag möchte ich nun das kostenlose Tool ScreenToGif vorstellen, welches genau diese Aufgaben übernimmt und dabei sogar noch einen umfangreichen Editor für die Nachbereitung zur Verfügung stellt.
AWS IoT Button einrichten
Die meisten von euch haben bestimmt schon einmal von den Dash-Buttons von Amazon gehört. Dabei handelt es sich um kleine Buttons, welche direkt eine Bestellung bei Amazon für ein bestimmtes Produkt durchführen können, welches ihr über eine App konfigurieren könnt. Dabei ist man jedoch sehr limitiert und es stehen nur ein paar Produkte zur Auswahl und jeder Button unterstützt auch nur eine von Amazon definierte Produktpalette. Aber neben diesen Dash-Buttons gibt es auch noch den AWS IoT Button, welcher (frei) programmierbar ist. Beim Drücken des Buttons wird eine AWS Lambda Funktion getriggert, welche dann beliebige Aufgaben übernehmen kann. Der Button unterscheidet auch noch, ob der Button einmal, zweimal oder einmal lang gedrückt wurde, so dass man technisch drei verschiedene Aktionen durchführen kann. In diesem Beitrag möchte ich euch nun aufzeigen, wie man seinen AWS IoT Button einrichten kann.
Xamarin.Forms Controls: RepeaterView
Manchmal kommt man in die Verlegenheit, dass man gerne zwei ListViews
innerhalb einer ScrollView
verwenden möchte, was jedoch gar keine gute Idee ist, denn so hat man mehrere verschachtelte ScrollViews
auf einer Page, was zu unerwünschtem Verhalten führen kann. In diesem Fall kann es hilfreich sein ein einfaches Control zur Verfügung zu haben, welches eine Liste von Objekten entgegen nimmt und diese entsprechend eines Templates anzeigt. Bei Bedarf kann man dann dieses selbst in eine ScrollView
packen und erreicht so das gewünschte Ergebnis.