Wie entstehen Apps?

Was eine App ist, weiß mittlerweile jeder. Doch wie entstehen Apps? Kann wirklich jeder Apps bauen? Lasst uns einen Blick hinter die Kulisse werfen.

Apps sind nichts anderes als Computer-Programme. Sie können klein aber auch richtig komplex sein. Das was auf den ersten Blick aus der Nutzersicht einfach erscheinen mag, muss nicht unbedingt so unter der Haube sein. Im Gegenteil, richtig professionelle Apps sind häufig schlicht im Design, nutzerfreudlich, so dass die Komplexität sich nicht sofort erkennen lässt.

Unabhängig von der Art der App, ob sie im Auftrag oder aus eigenem Interesse entwickelt wird, sieht der Prozess immer ähnlich aus. Zuerst werden Use-Cases definiert, i.e. das nach außen sichtbare Verhalten der App aus Sicht der Nutzer. Mit anderen Worten aus einer App-Idee wird eine konkrete Vorstellung, was man mit der App alles machen kann. Die ganz grobe Skizze wird  in einzelne funktionale Einheiten/Komponente aufgebrochen, welche später auch umgesetzt werden.

Im zweiten Schritt wird geschaut, welche Technologien für die Umsetzung genommen werden. Die Wahl der Technologien hängt stark von Anforderungen ab. Entscheidend dabei sind Fragen, soll es eine App für nur ein Platform z.B. iOS werden oder müssen mehrere Platformen unterstützt werden, wie viele Resources stehen zur Verfügung, wie viel Zeit steht zur Verfügung etc.

Die Umsetzung an sich ist ziemlich staightforward. Es können sich natürlich unterwegs unvorhersehbare technische Schwierigkeiten ergeben, aber meistens läßt sich dieser Abschnitt des Prozesses gut planen.

Anschließend kommt Testing und aufregender Moment des Ausrollens der App. Obwohl die Prozesskette relativ einfach ist, steck der Teufel im Detail. Über einzelne Schritte im App-Development Prozess kann man lange Artikel schreiben. Das Ziel dieses Postings ist aber erst mal einen generellen Eindruck über die App-Entwicklung zu vermitteln. Wer sich fürs Thema App-Entstehung mehr interessiert, kann sich gerne die Postings zu PolterApp und Cheat-Sheets App durchlesen. Das sind zwei Beispiele aus der Praxis mit konkreten Fragestellungen und konkreten Lösungsansätzen.

Tools for creating App Store images for iOS apps

While working on higher Impressions and views of the product page to increase the download number of my iOS app Cheat-sheets I started to deal with questions of ASO (App store optimization). App title, app description, key words are the things, that are comparably easy to set and to experiment with. But I faced a real problem with creating of good Screenshots / Images for the Cheat-sheets app.

I do realize, that App images in App store must be an eye catcher. They should attract ones attention and influence the user to push the download button. However, I’m not a designer and Photoshop is not my best friend. So I began to search for a free Screenshot generator tool. I though there might be much of them out there. But I was wrong.

First I tried Screenshot Maker at The screenshot generator has a modern intuitive interface. After uploading a screenshot it is possible to choose between particular templates, set the background color and the comment to the screenshot. Also, font and font size can be customized. Actually, it would be enough for my needs, if it worked properly. However, after exporting and downloading the generated images I was deeply disappointed. The font was set wrong and the text was on the wrong place. Beside this I noticed, that it is not possible to upload and to export images for iPad, although the option to upload iPad images is there… at least the button is displayed, which does not work. Above all is the absence of unicode support. Cheat-sheets is localized also in Russian. So, currently there is no way to make screenshots for it. Pity, very pity!

Next, I came across It’s also a free screenshot generator. It has a pretty limited set of customization options and looks terrible 🙂 It’s not possible to design just a screenshot with a background. The uploaded image can be only embedded into iPhone frame. Screenshots for iPad cannot be designed with this generator at all. You cannot set colors as hexadecimal value, but only pick them from the color palette. For example, if you have 3 screenshots and one of them you would like update later, you’ll have to update all the 3 images, because otherwise the will look different. And at last unicode support… no unicode support, only latin letters! No commas, no spaces, no other symbols – only letters. How poor…

Unfortunately, I could not find any other free tools for creating App Store images so far. I also read about Photoshop templates and tools which automatically generate screenshots form Simulator. If I ever try these options, I’ll report about may experience in the next posts. For now I decided to try to achieve my goal with At least for iPhone images and at least for English and German languages.


