Two Weeks After The Launch Of Our LIKE A HIPSTER App – Insights In Continuous Delivery


Kathrin already wrote about our first week, so I take the chance to update you on our second week after the launch of our LIKE A HIPSTER app.

It’s now been two weeks since our mobile app LIKE A HIPSTER hit the app store. LIKE A HIPSTER is a SOcial LOcal MObile app, that helps users find venues with a hipster vibe in their neighborhood. We pretty much went:

  • From idea to prototype in 3 hours
  • From prototype to launch in 24 hours
  • From launch to world domination in 7 days 14 days

So it was quite an exciting time and I want to share some thoughts I had during the past two weeks.

What’s Your Niche?

Have you ever watched Big Bang Theory? If yes, then you probably have a pretty good idea of what my life looks like at the moment. I (the Ami) have a temporary roommate. Her name is Kathrin and she’s a marketing guru, and the Penny (Don’t tell her I said that!).

Two weeks ago we had lunch together in one of our favorite restaurants and we discussed my current project the Hungry? app, a restaurant finder app based on the Foursquare and Yelp APIs I wrote because I got used to and bored of my common eateries and I wanted to discover new places resp. I wanted to get good restaurant recommendations when traveling. So I asked Kathrin about her opinion on the app and she said, that she likes it but she would not use it but use directly the Foursquare or Yelp apps instead. She would use it if there was some special attribute available… such as… (she glanced around in the restaurant)… hipster places! Suddenly our eyes popped and we got very excited about the idea, so we went home and started working on the “Hipster project”.

Let’s do this!

So we went home and I forked the source code of the Hungry? app. Kathrin did some research on a hipster logo and after a quick hack in Photoshop our corporate identity was fixed: pink, unicorn + cat = caticorn / unicat.

My first idea was to make a spin-off of the Hungry? app and to name the app “Hipster?” but Kathrin had a better idea and found out that was not taken. So she setup a Facebook page, Twitter, and Instagram account – later also a YouTube channel.

She also found a street art picture under CC license with a lumber-sexual guy and we adopted him as our “Hipster Oida” (literally “old hipster guy”) – our ambassador and face of LIKE A HIPSTER.


After forking the code I rebranded it, changed the colors and icons, added “hipster” as search term to the API calls, and set up the Google Play Store page.

We quickly launched the website, app, and other social media channels until the end of the day.

nexus5 (2) nexus5 (3) nexus5 (1)

Some insights and highlights:

  • Kathrin and I know each other already for some years but we never worked together. So it was thrilling to find out that we totally have the same working pace and enthusiasm about this project.
  • Kathrin’s texting skills were amazing! Just check out our website. We were sitting at my tiny kitchen table – I did the technical stuff, Kathrin wrote the pages for the website – every couple of minutes she started giggling about what she currently wrote. Especially our Testimonials site.
  • My Photoshop skills weren’t that bad as I thought.
  • We chose to give both of us the roles “C*O” because we actually did everything. Except our Head of Communication should become my cat Mica – because diversity.
  • Since I am a Java / Android developer I was not able to quickly produce an iOS app, so we decided to add a nice quirky joke to our website: We added an iOS download button but it links to a Nexus 5 in the Amazon webstore – meaning: “Looking for the iOS app? Get an Android phone instead!”

The Results Are In!

On the next day was my birthday and Kathrin surprised me with the app being featured on Product Hunt which was pretty cool – some people say Product Hunt is the next Tech Crunch…

We decided to be as transparent as possible about our processes so I set up a blog to write about our progress and share some insights. I also configured some ads for our app with Goolge AdWords with a Mickey Mouse budget of 5€ per day.

Kathrin wrote a (for my taste far too serious) press release and finally we received press coverage in

Additionally Singapore Airlines asked us if they could feature our app in their monthly magazine Silverkris!

And we got some really funny reviews in the Google Play Store and other reactions on twitter. My favorite:

