....wer macht denn sowas?

Michael Wagner

Michael Wagner

...ist Software Entwickler (Schwerpunkt App/Webdev, UX/UI, IoT) aus Niederösterreich. Wenn er nicht an neuen App Ideen, Web Applikationen oder Game Designs arbeitet, unterrichtet er Webentwicklung an der Fachhochschule St. Pölten. In seiner Freizeit spielt und streamt er Videogames, tüftelt mit verschiedenen Webdevelopment Tools herum, treibt gelegentlich Sport, macht Musik mit Cubase und seiner elektrischen Gitarre oder ist mit seiner Kamera unterwegs. Seit 2009 ist er diplomierter Fachwirt für angewandte Informatik, im Oktober 2020 erreichte er sein Masterlevel (M.Sc.) im Bereich "Web and Mobile Media Design" an der Donauuniversität Krems.

  • Publiziert in WebDev

Entwicklung von IoT Applikationen

Hallo Internet. Eine dieser sehr seltenen, feierlichen Gelegenheiten.

Ein neuer, zugegeben recht kurzer, Blogpost. Was ist der Anlass? Naja, Anlässe für Blogposts würde es mehr als genug geben, sei es betreffend meiner aktuellen Anstellung bei Microtronics, einer Firma die die Grenzen der Technologien verschiebt und das viel besprochene "Internet of Things" für die breite (Dev) Bevölkerung verfügbar macht. Oder betreffend meinem sich dem Ende nähernden Masterstudiums, welches in eine Masterthese zum Thema "KERNASPEKTE EFFIZIENTER CROSS PLATFORM MOBILE APP ENTWICKLUNG - untersucht anhand einer konkreten Hybrid-Beispielapplikation" mündet. Okok, ja, ziemlicher Zungenbrecher, aber ich bin ziemlich stolz darauf. Oder vielleicht der Tatsache, dass ich mich wieder mehr der Gitarre widme und auch wieder mehr Zocke und das manchmal auf Twitch streame. Mehr für mich selbst als für jemand anderen, aber wieso auch nicht. Für 2021 ist auch geplant, den Jelly Prototyp aufzugreifen und vielleicht mit Unterstützung (hust, Sebastian, hust) da noch daran zu werkeln und basteln. Auch ein Redesign dieses Blogs würde anstehen, ist ja unmöglich dass ein Frontend Evangelist wie ich eine Joomla Seite hat weil er bisher zu faul war was "gscheites" zu machen. Nicht ganz ohne Stolz weise ich aber darauf hin dass diese Joomla Seite bis in die letzte Schraube optimiert ist und ein Google Page Speed Ranking von 97/100 Punkten erhält. Eigentlich unmögliche Werte für Joomla und mein kleines Betriebsgeheimnis :)

Michael, du schwafelst und niemand interessiert das. Was ist jetzt also der Grund für diesen Blogpost? Jaaaa, ich werd immer wieder gefragt seit ich bei der Microtronics arbeite: "Was genau macht diese Firma jetzt?" oder "Was kann man sich unter IoT vorstellen?".

  • Publiziert in WebDev

Masterstudiengang: Web and Mobile Media Design

Es ist Dienstag, früher Nachmittag. Ich komme gerade vom C-TV Vortrag auf der FH wo ich mir die Keynotes angehört habe, sitze jetzt im Südpark mit meinem Laptop und scheibe meinen Blog weiter. Wieso das geht? Ganz einfach. Ich starte diesen Freitag mit dem Masterstudiengang "Web and Mobile Media Design" an der Donauuni in Krems. Am Freitag geht meine 1 jährige Bildungskarenz los und jetzt konsumiere ich noch Urlaustage. Ja ihr lest richig, ich starte jetzt meine Studienzeit, nachdem ich über 10 Jahre im Berufsleben Software entwickelt habe.

  • Publiziert in GameDev

Radventure - 2d Pixelart Platformer mit Unity

Im Februar 2018 habe ich beschlossen, dass ich erstens mehr mit Unity arbeiten möchte, zweitens mein Game Design Wissen zum Einsatz bringen will und drittens noch nicht genug mit den Studenten gearbeitet habe. Der Schluss den ich daraus gezogen habe ist, dass ich ein Game mit einem Team an Studenten machen möchte. Interessierte Leute haben sich relativ schnell gefunden. Wie sich herausstellte sind viele davon unglaublich talentiert und haben ein wahnsinnig gutes Grundverständnis was Gamemechaniken betrifft. An der Motiation werden wir noch arbeiten ;)

Nach einigen Meetings und Ideenfindungen haben wir beschlossen, es soll ein Tile based Platformer werden, mit einem Storybogen der sich um technologisierte Tiere dreht. Die einzelnen Levels werden in alter Mario oder Rayman Origins Manier durch mehrer Overworlds zusammengehalten an deren Ende jeweils ein Bosskampf wartet. Der Titel wird Radventure sein. Unser Hauptcharakter ist ein Roter Panda namens Rad. :D Der Player erweitert sein Skillset über Milestones innerhalb der Spielewelt, wo er neue Fähigkeiten lernt und Upgrades erhält. Das Kampfsystem soll Melee und Fernkampf beinhalten. Da das Projektteam nur in der Freizeit an diesem Spiel arbeitet, wird die Laufzeit entsprechend lange sein und das Primärziel ist es, eine lauffähige Demoversion zu erstellen und viel dabei zu lernen.

  • Publiziert in WebDev