No Password Field in Skype Login Dialog

I faced the problem for the first time 2 years ago on Windows 7 computer with Internet Explorer 11. After launching skype a blanc window appeared. There were no input fields for entering user name and password. Searching for the answered in the internet revealed some interesting facts:

  • skype relies on Internet Explorer engine for displaying the login window
  • it plays no role, wether IE is your default browser. You may use Chrome, Firefox, Safari etc., but skype still embeds Internet Explorer and obviously accesses its settings

The login problem was fixed by creating a skype shortcut on the desktop and editing the starting parameters:

"C:\Program Files\Skype\Phone\Skype.exe" /legacylogin

Quotes are important! The starting parameter /legacylogin used to force skype to call the “old fashioned” login window instead of the window based on Internet Explorer. However, in the current version of Skype 7.34 this workaround seems not to work anymore… And again searching and verifying various solutions. At last I found out, that it is possible to start skype directly with username and password parameters!

"C:\Program Files\Skype\Phone\Skype.exe" /username:YourUserName] /password:YourPassword

Hopefully, this workaround continues to work after the next skype update.

Progressive Web Apps

Last week I had a pleasant acquaintance with Adam Giemza, head of solution architecture and security at DB Schenker AG. He asked me about Progressive web and my opinion to it. Frankly speaking, I had no opinion at all, because I’m specialized more on native apps for iOS and Android. Of course, hybrid apps, mobile first approach, responsive design are the things I heard of and had even a bit experience with them. But what are Progressive web apps? I began to read about it.

The term “progressive web” appeared 2015  to describe web apps taking advantage of features supported by modern browsers, including Service Workers and Web App Manifests. Progressive web apps are:

  • Progressive – Work for every user, regardless of browser choice because they’re built with progressive enhancement as a core tenet.
  • Responsive – Fit any form factor: desktop, mobile, tablet, or forms yet to emerge.
  • Connectivity independent – Service workers allow work offline, or on low quality networks.
  • App-like – Feel like an app to the user with app-style interactions and navigation.
  • Fresh – Always up-to-date thanks to the service worker update process.
  • Safe – Served via HTTPS to prevent snooping and ensure content hasn’t been tampered with.
  • Discoverable – Are identifiable as “applications” thanks to W3C manifests and service worker registration scope allowing search engines to find them.
  • Re-engageable – Make re-engagement easy through features like push notifications.
  • Installable – Allow users to “keep” apps they find most useful on their home screen without the hassle of an app store.
  • Linkable – Easily shared via a URL and do not require complex installation.

As far as I understand the main difference to the hybrid apps, e.g. based on Cordova is that progressive web apps are not wrapped into some mobile application, but are more like a website. It is the web browser features, i.e. service worker and manifest which make these web application look and feel like native apps. And in opposite, the difference to a responsive web site is that progressive web apps can be used offline and look more “native”.

The concept of progressive web apps is very interesting. It is on one hand the next step towards cross platform development. On the other hand it is the step towards app distribution without app stores. I can think of many use cases where a progressive app has more advantages over native implementation for multiple platforms. Some examples of progressive web apps can be found here.


“App Programmierer” auf Ebay Kleinanzeigen

Auf Ebay Kleinanzeigen wird man fündig. Gebrauchte Lampen, Fernseher, Spielzeuge, Gartenmöbel und auch “App Programmierer”. Die letzteren werden zwar selten angeboten, dafür aber gerne gesucht.

Ich habe eine sehr gute Idee für eine App für Smartphones und würde diese gerne umsetzen

Ich bin auf der Suche nach engagierten und couragierten Programmierer

Ich brauche eine App, wo man mit Geld verdienen kann

Das sind nur ein Paar Anzeigen, die in Essen im Umkreis von 10 km veröffentlicht sind. Um Gesuche besonders attraktiv zu machen, werden Berge aus Gold versprochen, allerdings erst wenn sich die Projekte rentieren. Ein User mit dem Namen “Eva” möchte gerne auch ein oder mehrere Entwickler für die Umsetzung seine Ideen gewinnen. Anteile am Startup, Mitbestimmungsrecht und andere irdische Güter wären dabei denkbar. Davor hat Eva 15 andere Anzeigen veröffentlicht: Alufelgen, hochwertigen Schubladenschrank, Couchtisch… warum eigentlich nicht was anderes probieren?