I was (and am still) totally overwelmed with this positive feedback we got for our app. My key learnings:

  • You can NOT force your friends to upvote your on Product Hunt or review your beloved app on Google Play Store – unluckily some just don’t care (enough). I really didn’t expect that!
  • We got more revenue from the Amazon Link joke than with the app ads.
  • Finally we got “employees” (somehow): Besides my cat who works for cat food we bought an animated logo from fiverr (employee #4)

    and a pretty cool YouTube video (employee #5) that explains our app’s user interface (with music from
  • We had a photo shooting with Cliff because for press coverage we needed pictures of us two without holding a beer in our hands. But it turned out, that it was not such a good idea to take pictures of our tired 9 o’clock selves. So I think we should make some other pictures soon.

The brave 500

And than on Oct 13 it happened: We hit the 500 app downloads mark!


As I already mentioned we bootstrap our business and have no money what so ever but our private money to invest. Besides the 5€ a day marketing budget on Google AdWords I installed some cross-app “in house” promotions which are for free in AdMob. So on Hungry? there are ads for LIKE A HIPSTER and vice versa. And as you could see in the graph above we gained approx. 40-50 users each day. (I launched Hungry? two weeks earlier so I got about 630 downloads there so far – interestingly both apps are performing quite alike, although we thought that the user groups are different.)

And I figured out I love performance marketing. Some numbers:

  • We currently have an average of 60-70 active users per day.
  • 5 Best performing countries besides Austria

    • United States
    • Iraq (I really don’t know why!?)
    • Morocco
    • Bangladesh
    • Canada
  • Facebook ads are quite cheesy because we didn’t see any conversions there! So we disabled them again
  • Amazon earnings so far: ~75$
  • AdMob earnings: ~15€
  • AdWords spendings: ~75€


And Now?

Implement new features (rework of the UI to better match Material Design is done) and try to monitarize the app further. Catching good press coverage and submitting the app to app review sites. And I really need to take off a week or two to implement the iOS app – we’ve obviously got a really high demand for iOS.

Continuous Delivery

One word (or two) about Continuous Delivery.

Continuity in delivery could be boon and bane. I try to release new versions with freshly handmade features as quickly to the market as possible. Meaning that the app needs to be updated every couple of days.

One of the downsides is that sometimes I release too early and unintentionally add some bugs (currently performance issues). Or the users got kind of used to old features and are now confronted with new ones (as with the Material Design makeover).

But as I always say: If you don’t continue enhancing your apps and stop developing, they die!

And I won’t let our baby die! So keep tuned for new features.

Die neue Hungry?-App ist da!

Ich hab wieder eine neue Android App geschrieben :)


Bist du Hungrig und möchtest ein neues Restaurant ausprobieren? Einfach mit der Hungry?-App ein neues Lokal entdecken!


Um ein neues Restaurant anzuzeigen, einfach schütteln.

Die neue köstliche Hungry?-Android App gratis im Google Play Store runterladen!


Move subfolder into new GitHub repo

Sometimes it happens that you want to outsource a sub directory from your GitHub repository to a separate new repository.

e.g. you have a structure like

# github repo

and want to have a new structure like this

# old repo

# new repo

This can be done super easy with only two commands (from

  1. in your original directory
    cd electrobabe
    git filter-branch --prune-empty --subdirectory-filter 
     chefbabe master

    The directory electrobabe now only contains the files of chefbabe.

  2. Push to your already created new empty repo:
    git push -f master
  3. Optional: Clean up (e.g. clone the original repo again) and to set your configs in /.git/config again

Integration Test Coverage with Sonar

I love to develop test driven, but even more I love code analysis tools that show me what to improve. Sonar is quite “popular” and common for Java developers and I’m using it already for years in different projects.

If you want to see integration test coverage, you have to set the jacoco maven plugin together with the fail safe plugin in your maven config (pom.xml):

            <!-- integration tests -->
            <!-- for integration test coverage in sonar -->

      <!-- needs to be set for jacoco's forked process -->

argLine is used as additional param in the javaagent command line section jacoco uses (needs to be set, otherwise the maven opts are not set for the forked process – OutOfMemoryException and so on…). See jacoco’s documentation for details.

The result in Sonar is pretty amazing:


Aus der Serie “Ich bin Ingenieur, ich kann das”: Wie man sein Nexus 4 repariert

keep-calm-and-trust-me-i-m-an-engineer-74[1]Als Ingenieur hab ich keine Scheu davor, Geräte und Maschinen auseinander zu nehmen. Die  Eingeweide von Computern und Notebooks sind mir bestens bekannt, meine Vespa kenne ich auch nackt, letztens musste der Geschirrspüler dran glauben und alles, was zu schrauben war, habe ich in meiner Wohnung selbst erledigt. Allerdings ist es ein wenig spannender, ein Smartphone auseinander zu nehmen, weil alles super filigran ist und auf kleinstem Raum angeordnet.

Nach dem ich wiedermal das Display meines Handies durch Ungeschick zerbrochen habe, dieses mal aber leider nicht nur das Glas, sondern das gesamte Display, habe ich auf Ebay nach einem Ersatzteil gesucht und bekam es “prompt” nach einem Monat aus China geliefert. Natürlich ist man da skeptisch, wenn man ein Nicht-Originalersatzteil aus dem Land der aufgehenden Sonne geliefert bekommt, aber das macht es um so spannender. Nachdem ich mir bereits das Nexus 5 als Nachfolger gekauft hatte und das Ersatzteil gerade mal 35€ kostete, hatte ich nichts zu verlieren, denn ein zerstörtes Nexus 4 ist nichts mehr wert und eine Versicherung hatte ich nicht (jetzt schon!).

Also, Ersatzteil angekommen, alle winzigen Schrauendreher bereitgelegt und es kann schon los gehen!

Auf YouTube findet man diese Anleitung von, an die ich mich weitgehend gehalten habe:

Man braucht einen Föhn zum Erweitern des Metalrahmens. Weiters einen Kreuzschraubendreher und einen Torx T5 in Barbie-Größe, letzteren hatte ich bereits von einer anderen Reparatur, ich glaube an meiner Digitalkompaktkamera, bereits in meinem Tool-Sortiment. Außerdem ist es sinnvoll, das Gerät mit einem Plektron oder ähnlichem aus Plastik zu öffnen und nicht wie ich mit einem Buttermesser, dann hinterläßt man weniger sichtbare Spuren auf dem Gerät.







Die Reparatur hat etwa eine Stunde gedauert und ich denke, wenn ich das regelmäßig machen würde, könnte man das Gerät wohl in 10 Minuten reparieren. Ein Spaß war es allemal und der Patient hat überlebt und strahlt wieder in gewohntem Glanz.


Frauen in der IT – die helle Seite der Macht

Auf der hellen Seite der Macht

Frauen in der IT. Na, und?

Es vergeht ja kaum eine Woche, wo nicht wieder in irgendeinem Magazin, Radio oder Zeitung skandiert wird: “Oh mein Gott! Es gibt so wenig Frauen in der IT”. Meine Antwort darauf: Na, und?

Ebenso dieses ermüdende Gerede über Vereinbarkeit von Kind und Karriere oder die Frauenquote im Management… Ich arbeite seit 13 Jahren erfolgreich in der Branche und leite gerade mein drittes agiles Software-Entwicklerteam und ich mache das mit Leidenschaft. Keiner fragt mich, ob ich wegen einer Quote eingestellt bin, sondern ich mache das, weil ich gut bin. Vom Team werde ich unterstützt (und geliebt) und die Geschäftsführer schätzen mich. Was will man mehr?

Wenn ich jemanden neu kennenlerne und dann erzähle, dass ich Software-Entwicklerin bin, kommt zu 90% immer eine dieser beiden verblüfften Reaktionen:

  • “Was? Wirklich? Ich kann mit Computern ja gar nicht umgehen…”
  • “Was? Wirklich? Da gibt’s aber nicht so viele Frauen, oder?”

Auf die erste Phrase antworte ich gerne mit dem naheliegenden Witz: “Ich auch nicht! Aber verraten Sie es nicht meinem Chef!” und auf die zweite würde ich am liebsten gar nicht antworten. Natürlich ist Small Talk dazu da, um über das Offensichliche zu plaudern, aber wenn ich nur jedes Mal einen Cent für jedes verwundertes Gesicht über meinen Beruf bekommen würde… Naja, ich würde vermutlich eh weiter das gleiche machen, das ich auch jetzt tue!

Wieso müssen wir immer so einen riesen Wind drum machen, was sich von ganz von alleine auflösen wird? Ich denke, das ist alles nur ein aufgebauschter Sturm im Wasserglas.

Aber, wo sind die Frauen?

Wo sind die Frauen?

Heute (12.4.2014) bin ich am BarCamp Graz und war bei den Session vom App Dev Camp, wobei ich (wiedermal) die einzige Frau war. Bei den letzten ViennaJS Meetups war ich eine der wenigen weiblichen, wobei man schon sagen muss, dass einige Langhaarige (und einige mit Brüsten ;) ) dabei waren.

Es gibt löbliche Veranstaltungen wie Rails Girls, die Frauen/Mädchen das Programmieren näher bringen sollen, oder Digitalista, ein Netzwerk nur für Frauen. Aber meine Frage ist: Brauchen wir Frauen denn das alles wirklich? Unterstreicht diese Aussondierung nicht noch zusätzlich, dass wir es nicht von allein schaffen und extra Hilfe brauchen? Wozu positive Diskriminierung wie Frauenquoten etc.? Ich hab noch nie einen Programmierclub gesehen, der dazu da war, nur Buben zu fördern – und glaubt mir, Frauen sind unter Burschen IMMER mehr als willkommen. Man kann z.B. in den Hackerclub Metalab in Wien reingehen und sich aufgrund der reinen Anwesenheit bewundern lassen.

Wie wärs, wenn wir einfach einmal so tun, als wär es ganz normal, dass es Frauen in der IT gibt? Reden wir lieber über dieses komische Völkchen der Geeks und Nerds. Das ist viel lustiger!

Frauen haben Vorteile in der IT

Selbstverständlich gibt es Leute, die Vorurteile haben, das möchte ich gar nicht leugnen. Der “gewöhnliche Alltagssexismus” aufgrund anerzogener Konventionen gehört ja fast schon zum Leben dazu wie das Koffein zum Morgen, und ich denke nicht, dass sich das bald stark ändern wird. Zwischen Männern und Frauen gibt es nun mal signifikante (körperliche) Unterschiede, die man nicht wegdiskutieren kann, also bekämpfen wir diese bitte nicht, sondern respektieren wir Grenzen und leben wir damit zusammen. Unterschiede sind Ungleichheiten, aber diese sollen nicht wertend behandelt werden.

Während meiner drei Studien an der TU Wien bin ich benachteiligt wie auch bevorzugt worden. Es gibt da eine lustige Geschichte mit einem Statistik-Professor, die ich jedem gern mal bei einem Bier erzähle, wo mein (weibliches) Auftreten Eindruck gemacht hat. Klar gibt es Unterschiede, wie man behandelt und behandelt wird, aber vieles hängt eher meiner Meinung nach mehr von Sympathie als mit dem Geschlecht ab. Und das kann jeder als Vorteil nutzen.

Frauen haben ihre Reize, das ist klar. Objektiv gesehen sind sie einfach hübscher anzusehen und mit einem kleinen Anstoß kann man (als Frau) das auch Nutzen. Ich plädiere für eine breite Charmoffensive von uns Frauen statt dem Gefühl, sich durchsetzen zu müssen und extra auf “männlich” zu tun und imaginären Spielregeln nachzujagen.

Nachdem ich bei knallgrau gearbeitet hab, hat mir einer meiner Ex-Chefs auch gesagt, dass sie extra wieder eine Entwicklerin anstellen wollten, da es das Team sehr gut auflockert. Das kann ich nur bestätigen. Ich hab das Gefühl, dass es bei “Würstchenparties” einfach etwas gröber zugeht (Stichwort: Machogehabe, Alphatierverhalten… sorry für die Verallgemeinerung) und Teams generell besser funktionieren, wenn sie ausgewogen sind.


Interessant ist, dass in vielen Branchen Leute berichten, dass sich die Atmosphäre ab der Inklusion der ersten Frau ändert, viel stärker als bei jeder weiteren. Mit anderen Worten: Der Unterschied liegt darin, ob mindestens eine Frau im Team ist, nicht darin, wie viele es sind.

Man kann und soll Frauen in IT-Teams stecken, genauso wie qualifizierte Leute mit unterschiedlichen Hintergründen etc. Diversität ist immer eine Bereicherung!

Gendern heißt (nicht) Ändern

Und noch ein Wort zum Gendern: Ich glaube, dass das gerade nur ein pseudo-altruistischer Trend ist, der auf lange Sicht sich nicht bestand hat. Wieso Unterschiede suchen, sie betonen, und dann versuchen sie wieder umständlich aufzulösen?

Ich hatte auch Diskussionen, ob ich nun das Binnen-I bei meiner Dissertation verwenden soll, oder die doppelte Schreibweise (etwa “der Benutzer und die Benutzerin”) und habe schließlich komplett drauf verzichtet zugunsten der Lesbarkeit des Textes (wobei die dopplelte Schreibung mir locker drei Seiten mehr Text gebracht hätte). Also hab ich eine kurze Erklärung im Vorwort geschrieben. Das reicht für mich, denn ist es nicht Feministisch genug, überhaupt eine Diss in technischen Wissenschaften auf der TU Wien zu schreiben?

Vergesst die Unterschiede

Es geht nicht darum, dass Frauen bevorzugt werden oder nicht. Ich finde, das ist sowieso die falsche Frage. Der “Kampf der Geschlechter” soll einfach ruhen gelassen und am besten gleich vergessen werden.

Wie wär’s, wenn wir nicht unsere Zeit damit verschwenden, Unterschiede zu suchen, sondern uns um ein konstuktives Miteinander bemühen! Chauvinismus gibt’s und ich denk, den werden wir auch nicht los, aber es hilft nicht, darüber zu jammern, sondern als gutes Beispiel eigene Zeichen zu setzen. Wer Unterschiede erwartet, wird auch welche finden, ich finde allerdings die Gemeinsamkeiten interessanter. Und das “Problem” (das keines ist), dass zu wenig Frauen in der IT sind, wird sich ganz von allein lösen.

Zur Person:

Dr. Barbara Ondrisek hat drei Studien an der TU Wien abgeschlossen und arbeitet seit 2001 erfolgreich größtenteils als Freelancer in der IT als Senior-Software-Entwickler, Java/Android-Entwickler und Scrum Master. Ohne “in” ;)