10 einfache und funktionelle Webdev Tools für das Jahr 2019

Webdevelopment ist super. Webdevelopment ist anstrengend. Beide Aussagen stimmen. Es ist ein gutes Gefühl, sich mit vielen verschiedenen Technologien, Libraries, Best Practices, Tools und der dahinterstehenden Toolchain zu beschäftigen. Das Wissen, einen guten Gesamtüberblick über die Welt der aktuellen Webtechnologien zu haben ist großartig. Fast jede größere Entwicklung hat eine aktive, brodelnde Community, welche bereits viele der möglichen offenen Fragen beantwortet hat. Nebenbei ist es ein konstantes Wettrennen, am Zahn der Zeit zu bleiben, alte Komponenten der Toolchain zu aktualisieren und neue Libraries mit neuen Kern-Konzepten zu lernen. Erschwerend kommt hinzu, dass es nicht DEN Weg und DAS Set an Tools gibt um eine Aufgabe zu lösen, sondern unzählige. Und jede davon ist richtiger als alle anderen, jedenfalls wenn man auf die Communities dahinter hört. Dabei kann man leicht nostalgisch werden und Zeiten hinterhertrauern, in denen JQuery das allmächtige Werkzeug war. Gedanken über Deployment, Dependencies oder TaskRunner machten sich dalams die Wenigsten.

  • Publiziert in GameDev

Jelly aus dem Tiefschlaf holen

Ich dachte mir, ich lasse euch wissen was ich die ganze Zeit treibe. Hallo. Ja, ich existiere noch. Ich bin auch pausenlos mit verschiedenen interessanten Technologien und Projekten beschäftigt. Es hat sich allerdings herausgestellt, dass ich nicht unbedingt ein Mensch bin, der regelmäßig seinen Blog pflegt. Daran arbeite ich. :)

Wie ihr vermutlich bereits wisst, habe ich mich dazu entschlossen mein Lieblingsprojekt, das Jump'n'Run Game Bound-by-Magic, erstmal schlafen zu legen. Wir haben im Moment einfach keinen verfügbaren Grafiker für die Assets im Spiel, und bei einem Projekt welches mir so wichtig ist möchte ich auch keine Store-Assets verwenden. Auf lange Sicht, da bin ich mir sicher, werden wir eines Tages einen Partner für diesen Plattformer finden und dann daran weiterarbeiten. Das Story-Telling und die bereits erledigte, konzeptionelle Arbeit werden ja nicht schlechter mit der Zeit, also ist das eigentlich keine große Sache. Wir haben bereits einen funktionierenden Proof-of-concept Prototypen mit Unity3d und einigen Asset-Packs erstellt. Diesen frühe Version könnt ihr hier downloaden, sollte es euch interessieren.

Obwohl es immer auch ein bisschen schade ist, die Arbeit an einem Projekt wie Bound-By-Magic aufzuschieben, gibt es auch eine gute Seite daran. Jetzt habe ich die Zeit an einem anderen Prototypen weiterzuarbeiten, an dem ich schon längere Zeit gerne wieder schrauben möchte: Jelly Bubbles

  • Publiziert in GameDev

Bound by Magic: Infos und Gameplay

Schaut euch unseren ersten VLOG Beitrag über das Spiel Bound by Magic an. Wir sprechen über viele wichtige Dinge, wie Gameplay Mechaniken, Features, Story und Geschichte, wer wir sind, wieso wir dieses Spiel machen und so weiter und so fort. Wir zeigen sogar ein bisschen Filmmaterial von unserem frühen Alpha Proof of Concept Prototypen. Gebt euch einen Ruck und schaut euch den Film an. Außerdem gibt es am Schluss des Videos lustige Outtakes. :)

  • Publiziert in GameDev

Dracoo Leveleditor 101

Bereits seit März 2013 gibt es unser Spiel Dracoo the Dragon im Play Store für Android gratis zum Download. Aktuell planen wir den Dracoo-Release für iOS/iPhone/iPad. Diese Situation habe ich mir zum Anlass genommen, um den Leveleditor nochmal etwas genauer zu erklären. Er ist schließlich öffentlich und gratis verfügbar und wir haben ihn nach dem Release etwas stiefmütterlich behandelt und nicht viel darüber gesprochen. Er ist sehr einfach zu verstehen und mindestens genauso einfach zu bedienen. Man erstellt ein Level für das jeweilige Levelpack mit den verfügbaren Bausteinen und kann es direkt im Browser ausprobieren und spielen. Vielleicht möchte ja jemand von euch selber ein großartiges Level für Dracoo the Dragon machen oder sich in 2d Leveldesign üben.

