Skip to main content

Posts

Forget about MVC, MVVM and MVP - MVI (Model-View-Intent) is coming!

module.exports = function (model, view, intent) {
if (view) { view.observe(model); }
if (intent) { intent.observe(view); }
if (model) { model.observe(intent); }
};

The first thing to notice is regarding the communication, as you can see from the schema above the communication is unidirectional.

In MVI, the view is exposing an observable for the intent to capture all the user interactions from the view and passing the data through an observable to the intent. The intent is preparing the data received for the model, and these data are passed to the model via an observable again. Last but not least the model save these data and update the view exposing an observable to the view.
The view is not changing directly, but it’s just preparing the virtual tree to be rendered by any renderer.

Bear in mind that one peculiarity of an MVI architecture is that an object shouldn’t manipulate or directly call any method of another object; the only communication allowed are through observables!

The unidire…
Recent posts

App Store Optimization (ASO) Factors and Trends 2018

The ASO Factors & Trends for 2018 study is based on survey data from over 60 ASO and app marketing professionals who were asked to evaluate the effect of different on-metadata and off-metadata factors on Search Rankings and Conversion Rate of mobile apps and games.

The TOP 5 factors responsible for ASO on Google Play Store and Apple App Store (on both Search and Conversion Rate level) are nearly identical:

App Name / TitleLocalized product pageUser RatingsSubtitle / Short DescriptionUser reviewsTheTool

Another nice blog about ASO:

Important Tips on Writing An App DescriptionThe Apple App Store Optimization Guide5 Tips on How to Increase App DownloadsKeywords Optimization...MobileAction

AWS is offering AppSync – Build data-driven apps with real-time and off-line capabilities

AWS AppSync is a fully managed serverless GraphQL service for real-time data queries, synchronization, communications and offline programming features.With AppSync developers can simplify the retrieval and manipulation of data across multiple data sources with ease, allowing them to quickly prototype, build and create robust, collaborative, multi-user applications.AppSync keeps data updated when devices are connected, but enables developers to build solutions that work offline by caching data locally and synchronizing local data when connections become available. The GraphQL Proxy passes the client request to the Resolver which maps and executes the request payload against pre-configured AWS data services like an Amazon DynamoDB table, an AWS Lambda function, or a search capability using Amazon Elasticsearch. The Resolver executes calls to one or all of these services within a single network call minimizing CPU cycles and bandwidth needs and returns the response to the client.
AWS AppS…

Alpha Apps vs. App Unbundling

Alpha Apps
Die chinesische App WeChat geht noch weiter: Neben einem Messenger, vergleichbar mit WhatsApp, bietet sie einen Lieferdienst à la Lieferando, die Möglichkeit etwa das eigene Konto zu checken (wie sonst bei der Bank-App) und gleichzeitig die Chance etwa Promis zu folgen, wie es Twitter bietet.

Solche Alpha-Apps können dadurch verschiedene Aspekte und Möglichkeiten des Internets verbinden und werden so zum idealen Zugangsportal zum Netz – so wie traditionell der Browser am Computer. Den Tod des Browsers bedeutet das aber noch lange nicht.

Der Browser ist tot, es lebe der Browser!
Wirtschafts Woche


App Unbundling Unbundling steht für das Unterteilen von Apps oder verschiedener Funktionen in mehrere, eigenständige Applikationen.

Aber nicht jede Unbundling Aktion wird positiv von Usern aufgenommen. Facebook Messenger erhielt hunderte miese Bewertungen in den App Stores, denn viele User fühlen sich von Facebook grundlos gezwungen eine zusätzliche App herunterzuladen. Das Fazit: was…

Apps vs. Web

Eines scheint klar: Mobil büßt er gegenüber den Softwareprogrammen aus dem App-Store Nutzer ein. „Mittlerweile spielen Apps die wichtigste Rolle für den User – oder sie werden sie zumindest sehr bald spielen“, sagt Jan Wolter, Geschäftsführer von Applause EU.

Apps bieten also im Gegensatz zum Browser Schnelligkeit gepaart mit Einfachheit und Bequemlichkeit. Sie öffnen zwar nicht die Welt ins gesamte World Wide Web, wie es der Browser kann, aber sie öffnen die Welt, die man möchte, wenn man ihr Icon auf dem Tablet anklickt.

Die chinesische App WeChat geht noch weiter: Neben einem Messenger, vergleichbar mit WhatsApp, bietet sie einen Lieferdienst à la Lieferando, die Möglichkeit etwa das eigene Konto zu checken (wie sonst bei der Bank-App) und gleichzeitig die Chance etwa Promis zu folgen, wie es Twitter bietet.

Solche Alpha-Apps können dadurch verschiedene Aspekte und Möglichkeiten des Internets verbinden und werden so zum idealen Zugangsportal zum Netz – so wie traditionell der Brows…

Universal Native Frameworks: Flutter vs. Xamarin

Flutter

Uses Dart as programming languageDraws on Skia CanvasSame UI, on all platforms The Good

Flutter compiles to nativeFlutter supports hot reloading
The Bad

Flutter is written in DartFlutter is in alpha "Flutter is unique in that while it allows access to native APIs, it doesn't use native UI elements," said developer Adam Pedley.
Stanley Idesis: "Google's answer to Google's own problem" (building multiple apps for multiple platforms)."Flutter's main competitor, Xamarin, offers access to native APIs and simplifies your multi-platform application into one codebase. But it comes with an obvious downside: dependency," Idesis said. "If Xamarin shuts down or stops receiving support, so does your app. When you build your app in Xamarin, you essentially handcuff yourself to the platform -- and not in a fun way.
Xamarin Flutter
Xamarin Faces Challenge from Google's Flutter Mobile SDK Visual Studio Magazine
Flutter Could Be Xamarin’s Next Big C…