Ein Plädoyer gegen Outsourcing


Nachdem ich immer und immer wieder mit Argumenten für Outsourcing – oder auch “Near-/Off-Shore Development” oder wie man es auch immer nennen schönreden möchte – überschwemmt werde, möchte ich nun ein für alle mal klarstellen: Outsourcing ist eine schlechte Idee.

In meiner Heimat, der Software-Entwicklung, bedeutet Outsourcing, dass die Entwicklung (oder ein Teil davon) an einen meist geografisch deutlich entfernten und preislich (zumindest auf den ersten Blick) äußerst begünstigten Ort ausgelagert wird. Nicht zu selten kann es sich dabei um eine (Tochter-)Firma in einer indischen (in Bangalore haben IBM, HP, Accenture etc. Niederlassungen), kanadischen, irischen oder einer auch (nah-)östlichen Stadt handeln. So kann man sich Software in vermeintlich lukrativen, weil anfangs deutlich kostengünstigeren, (Sub-)Unternehmen erstellen lassen.

Warum überhaupt?

Nicht selten wird outgesourced, da das Know-How im eigenen Unternehmen fehlt und ebenso die Zeit, dieses aufzubauen. So werden als Quick’n’Dirty-Alternativen Dienstleister engagiert, die das Gewünschte anbieten und mit einem Stundensatz bestechten, der bei vielleicht nur einem Drittel von dem in Österreich/Deutschland liegt. Auf dem Prinzip der Auslagerung basiert ja eigentlich die gesamte IT-Branche, da Aufträge an andere vergeben werden und gern für ein fertiges Produkt inkl. Gewährleistung gezahlt wird – ein sowieso vollkommen veralteter Gedanke, Software als in sich abgeschlossenes Werk zu betrachten. Denn Software lebt! Wird Software nicht mehr weiterentwickelt, stirbt sie fast augenblicklich.