VMWare Fusion: /dev/vmmon konnte nicht geöffnet werden

On my MacBook Pro I have VMWare Fusion with Windows 10 installed. It worked quite well until I started getting following error message:


/dev/vmmon konnte nicht geöffnet werden: Es existiert keine Datei und kein Ordner dieser Art. Stellen Sie sicher dass das Kernelmodul “vmmon” geladen ist.

It is the same as the the english variant

Could not open /dev/vmmon: No such file or directory.

First, I thought it could be an error after upgrading the MAC OS from Yosemite to Mavericks. However, it turned out to be a conflict with Oracle’s VirtualBox, known as Oracle VM VirtualBox. VirtualBox is a free software for running virtual machines, i.e. same purpose as VMWare. I didn’t realize, that it was installed on my MAC. It might came with some other Apps, that were previously installed. Like Android emulator “Andy” or some other.

So how to fix the issue? Just uninstall VirtualBox. Follow the steps below:

The system restart is not required, your VMWare Fusion should work from now on properly. If you need VirtualBox in the future for other apps, you can install it again from Oracle’s website.

Apple Watch at the second glance

I could make my first impression of the Apple Watch 2 years ago. The very first version of the watchOS could not really persuade with features that one would say “I absolutely need the watch!”. Actually, I agree with multiple reviews and the main statement about Apple Watch: no clear concept for whom it can bee useful and how it can revolutionize my everyday life. Thus, I put the Apple Watch in the cupboard. For fitness data tracking and sleep data tracking I preferred my new Garmin Vivosmart HR. To my opinion it had a number of advantages over Apple Watch:

  • Battery Life! The most important argument. Vivosmart HR needs to be charged only once a week, where Apple Watch should be charged really every day
  • Sleep data tracking
  • Stairs/floor counter
  • Waterproof

Last week I wanted to know more about the features of watchOS 3. For this purpose Apple Watch and Vivosmart HR changed their places in the cupboard. After a week of wearing the Apple Watch I did like the recent changes. Of course, battery life didn’t really change. watchOS 3 did not bring waterproof property to the very first model of the Apple Watch as well 🙂 BUT:

  • Now, apps can run directly on the  Apple Watch
  • More interesting apps for the Apple Watch
  • Pleasant improvements in fitness aspects: better user interface, more features
  • HomeKit makes it possible to integrate it in your smart home environment
  • and much more..

The Apple Watch became more attractive for sportsmen and the intent of Apple is to make more in that direction. If one accepts the fact, that even Generation 2  of the Apple Watch still needs to be charged every 2 days, then one can say, it is one of the best devices on the markt of wearable devices. At least at the current moment.

How do I remove Adware Generic7.CASB?

If your antivirus software like AVP reports a threat through Adware Gerneric7.CASB and is not able to treat it itself, don’t become desperate. Generally, it is possible to remove this nasty Trojan yourself. However, this way is complicated and not safe for your system, if you are not a virus expert. Adware Generic is able to rename itself and also rename other important system files, so that you can accidentally corrupt useful applications.

In order to remove Adware Generic7.CASB just use a free tool AdwCleaner. It is a small program, which is even not required to be installed. It knows almost all kinds of adware and can repair your PC in a few moments.

  • First, start AdwCleaner and run the scan of your computer.
  • After AdwCleaner finds adware, press “Clean” button
  • Adware Generic7.CASB will be automatically removed from your computer. You will be prompted to restart your PC.
  • After system restart you can view the log file and wonder how deep Adware Generic7.CASB set in your operation system. That’s all.


Google Analytics for iOS

Once I reported about my experience with HockeyApp a tracking tool for iOS, Android and Windows Apps. Today I tested the abilities of Google Analytics for iOS. Without going deep in details here is the overview of the evaluation results:

  • There are SDKs only for iOS and Android. Tracking of the Windows Apps is not supported.
  • Tracking of the fatal and non fatal exceptions is possible
  • Screen tracking. If desired, the tracking method can be called for example in viewWillAppear. In the dashboard of Google Analytics there is the overview of the called Views.
  • Support for custom events
  • Real time screen end events tracking
  • Dashboard of the App Analytics looks almost same as the dashboard for tracking websites
  • If tracking private user data, be sure to learn about privacy policy and the proper use of the Google Analytics in your app