Event Pipelines mit Combine

In meinem Artikel zu PayForMe habe ich Apples Framework Combine kurz angerissen. Heute möchte ich etwas tiefer ins Detail gehen und zeigen, wie man damit am Beispiel des Hinzufügens eines neuen Projektes in unserer App komplexere Situationen bewältigen kann.

Weiterlesen

Creating a Cospend app with SwiftUI and Combine

In unserem Münchner Büro hatten wir ein Problem, das bestimmt viele Firmen kennen: Beim Mittagessen gehen oder wenn man abends mal Essen bestellt wird Geld ausgelegt und dann als Bargeld hin- und her gereicht oder „gepaypalt“ – der ständige Transfer von Geld und die dadurch entstandene Unübersichtlichkeit nerven leider ziemlich.

Es gibt eine Reihe von Software-Lösungen, um das gegenseitige Auslegen von Geld in der Gruppe zu tracken und zu verrechnen, z. B. Splitwise, Kittysplit oder iHateMoney. Es war von vornherein klar, dass wir eine Open-Source-Lösung wollen. Bei uns fiel die Wahl auf Cospend, da es als Nextcloud-App verfügbar ist die schnell aufzusetzen ist und bei der die Daten in unserer Nextcloud gehostet werden, statt auf einem externen Server. Cospend ist übrigens von iHateMoney inspiriert.

Weiterlesen

Mobile Continuous Deployment mit Bitrise

Der agile Gedanke hat das grundlegende Vorgehen in der Softwareentwicklung verändert. Durch iterative Vorgehensmodelle wie Scrum oder Kanban hat sich der Umgang mit Features oder Resultaten verändert. Der Entwicklungsprozess durchläuft in relativ kurzen Zyklen immer wieder die gleichen „Checkpoints“ und man kommt häufiger an den Punkt, die Fortschritte veröffentlichen oder deployen zu müssen. Der Anspruch hat sich gewandelt: Von einzelnen punktuellen Veröffentlichungen im Projektverlauf hin zu regelmäßigen Integrationen in Systemlandschaften.

Der klassische Ansatz, teils kritische Deployments und Integrationen in vielen Schritten manuell durchzuführen, ist nicht mehr wirtschaftlich und darüber hinaus auch noch fehleranfällig. Hier wird der Bedarf nach Automatisierung sichtbar – „Software für die Software“. 

Weiterlesen

Slacktime: SoundBoard App

Die App „SoundBoard“

Am letzten Mayday habe ich meine mobile App „SoundBoard“ für Android fertiggestellt und bei Google Play released. Die App etabliert einen Hintergrundservice, der alle über das Mikrofon empfangenen Spracheingaben analysiert, gesprochene Sätze erkennt und daraufhin mit entsprechenden Soundeffekten reagiert.

Auf die Idee zu dieser App hatte mich ein Freund gebracht, der ein großer Brettspielfan ist und regelmäßig Spieleabende im Freundeskreis organisiert. Somit kann das Smartphone nun am Rande des Spielfeldes verweilen und beispielsweise beim Erkennen des ausgesprochenen Satzes „Ich greife an!“ die Spielrunde mit einem lustigen Fanfaren-Sound überraschen. Weiterlesen

mobile dev hint #2 – Use Browsersync for mobile testing

While testing mobile websites on different devices and browsers, testing time grows exponentially. You need to duplicate click-through movements on all the devices, fill out forms many times and do all the user interaction for too many times. This is where Browsersync starts, it cuts out all the repetitive manual tasks. You can mirror all interactions on your testing devices and you  can integrate Browsersync in your web platform and build tools easily. The CLI usage is simple and developer friendly and the great UI can help the testers to interact with the software live during the testing. Weiterlesen

Ten tips for frictionless development with Apache Cordova

Cordova is a framework for developing cross-platform mobile apps using web technology. Develop your application using the technologies you know, deploy to all major platforms without the complications of native development, and tap into a rich ecosystem of plugins for adding native functionality to your app.

Sounds great, doesn’t it? Well, if you have used Cordova before, you may have found the harsh reality of Cordova development to be at least sometimes a bit more gloomy that this. As for us: we use Cordova for delivering a web application as a standalone mobile app for one of our customers. While we succeeded in creating a full-fledged mobile app that scored great reviews with our customer’s user base, the road that took us there was much more stony than we expected, and we often found ourselves hitting walls where we did expect smooth sailing instead. In this blogpost, I want to share ten tips to ease the pain and provide a smooth development experience with Apache Cordova.