Häufig wird Outsourcing so eingesetzt, dass billige “Fachkräfte” eingekauft werden, um einen Engpass im Unternehmen auszugleichen. So wird ein Teil der Entwicklung dann vielleicht nach Bangalore ausgelagert, aber das Management bleibt in Wien. Dabei werden aber oft einige Kosten nicht mitgerechnet, wie der Mehraufwand in der Qualitätssicherung, der Kommunikation oder der (Wieder-)Eingliederung des Know-Hows in das Unternehmen. Kurzfristig lassen sich sehr wohl Kosten reduzieren, aber langfristig halst man sich ein teures Problem auf, das man vermeiden hätte könnten.

Die Lüge

Was häufig bei Outsourcing zugunsten der hübsch niedrigen Zahlen für den Entwicklerstundensatz vergessen wird, ist:

  • Persönliche Kommunikation kann NICHT ersetzt werden.
    Im Sinne von Scrum sitzt das Entwickler-Team möglichst im selben Zimmer.
  • Kulturelle Unterschiede zwischen Entwicklern unterschiedlicher Länder.
    Das bedeutet vor allem Arbeitsmoral und Loyalität.
  • Verständigungsprobleme aufgrund unterschiedlicher Sprachen.
  • Der immer unterschätzte Koordinationsaufwand.
    Wenn wir Entwickler schon schwer verstehen, was das Marketing will, obwohl wir beim selben Meetingraum sitzen…
  • Know-How-Verlust.
  • Höherer Planungsaufwand.
    Auch nach Fertigstellung des Projektes zur Reintegration ins auftraggebende Unternehmen.
  • Enorme Qualitätssicherungskosten.
    Zumindest das Userinterface muss erneut wieder von einem deutschen Native Speaker überprüft werden. Rechtschreib- und Grammatikfehler werden nicht erkannt.
  • Verlust des informellen Informationsaustausches.
    Plauderei beim Mittagessen etc.
  • Schlechtes Image.
    Die Zeiten, als Outsourcing noch als gute Möglichkeit gewertet wurde, sind definitiv vorbei.
  • Verlagerung der Wirtschaftsleistung weg ins Ausland.
    Besonders gefällt mir die Beschreibung bei der Vergabe des Negativpreises des Unwort des Jahres (und das war schon 1996!):
    Imponierwort, das der Auslagerung/Vernichtung von Arbeitsplätzen einen seriösen Anstrich zu geben versucht”