Wenn ihr mir, auf welchem Weg auch immer, einige tolle Levels im JSON Format zukommen lasst, mache ich mir sehr wahrscheinlich die Mühe und verpacke sie entweder in eine Community Edition von Dracoo, oder ich erweitere in der bestehenden App die Levelpacks um die Community-Levels. Vorausgesetzt, sie erfüllen unsere Qualitätsansprüche.

Es würde mich persönlich jedenfalls sehr freuen, wenn ihr euch mit dem Leveleditor und dem Spiel auseinandersetzt. Schlussendlich ist das Spiel ja aus dem Grund entstanden, gespielt zu werden und Spaß zu machen.

Genug drum herum geredet. Wie erstelle ich jetzt ein Level?

  • Publiziert in AppDev

Setup (2/2): Gradle and LibGDX Project

Was wir vorhaben:

  • Eclipse Gradle Plugin
  • LibGDX Setup Tool (Download)
  • Projekte Eclipse-Import
  • HalloWelt laufen lassen

Im Rahmen dieses Postings werden wir unsere LibGDX Entwicklungs-Umgebung fertig einrichten. Nachdem wir bereits das Java Development Kit (JDK), das Android SDK, die dazugehörigen Path-Variablen und Eclipse in diesem Beitrag eingerichtet haben, kümmern wir uns heute um das Build-Management-Automatisierungs-Tool Gradle, dessen Einbindung in Eclipse und das Erstellen und Einbinden der LibGDX Project Files.

Wozu brauchen wir Gradle überhaupt? Gradle erlaubt auf einfache Art und Weise einzelne Komponenten wie z.B. die verwendete LibGDX Version oder die Box2d Physik in unseren Projekten upzudaten. Früher, vor Gradle, war es nicht immer einfach, die notwendigen Resourcen zu finden, zu tauschen und wieder richtig innerhalb der Projekte zu verweisen. Das Build-Tool Gradle nimmt uns diese Arbeit vollständig ab. Eine Gradle-Schulung wäre an dieser Stelle allerdings überzogen. Falls es weitere Fragen zu dieser Software gibt, hier findet ihr ausgezeichnete Ansatzpunkte.

  • Publiziert in AppDev

Setup (1/2): JDK, Android SDK, Eclipse

Was wir vorhaben einzurichten:

In diesem Post geht es um die Installation des Java Development Kits, des Android SDK's, Einrichten der Java und Android Path Variablen und Installation von Eclipse inkl. Android Development Tools Plugin. Zusammen mit dem nächsten Beitrag, soll das Ziel sein, eine Entwicklungsumgebung für Java bzw. Android aufzusetzen und alles soweit vorzubereiten, dass wir LibGDX Code auf unserem Rechner, sowie auf unserem Android Gerät ausführen und debuggen können. Dafür ist es notwendig, ein paar Software-Voraussetzungen zu erfüllen.

Ich werde die notwendigen Schritte und Einstellungen für ein Windows System mit der IDE Eclipse erklären. Natürlich ist alles hier erklärte auch in leicht abgewandelter Form unter Mac OSX und Linux möglich. Eine gute Alternative für Eclipse ist im Moment die IDE IntelliJ Idea, am besten in der Ausprägungsform des Android Studios. Ich für meinen Teil bevorzuge allerdings Eclipse.

Kurz ein paar einleitende Worte zu Java:

Java ist eine plattformunabhängige, objektorientierte Sprache. Was bedeutet in diesem Zusammenhang Plattformunabhängigkeit?

  • Publiziert in WebDev

Joomla: Ein Nachruf

Ich kann mir nicht helfen, aber ich habe das starke Gefühl, irgendetwas am Content Management System Joomla ist in den letzten zwei Jahren anders geworden. Und ich meine nicht das gute Anders. Ok, ich habe mich jetzt sehr lange nicht mehr damit beschäftigt und so einige Releases verpasst. Aber hätten da nicht viel mehr verpasste Releases sein sollen? Hat Joomla tatsächlich so lange Release-Zyklen? Oder ist die einst sehr aktive Community mitsamt der vielen Komponenten-, Modul- und Template-Entwicklern zu Wordpress abgewandert? Jedenfalls suggeriert das die Grafik, die ein schneller Google Lookup ausspuckt. Marktanteil 2015 bisher bei CMS-Systemen: 60,7% WordPress, 7% immerhin Joomla an zweiter Stelle noch vor Drupal und Blogger. (Quelle)

Trotzdem bleibt ein Gefühl von Einsamkeit, wenn man um halb 3 in der Frühe auf der Suche nach Komponenten und Modulen ausschließlich nicht weitergeführte Projekte von alten Größen findet, die für das letzte Major Release von Joomla nicht mal mehr kompatibel sind. Verwaiste Projektseiten mit den letzten Updates Mitte 2013. Dazwischen immer mal wieder kostenpflichtige Komponenten mit dem Versprechen, sie können alles was ich brauche, aber mir nicht die Möglichkeit geben, das vorher zu testen. Immerhin scheint es noch einige Kreative zu geben, die ihre WordPress Templates auch für das große J veröffentlichen.

FaLang translation system by Faboba