Weiterlesen

Unser mobiles Open Device Lab

Für unseren Besuch der IPC/webinale Berlin 2015 hatten wir uns etwas Neues ausgedacht – ein mobiles Open Device Lab für die Konferenzteilnehmer. Schließlich bauen wir die mobilen Apps für Louis und Vaillant und machen täglich die Erfahrung, wie wichtig echtes Testen auf echter Hardware ist.

Da wir am Standort Würzburg jüngst erst ein neues Open Device Lab unterstützen, mit der Infrastruktur, wie wir sie auch in echten Projekten nutzen, standen im Grunde alle wesentlichen Ressourcen zur Verfügen, so etwas auszuprobieren. Ein kleiner Text über unser technisches Setup und unsere Erfahrungen damit auf einer Konferenz.

LabUp-Setup Weiterlesen

Open Device Lab: 12 gute Gründe dafür, eines zu besuchen

Seit der Eröffnungsveranstaltung des Würzburger Open Device Lab (Anmeldung und weitere Informationen hier) im Mayflower Office konnten wir bereits erste Besucher empfangen, die ihre Applikationen auf unseren fast 20 Geräten getestet haben. Um von Best Practices oder Lessons Learned berichten zu könnten waren es allerdings noch nicht wirklich genug. Und das finden wir sehr schade.

Vielleicht können sich Entwickler, Studenten, Website-Betreiber, Agenturen, Firmen, Schüler, … in der Region einfach noch zu wenig darunter vorstellen, welche Vorteile der Besuch eines Open Device Lab für sie haben kann. Deshalb haben wir eine Liste zwölf wirklich guter Gründe zusammengestellt, die dafür sprechen, ein Open Device Lab zum Testen mobiler Applikationen aufzusuchen:

1. Vielzahl an Geräten

Mobile-Testing wird im Rahmen der Softwareentwicklung zwangsläufig vernachlässigt, da kaum ein Unternehmen/Entwickler es sich leisten kann, ausreichend (gibt es ohnehin nicht) Testgeräte zur Verfügung zu haben. Open Device Labs schaffen hier Abhilfe – als öffentlich zugängliche Testlaboratorien, in denen eine Vielzahl von Geräten zur Verfügung steht. Weiterlesen

Open Device Lab. In Würzburg. Bei Mayflower.

Jippiiiiie!! Es ist so weit! Am vergangenen Donnerstag hat das erste Open Device Lab in Würzburg endlich seine Pforten geöffnet. Und zwar bei uns im Mayflower Office :)

Bei einem Open Device Lab geht es darum, freien Zugang zu möglichst vielen mit dem Internet verbundenen Devices zu haben, um Webseiten und Apps breit aufgestellt testen zu können. Nicht jeder einzelne Entwickler oder jede Company können massenhaft Geräte zu Testzwecken anschaffen. Open Device Labs versuchen diese Lücke zu füllen, indem sie möglichst breit aufgestellt (Hersteller, Betriebssystem, Betriebssystemversion) Handys, Tablets und andere Geräte mit Browser und Internetzugang zum Testen zur Verfügung stellen. Weiterlesen

Responsiveness revisited

Spricht man im Web-Kontext über moderne Fronend-Entwicklung (wie wir auf unserem ersten Lightning WEB @night – Event), kommt man um Responsiveness nicht herum. Seit Jahren nicht. Doch nur, weil der Begriff uns schon lange begleitet, heißt das nicht, dass wir ihn auch alle (auf die gleiche Art und Weise) verstanden haben. Es gibt unzählige Definitionen – und ich möchte nicht noch eine weitere, unvollständige hinzufügen. (Und eine richtige, umfassende Definition kann ich wohl leider auch nicht liefern.) Daher soll es im Folgenden um das grundlegende Verständnis dafür gehen, was Responsiveness im Web eigentlich ist / bedeutet / möchte.

Denn nur wer verstanden hat, was die Ziele responsiven (Web-)Designs sind, kann für die eigenen Bedürfnisse / die eigene Website fundierte und zukuftssichere Entscheidungen treffen.

Weiterlesen