Outsourcing macht meines Erachtens nur Sinn, wenn:
– es sich nicht um das Kerngeschäft des Unternehmens handelt,
– es ein in sich abgeschlossenes englischsprachiges Projekt handelt (und alle “Externen” auch gut Englisch können),
– nicht agil entwickelt wird (allerdings sowieso eine Todsünde – Ich schlafe ja bekanntlich mit dem Agilen Manifest unter dem Kopfkissen. Und das ruhig und sehr zufrieden).

Machen wir es richtig!

Die Alternative zu Outsourcing liegt somit auf der Hand: Aufbau eines qualifizierten (agilen) Teams als eigene Abteilung oder Subunternehmen in unmittelbarer Nähre zum Produktmanagement statt Ausgliederung. Sollen einzelne Mitarbeiter (kurzfristig) ersetzt werden, dann können das gern externe sein, die sich aber möglichst stark ins Team integrieren (Anwesenheit). Outsourcing sollte nur im äußersten Notfall in Erwägung gezogen werden, und am besten nicht mal dann. Lieber qualifizierte Software-Entwickler einladen und Know-How im eigenen Unternehmen aufbauen. Versteht mich nicht falsch, ich bin nicht eine, die glaubt, dass ihre Mitarbeier nur dann arbeiten, wenn ich sie sehe. In einem gut eingespielten Team kann Homeoffice durchaus üblich sein… aber das zu erörtern sprengt nun hier wohl den Rahmen.

Ich liebe und lebe agile Software-Entwicklung und arbeite gern eng mit meinen Mitarbeitern, Kollegen und Kunden zusammen. Als Scrum-Master kenne ich die Vorteile von Transparenz, Kommunikation und Innovation und bringe diese täglich zum Einsatz.

Naja. Und falls jemand diesbezüglich eine Beratungsleitung von mir in Anspruch nehmen möchte… Nun ja, ihr wisst ja, wo ihr mich findet. ;)

Update: Ein weiterer Artikel im Standard gegen Outsourcing in öffentlichen Vergabeverfahren