Liip Blog https://www.liip.ch/de/blog Kirby Thu, 23 May 2019 00:00:00 +0200 Neueste Artikel aus dem Liip Blog de Wingo, what you see is what you get https://www.liip.ch/de/blog/wingo-what-you-see-is-what-you-get https://www.liip.ch/de/blog/wingo-what-you-see-is-what-you-get Thu, 23 May 2019 00:00:00 +0200 Ein user-centered Design

Wingo ist die 100%ige Online-Telekommunikationsmarke für Millennials – und Teil des Produktportfolios von Swisscom. Wingo arbeitete mit Liip zusammen, um eine neue Website zu entwickeln, die sich auf die User konzentriert. Wir sind bekannt für unseren User Experience Ansatz und die Qualität der von uns gelieferten Projekte.

Das 5S model und Liip

Wir haben das 5S-Modell von Garrett verwendet, um die User Experience (UX) zu definieren. 5S für Strategy, Scope, Structure, Skeleton und Surface. Wir gehen diese fünf Schritte systematisch durch. Sie bilden eine logische Abfolge, die von einer abstrakten Ebene ausgeht und sich schrittweise auf konkrete Aspekte konzentriert. Dies stellt eine intuitive Gestaltung der User Experience sicher. Und schafft ein solides Fundament für die Entwicklung der Website.

Abbildung: Die “Strategy” zeigt auf, wie die Website in die Strategie unserer Kunden passt und gleichzeitig die Bedürfnisse der User erfüllt. Die “Surface” Ebene bringt die konkreten Details des Erscheinungsbildes zum Anschein. Quelle: Jesse James Garrett

Das 5S-Modell und ein starkes Branding

Zu Beginn unserer Zusammenarbeit mit Wingo haben wir Markenrichtlinien erhalten. Diese wurden interpretiert, um mit den Best Practices von UX kompatibel zu machen. Eine Website muss eine Reihe von Kriterien erfüllen, damit User schnell die gewünschten Informationen finden und auch wiederkommen.

Der Ausgangspunkt war die Vereinfachung der Informationsarchitektur – ein wichtiger Schritt des Projekts. Dieser bezieht sich auf die ersten drei S des 5S-Modells: Strategy, Scope und Structure. Dann arbeiteten wir an den Designelementen im Zusammenhang mit dem fünften S, Surface. Das vierte S (Skeleton) kam zum Schluss. Das Skelett der Seiten wurde so aus den im Vorfeld validierten Markenkomponenten erstellt. Diese kleine Lücke hat es ermöglicht, bestimmte grafische Einschränkungen zu integrieren und die vielen Interessengruppen im Bereich Branding effektiver zu managen.

Die Zutaten für den Erfolg

Wingo gab uns die Möglichkeit, unsere UX-Fähigkeiten zu demonstrieren. Bei Liip wurden zwei Designer im Scrum-Team integriert. Und ein Mitarbeitender von Wingo hat sich voll und ganz dem Projekt gewidmet. Dies hat wesentlich zum Erfolg des Projekts beigetragen. Wir ermutigen Kunden auch, schnell und regelmässig Entscheidungen zu treffen, um sicherzustellen, dass die Termine eingehalten werden. Im Wissen, dass es immer möglich ist, beim nächsten Sprint zu iterieren. Der Einsatz des 5S-Modells ist auch eines der Schlüsselelemente für den Projekterfolg.

"Die Arbeit mit der 5S-Modell ermöglichte es uns, uns in jeder Phase des Projekts auf das Wesentliche zu konzentrieren. Obwohl unsere Frist sehr anspruchsvoll war, konnten wir dank Liips Expertise und den von Liip angewandten Arbeitsmethoden pünktlich eine neue, qualitativ hochwertige Website einrichten."
Maëlle De Bernardini, Wingo

Practice over theory: testen und iterieren

Wir haben auf unserem Wissen aufgebaut und uns selbst übertroffen. Lösungen, die wir uns vorher nicht vorstellen konnten wurden umgesetzt. Die Stärke eines Teams ist die Kombination der Fähigkeiten aller Beteiligten. Wird diese gefördert und kontinuierlich verbessert ist ein Team erfolgreich. Mit anderen Worten, unsere Kunden erreichen ihre Ziele und gleichzeitig die Erwartungen der User erfüllen.

Kontaktiere uns – wir finden gemeinsam heraus, wie wir die Benutzerfreundlichkeit der Website oder mobilen Anwendung verbessern und gleichzeitig ein starkes Branding zu gewährleisten.

]]>
Der neue miFKB-Bereich ist online https://www.liip.ch/de/blog/der-neue-mifkb-bereich-ist-online https://www.liip.ch/de/blog/der-neue-mifkb-bereich-ist-online Mon, 20 May 2019 00:00:00 +0200 Seit der Gründung von Liip praktizieren wir Scrum und leiten komplexe Projekte - die auch während der Implementierung Änderungen erfordern. Der miFKB-Bereich ist eines dieser Projekte. Wir haben die Infrastruktur- und Sicherheitseinschränkungen gemeistert, die sich aus dem Tätigkeitsbereich unseres Kunden ergaben. Und die Integration eines User Experience (UX-)Designers in das Scrum-Team hat die Agilität erhöht.

Zunächst haben wir ein Minimum Viable Product (MVP) definiert und entwickelt. Dies ist die Version der Plattform, welche die Bedürfnisse der Benutzer erfüllt, indem sie den Aufwand an Zeit und Geld minimiert. Diese erste Version wurde vor einigen Wochen veröffentlicht. Wir arbeiten bereits an einem Update. Neue Funktionen werden in Kürze hinzugefügt.

Unsere Lösungen sind so konzipiert, dass sie sich weiterentwickeln, basierend auf dem Feedback der User.

Agil und effizient

Um dem Wunsch der FKB nachzukommen, einen Kundenbereich auf der Website zu schaffen, haben wir ein Scrum-Team zusammengestellt. Ein Scrum Master, ein Product Owner, vier Entwickler, ein UX-Designer und eine Content-Spezialistin in einem Team.

Wir sind überzeugt, dass es sinnvoll und notwendig ist, den Kunden in das Projektteam zu integrieren. Der Aufbau eines interdisziplinären Teams mit der FKB ermöglichte eine hohe Effizienz während der elf aufeinander folgenden Sprints (22 Wochen). Unter Beachtung der wichtigsten Einschränkungen: die Infrastruktur und Sicherheit, die der Bankensektor benötigt.

Liip lebt grundsätzlich nach sieben Prinzipien. Unsere ausgezeichnete Zusammenarbeit mit der FKB wird durch unser Prinzip "flexibility over strength" perfekt veranschaulicht. Wir sind überzeugt, dass nur ein agiler und iterativer Ansatz diese Herausforderungen im Zusammenhang mit dem Bankensektor bewältigen kann. Diese Flexibilität ermöglicht es auch, die Strategie des Kunden umzusetzen und gleichzeitig die Erwartungen der Nutzer zu erfüllen.

Tailor made und user-centred

Jedes Produkt unserer Kunden ist einzigartig. Ebenso unverwechselbar muss die von uns entwickelte Lösung sein. Der UX-Designer nahm an jedem der elf Sprints teil, um den Erstellungsprozess noch agiler zu gestalten. Mit anderen Worten, um die Erwartungen der User des zukünftigen miFKB-Bereich bestmöglich zu erfüllen und gleichzeitig die Arbeit des Scrum-Teams zu optimieren.

Modelle werden während der Sprints erstellt

Oft werden alle Modelle von UX-Designern vorbereitet, bevor der erste Sprint beginnt. Es besteht daher die Gefahr, dass die Entwürfe nicht mehr den Bedürfnissen der Entwicklung entsprechen, da sich der Projektumfang mit fortschreitender Entwicklung weiterentwickelt.

Während des miFKB-Projekts haben wir die Erstellung dieser Modelle in die Sprints aufgenommen.

Der UX-Designer bereitete die Designelemente für den N+1-Sprint vor, während die Entwicklung an dem N-Sprint arbeiteten.

Dieser Ansatz ermöglichte es uns, besser auf Anpassungen zu reagieren. Aber es war auch eine grosse Herausforderung. Sicherstellen, dass die von den Entwicklung benötigten Modelle zum richtigen Zeitpunkt zur Verfügung standen. Um sicherzustellen, dass der Sprint reibungslos verläuft. Die Planung der Arbeit der UX-Designer war daher entscheidend.

Ein Styleguide als Kompass

Im ersten Workshop entwarfen wir gemeinsam mit den Kunden Skizzen der zukünftigen Plattform. Mit ihnen erstellten die Designer Modelle, direkt im Styleguide. Diese grafische Form ist ein unverzichtbares Werkzeug für Entwickelnde. Sie enthält eine Bibliothek von Styles und Komponenten. Ausserdem können Kunden im Styleguide das Seitenlayout und das Verhalten der verschiedenen Funktionalitäten visualisieren.

Das FKB-Team konnte auf Basis dieser Prototypen im Massstab 1:1 schnell Entscheidungen treffen. Weil die Styles genau auf das Endprodukt abgestimmt sind.

Wir sind überzeugt, dass sich der Umfang eines Projekts im Laufe seiner Entwicklung anpassen wird und muss. So nah wie möglich an den Erwartungen der User zu sein.

Diese Erfahrung war ein Erfolg. Wir freuen uns über die lohnende Zusammenarbeit mit der FKB. Und wir sind stolz, unser Prinzip "flexibility over strength" in die Tat umgesetzt zu haben. Deshalb werden wir die Erstellung von Designs bei unseren nächsten Sprints im miFKB-Projekt, aber auch in anderen Projekten systematisch integrieren.

]]>
Content is king, and AI will rule the world https://www.liip.ch/de/blog/content-is-boss https://www.liip.ch/de/blog/content-is-boss Thu, 16 May 2019 00:00:00 +0200 With more than 300 speakers and 50,000 visitors, the OMR conference is the biggest online communication event in the German speaking market, and a strong indicator of where the industry is headed. You can read all about our discoveries below.

Big topic #1: Content is replacing advertising

The topic of content was omnipresent throughout the conference. From general insights to full-on use cases, it was a hot topic that's sure to stick around for the foreseeable future.

Information and entertainment are one winning team

Image left: coffe roaster J.Hornig on chat bots – Image right: Facebook presenting user data

Despite the digitalization of our lives, humans will always be humans: We want to solve our daily problems and follow our interests. This is the point Ana from Austrian coffee roasters J. Hornig underlined with the quote from advertising legend Jean-Remy von Matt: “Good communication either entertains or supports.” And that’s why she and her team have chosen to use a chatty chat bot to help coffee lovers at home with any questions they may have. Nadine from Facebook pushed the point further with the platform’s statistics: Information (45%) and entertainment (46%) is what people seek out on Instagram.

Be patient & stay focused – success will follow

Left: Content Marketing Institute presents their magic formula – Right: Territory trusts in persistence

Brands have figured out that content is more important than advertising, and many have taken content production in-house. Some are even tracking the success of every bit and byte they post – like Joe Pulizzi’s Content Marketing Institute. His learning: Once you start putting out content regularly, it takes 12 to 18 month before you start seeing a return on your investment. Soheil Dastyari, CEO of content agency Territory, came to the same conclusion.

Involve your audience

Left: Investor David R. Bell believes in storytelling – Right: OMR believes in story sharing

The most powerful brand message is the one delivered by the brand’s users. That’s why investor David R. Bell puts his money into start-ups that have a story people want to share. “Orators not customers” is how he summarizes this trend. OMR conference founder Philipp Westermeyer presents the agrees that sharability is the new brand currency. His example to illustrate this trend is Balenciaga who created an extremely expensive Ikea bag replica just to create buzz.

Voice & audio - the revolution has begun

Left: "Gimlet's" podcasts give brands a voice – Right: "OMR" observes investments in voice recognition

Matt Lieber, cofounder of the podcasting platform Gimlet, knows that the second revolution of voice is upon us. The company has just been bought by Spotify and is now reaching millions more listeners. He presented some great insights: Gimlet identified that people have around 2.5 hours per day where they seek entertainment yet cannot look at a screen, like during their commute or when cooking. This is all potential time for a podcast, and the perfect place for a brand to be present for their users and deliver valuable content. An even bigger shift is predicted in voice command. Philipp Westermeyer underlines that with the example of how Amazon is investing in voice recognition. He explained that Amazon currently employs 10,000 people supporting its Alexa project and he showed us a page from Amazon’s job platform with more than 2000 open jobs in the area of voice regocnition at the moment.

Big topic #2: Artificial intelligence and use case “chat bots”

Yuval Harari’s vision for a world with AI

Image: Yuval Harari ponders all the (unexpected) issues AI will raise.

AI will soon know us better than we know ourselves. “What will happen to us when Coca-Cola finds out I’m gay before even I know?” Yuval Harari began his speech with a personal story: He didn’t realize that he’s gay until the age of 21. Yet in retrospect, he says, the signs were obvious. So a machine tracking his eye movement would have noted that he glances at the man in a picture instead of the woman. With that information in hand, Coca-Cola would then present him their product in conjunction with his deep and unconscious desires. And he would always opt for that brand because unconsciously he feels they understand him best. He has plenty more examples of how AI will intrude in our lives: What will happen to relationships when the refrigerator delivers on our needs us more precisely than our spouse? How will society change? His scenarios go even darker: What will happen when North Korea forces its citizens to wear bio-sensors that detect anger when looking at Dear Leader? His advice: Technology takes no side, so we must choose how we use it wisely.

China is way ahead of us

Image: OMR observes heavy investments in china

The many speeches about the Chinese market (speech 1, speech 2, speech 3) made it clear that we’ve got to keep watching out for what’s coming out of China. Predictions are that what we see today is just the very beginning, as huge investments are being made overseas, especially in AI. Philipp Westermeyer's example shows that a rather small city in China invests almost 10x more into AI than the entire European Union.

Chat bots become a commodity

Image: AI agency knowhere categorizes AI in three use cases

Frederik from AI agency Knowhere presented several use cases for chat bots. The ones we liked were the ChatYourself chat bot, which asks early Alzheimers patients questions about their life in order to support their memory later on. Another useful one for daily life is the Novi chat bot, which presents news in a user-friendly way. And then there’s the golden state warriors chat bot that let's you discuss sports results. Toothpaste brand Signal’s chat bot supports kids when brushing their teeth, and the alcoholics anonymouns's chat bot let's you discuss taboo topics in a private way. Medical device producer Dräger was also on stage to present their process to install a chat bot. After using the bot for about 6 months, they can already say it has reduced the amount of incoming questions by around 45%.

Chat bots win over a website and an app

Image: coffee roaster J. Hornig's presents their arguments for a chat bot

The coffee roaster J. Hornig wanted to create a “barista in your pocket.” They were looking for a digital solution for anyone with a coffee-related question. When exploring possible implementations, a chat bot won. Easy accessible via voice, conversational in tone, and with the free chat bot solution provided by Facebook Messenger, a single employee at the roastery could create a proof-of-concept within a month.

Consultancy firms have become the new marketeers

Image: Accenture presenting their view on AI - with the help of Arnold Schwarzengger

Interesting things are happening in the world of communication. Is it a good or a bad sign when Accenture and McKinsey have several slots in a marketing conference? Either way, it’s a solid indicator that data is taking over. Just as The Terminator predicted.

Side note: Agencies are dead - long live agencies

Image: Content agency wldmr illustrates how agencies and clients become one team

Platforms like Instagram, YouTube, Facebook, Snapchat, and Tiktok all held several speeches and masterclasses. Data agencies were quite present, as were several brands presenting their cases. What was missing? All the big creative agencies. If an agency was on stage, the focus was always on how they form a team with the client to yield the best results. The days where the agency was boss and told everybody how things are done are long gone. And we think that’s for the better, as brands know their own story best and we all need to find the user’s need in a joint effort.

This is actually what we at Liip believe in too. And visiting the OMR conference has underlined how important that is. We also believe in data and data analysis. The only thing that we don’t do: Work with influencers, a topic that was also quite present at OMR. Something to focus on next yea!

Overview

Big Topic #1: Content is replacing advertising

  • Information + Entertainment = A winning team
  • Be patient & stay focused – success will come
  • Involve your audience
  • Voice & audio - the revolution has begun

Big topic #2: Artificial intelligence and use case “chat bots”

  • China is way ahead of us
  • Chat bots become a commodity
  • Chat bots win over a website and an app
  • Consultancy firms become the new marketeers

Sources: header image rocketandwink.com

The experts behind this article

Thanks to Lena, Jenny and Daniel for content and copy cleverness. This article would not have been possible without you!

]]>
Cognitive UXD: Motivation & Flow https://www.liip.ch/de/blog/cognitive-uxd-motivation-flow https://www.liip.ch/de/blog/cognitive-uxd-motivation-flow Wed, 15 May 2019 00:00:00 +0200 In my first blog post Cognitive User Experience Design - Where Psychology meets UX Design I gave an overview about combining Psychology and Design. As mentioned in my second one, Cognitive UXD: Motivation, the topic Motivation is very comprehensive and has a valuable impact on design. Therefore, I take you on a short tour and describe the role of flow in design. In short, knowing the Flow Theory can help that the user comes or maintains in the flow zone. The aim is to “Go with the Flow!”

What is the Flow zone?

According to the psychologist Mihaly Csíkszentmihályi an excessive challenge leads to feelings of overload, frustration and anxiety. Contrary, excessive skills can cause feelings of underload, routine and boredom. Matching challenges to skills is therefore considered a key factor for flow.

Source: Concept by Mihaly Csíkszentmihályi; modified by Viktoria Kluckner

The state when challenges and skills are in the right balance are known as to be “in the flow”. Within this state, the person is fully immersed in a feeling of energized focus, full involvement and enjoyment of the moment. Being within this flow zone, the person loses track of time and/ or space, performs the task for a sheer pleasure, is intrinsically motivated and much more productive and happy.

How can we ensure to bring or to remain the user in the flow zone?

First, you need to know who your clients and your users are. What are their needs, desires, expectations, approach f.i. during the purchase process. The easiest way is to ask questions.
Here is a general selection that you can ask the client:

  • Who is your ‘typical’ user?
  • Why does the user buy the product?
  • Where will they use the product?
  • What are the most important tasks the user should fulfill when buying the product?
  • With which other products will yours be compared with?
  • What should the user think, feel or say?
  • What happens after the user bought the product?

Next, ask the user:

  • Why do you want to buy the product?
  • What are the most important tasks?
  • What do you think, feel or say?
  • What helps you with the purchase decision?
  • What happens after you bought the product?

With these first questions you get a first overview of the purchase process. Of course you need to dig deeper to get a more detailed understanding. You can ask for the reasons to buy one specific product:

  • What specific feature was the most attractive one for you?
  • What makes this feature so attractive for you?
  • How can you touch the user emotionally to make him a loyal user or that he remains a loyal user?

As you can see, a look from different perspectives is necessary. The more detailed and holistic you understand and involve your users, the better you can create experiences for them that will carry them along or make them to remain in the flow zone.

In this phase you have already achieved a lot. But don't forget to test and improve.
By measuring, you can see where the user flow is working and where it is not. Find out where a smooth process is interrupted and where the user falls out of the flow zone. Take a look at the dropouts and do a Usability Testing. Especially in Usability Testings you can directly observe the facial expression of the user and the behavior during the execution of tasks, which gives you even more information. You can see whether the user is in the flow zone, i.e. whether he is fully immersed in a feeling of energized focus, fully involved and enjoying the moment. Take the time to test. It's worth it and the key to make it right. You will receive clear indications of starting points to improve the experience.

Which recommendations can help?

As UX designers, we should ensure that users enter and stay in the flow zone to experience joy. These recommendations can help to increase flow in the design:

  1. Guide the users by providing information on what to do and how to do it.
  2. Ensure that the users understand where they are and what tasks they need to perform. Create f.i. a clear and intuitive navigation structure.
  3. Find out what disrupts the user’s workflow. Reduce confusion and interruptions such as notifications or bugs.
  4. Be close to the user’s semantic to reduce the cognitive burden. Think about how the user naturally wants to interact.
  5. Think about what is really needed and delete unnecessary interactions, content, etc.
  6. Ensure that there are no annoying, repetitive tasks or functions. This can be reduced with Usability Testings. Think about how you can make the experience smooth.
  7. Set clear and achievable goals such as the note to check the 4 meetings you have today in your calendar.
  8. Divide a big goal into several smaller ones. Let the user achieve more quick results while driving the big goal forward.
  9. Think about how the communication be improved to achieve the goal.
  10. Provide accurate and immediate feedback on actions. Visible, auditory or tactile feedback can give confidence that a process is running. If you press a calendar entry for a longer time, it gets a little bigger and you can move it to an earlier time.
  11. Give some rewards such as a free downloadable e-books or something similar that makes the user happy.
  12. Provide challenges that match the skills of the users. It is very important to have a good understanding of the users and their skills and to challenge them to stay interesting.

I hope that I could give you some interesting questions and recommendations. I wish you a lot of fun to create inspiring designs in order to bring or to remain the user in the flow zone. At the end of the day, our aim is to satisfy users.

In my next blog post I focus on Cognition and describe its role in design based on the Cognitive Load Theory.

]]>
Love is in the air https://www.liip.ch/de/blog/love-is-in-the-air https://www.liip.ch/de/blog/love-is-in-the-air Tue, 14 May 2019 00:00:00 +0200 The increasing use of social media, artificial intelligence and personal assistants could make us forget that we are human beings. Living beings. Loving beings. The motto of the 2019 edition of TEDxFribourg is LOVE. This 5th edition brought together enthusiasts who remind us that love is everywhere. In every action, every project, every adventure, every story we live.

Our crushes: Lovely ideas worth spreading

The topic of TEDx Fribourg 2019 was love. Eleven speakers made us travel for more than two hours. You will find a selection of my personal highlights below. And here are the videos of the presentations and the photos of the evening for you.

Johana Dayer and the wine, a vintage of love

What is love? Whether it is a passion, love for others, love for our planet, love for humanity, its strength lies in sharing. Johanna Dayer thus evokes wine as an experience that we savour together. An emotional story, actually.

Perfect ikigaï for the founders of The Green Drop

Estelle and Eléonore from The Green Drop found their ikigaï. The ikigaï in Japanese is the perfect alignment between passion, mission, vocation and profession. We recognize ourselves in this quest for meaning. We are convinced that an action makes sense when we are personally driven and when it is linked to our values.

Azadeh Tadjar: love has the power to provide solutions

A lot of people share the idea that a meaningful approach comes from the heart. Problem-solvers are all over the world. They are so in love with what they do that it is hard to not be inspired. Azadeh Tajdar is convinced by the contagious power of love. And so are we. Let’s share these ideas and spread the love.

These experiences of life shared by the speakers of TEDxFribourg reminded me of several projects we led. Projects are nothing without people, whether users, customers or Liipers. Like One.Thing.Less which enables individuals to regain control over their personal data. Or like Urban Connect and Smart Energy Link, two projects born from the commitment of start-ups for a more sustainable future. Or Freitag City Guidelines, which give a voice to local heros who are passionate about their cities.

Our contribution to TEDxFribourg: Make a wish

If we participate in a TEDx event, we foster participants to make a wish. More than 30 wishes were hung on our Make a Wish tree. The majority of authors want more love, harmony in the family, happiness and prosperity in a world that better protects the environment. A few wishes were related to a personal project or the search for meaning in daily work. Not to mention the wishes related to new forms of work organisation.

Our commitment: Cheers to love

Love is also about human relationships, about what unites us. What if it starts over a glass of cider? This year, we served apple and pear juice and cider at Liip Bar. We spoke to Jacques Perritaz from the Cidrerie du Vulcain. An enthusiast who is committed to the cultivation of old varieties of apples, pears and quinces in the countryside of Fribourg.

We like these events where ideas pop up, during a conversation, a drink or on a Make a wish card. And what we like even more is to develop these ideas with you.

To wrap it up: Cheers to love!

]]>
Pourquoi j'aime être une apprentie informaticienne chez Liip https://www.liip.ch/de/blog/pourquoi-j-aime-etre-une-apprentie-informaticienne-chez-liip https://www.liip.ch/de/blog/pourquoi-j-aime-etre-une-apprentie-informaticienne-chez-liip Mon, 13 May 2019 00:00:00 +0200 Pourquoi l’informatique ? Pourquoi ce choix d’apprentissage ?

Parce que j'apprécie l’informatique depuis que je suis petite. Et je me suis dit “pourquoi ne pas essayer de faire quelque chose que j’apprécie ?”.

Comment c’est l’informatique pour les filles ? Comment est-ce que tu perçois l’informatique en tant que fille ?

J’ai l’impression qu’il y a de plus en plus de filles qui veulent s’engager dans un métier qui touche à l’informatique. Je trouve que c’est bien parce que les métiers ne doivent pas être réservés à un genre en particulier. Il n’y a pas encore beaucoup de filles qui font l’apprentissage de l'informatique dans mon école. Par contre, au bureau de Liip à Fribourg, nous sommes quatre apprenti·e·s en informatique, dont deux filles.

Qu’est-ce que cela fait de travailler dans un métier occupé principalement par des hommes ?

Pas grand chose, parce que les femmes sont très bien intégrées dans l'entreprise et il n’y a pas de différence. Chez Liip, un homme ou une femme aura le même salaire et c’est pareil pour les apprenti·e·s. La seule vraie différence est à l’école. Dans ma classe, on n'est que 2 filles sur 21 élèves.

Pourquoi est-ce que des filles devraient faire ce métier ?

Parce que ce n’est pas un métier que pour les hommes et qu’on a le droit de faire ce qui nous plait sans contrainte.

Qu’est-ce que cela fait de travailler chez Liip ? D’avoir Liip comme entreprise formatrice ?

C’est génial parce qu Liip ne fixe pas beaucoup de règles. Cela me demande d’être autonome et responsable. En plus, il y a vraiment une bonne ambiance dans l’entreprise. Tout le monde se donne bien. Les apprenti·e·s sont considéré·e·s comme des employé·e·s à part entière. Et cela nous permet de bien nous intégrer à l’entreprise.

Quelle est l’ambiance au bureau ? Quelles sont les activités organisées chez Liip ?

Liip organise beaucoup d’activités, autant pour les apprenti·e·s que pour les employé·e·s. Par exemple, une fois par an Liip organise et finance une journée de conférences durant laquelle les cinq bureaux se rassemblent. Il y a aussi des journées dédiées aux apprenti·e·s. Durant celles-ci, les apprenti·e·s des cinq bureaux de Liip se rassemblent pour parler de leurs projets.
Nous organisons aussi des journées portes ouvertes à Fribourg pour toutes les personnes qui aimeraient découvrir le métier d’informaticien·ne de développement. Cette journée est entièrement organisée et animée par les apprenti·e·s de Fribourg. Ou encore, on partage nos repas de midi ensemble, on fait du sport et plein d’autres activités.
En ce qui concerne l’ambiance, c’est génial car tout le monde s’entend bien.

La pause parfaite selon les apprenties : Sofia et Ksénia jouent à Mario Kart

Qu’est-ce que tu apprends ? Parle-moi d’un des projets sur lesquels tu travailles.

En ce moment, je travaille sur un site web au sein du bureau de Fribourg. J’ai aussi développé un petit jeu pour apprendre les bases de la programmation. J’ai également appris à gérer un serveur de gestion de publicités en ligne. J’apprends aussi beaucoup sur les autres domaines de l’informatique à l’école.

Quelles sont les difficultés que tu rencontres ?

En soit, c’est un métier assez difficile. Il y a beaucoup de notions à connaître. Par exemple pour faire de la programmation, je dois aussi connaître des notions des autres domaines de l'informatique. Il y en a trois: informatique d’entreprise, développement d’applications et techniques des systèmes.

Quelle est la journée type d’une apprentie informaticienne ?

Il n’y en a pas vraiment. Mes journées se ressemblent mais ne sont jamais pareilles. Je ne vais pas faire exactement la même chose que le jour d’avant ou que la semaine précédente.
En plus, Liip est une entreprise qui favorise la “self-organisation”, c’est-à-dire que les employé·e·s s’organisent tou·te·s seul·e·s. Par exemple en tant qu’apprenti·e·s, on doit faire des journées de 8 heures mais les horaires sont flexibles. Une de mes seules contraintes est d’être présente lors du daily le matin. Je peux aussi prendre une pause de midi plus ou moins grande.
Il y a aussi des périodes entièrement consacrées à l’école. C’est-à-dire que pendant plusieurs mois, je vais tous les jours à l’école. Le reste du temps, je le passe en entreprise. Au final, je ne trouve pas qu’il y ait une journée “type” pour un·e apprenti·e chez Liip.

Début mars, j'ai préparé du contenu pour le compte instagram de Liip afin de présenter à quoi ressemble mon apprentissage d'informaticienne.

Qu’est-ce que tu changerais dans ton apprentissage ? Et pourquoi ?

Personnellement, je ne changerais rien. Parce que je fais quelque chose que j’aime. Parce que je travaille avec des gens que j’apprécie. Bref, je travaille dans une entrepris juste parfaite.

N'oublie pas de lire les réponses de Ksénia !!!

]]>
Mon quotidien en tant que femme apprentie dans l'informatique ! https://www.liip.ch/de/blog/mon-quotidien-en-tant-que-femme-apprentie-dans-l-informatique https://www.liip.ch/de/blog/mon-quotidien-en-tant-que-femme-apprentie-dans-l-informatique Mon, 13 May 2019 00:00:00 +0200 Pourquoi l’informatique ? Pourquoi ce choix d’apprentissage ?

Je n'ai pas eu besoin de beaucoup réfléchir à ce que je voulais faire plus tard. Déjà petite j'aimais bien trafiquer avec les ordinateurs et la technologie. Quand j'ai dû choisir, c'était comme une évidence. Avant de commencer l’apprentissage, j'avais tout de même fait quelques stages, ce qui a permis de confirmer que c'était bien ce que je voulais faire.

Qu’est-ce qui te plait dans ton apprentissage ? Dans ce métier ?

Dans l'informatique, ce que j'aime beaucoup, c’est la diversité du métier. J'aime que mon travail soit varié. Je peux travailler un moment sur un site web, et ensuite changer complètement en configurant des réseaux. J'aime aussi beaucoup utiliser mes mains sans que cela soit pour autant artistique ou trop physique comme un métier dans le bâtiment. J’aime aussi le fait que l’informatique demande des compétences techniques mais aussi intellectuelles.

Quelles sont les difficultés que tu as rencontrées ?

Je n’ai pas rencontré de grandes difficultés. Ce qui est important c’est d’être organisée. Ce que j’apprends aujourd’hui à l’école ou chez Liip, j’en aurai besoin demain mais aussi dans deux mois par exemple. La clé pour réussir un apprentissage comme celui-ci est une bonne documentation afin de trouver rapidement une solution.

Comment c’est l’informatique pour les filles ? Comment est-ce que tu perçois l’informatique en tant que fille ?

Je pense que l'informatique est encore beaucoup trop perçu comme un métier très technique alors que cela n’est pas le cas. Ce qui est sûr, c’est que chez Liip, il n'y a pas de différence entre filles et garçons. C'est l'une des choses que j'admire ici, l’égalité entre hommes et femmes.

Qu’est-ce que cela fait de travailler dans un métier occupé principalement par des hommes ?

Au début c'est assez spécial car on remarque qu’on est pas beaucoup de femmes. Puis, on n’y prête plus attention. Le but c’est de rendre ce métier plus attractif pour les femmes aussi.

Qu’est-ce que cela fait de travailler chez Liip ? D’avoir Liip comme entreprise formatrice ?

J'aime travailler chez Liip car j’ai une grande liberté dans le choix de ce que je souhaite faire. Comme n’importe quel Liiper d’ailleurs !

Quelle est la journée type d’une apprentie informaticienne ?

Les cours liés à mon apprentissage sont regroupés en blocs de six mois. Je passe donc six mois à l’école, puis six mois en entreprise, et ainsi de suite.
Lorsque je ne suis pas à l’école, j'arrive à 8 heures au bureau. Je m'installe, puis je vais chercher un thé dans la cuisine. Quand je reviens à ma place je commence par passer en revue mes mails et les tâches en cours. Je commence soit une nouvelle tâche, soit je continue celle du jour d'avant. Ensuite vient l'heure du daily. C'est un moment durant lequel on partage les infos relatives au bureau dans un premier temps. Puis on se regroupe par équipes de projet afin de partager ce que l'on a fait le jour précédent et ce que l'on va faire aujourd'hui. Après le daily, c’est l’heure de la pause, un moment de partage et de saveur le temps d'un café ou d'une tisane.

Avec les autres apprenti·e·s, une fois par semaine nous mangeons au McDo. Cela nous permet de partager des anecdote sur l'école ou notre quotidien. Vers 15 heures, je fais en général une petit pause avec les autres apprenti·e·s et/ou avec les Liipers de mon équipe. C’est souvent l’occasion de faire une petite partie de fléchettes, de ping pong ou encore de Mario Kart. En fin de journée, je fais un point avec mon formateur (maître d’apprentissage) afin de clarifier les éventuelles questions que je peux avoir. Et ce que j’aime beaucoup, c’est l’apéro du jeudi soir parce que je peux partager un moment avec mes collègues dans un contexte non professionnel.

Qu’est-ce que tu apprends ? Parle moi d’un des projets sur lesquels tu travailles.

En ce moment, je travaille sur un projet en PHP au sein du bureau de Lausanne. Avant ce projet, j'ai travaillé sur un site web avec le framework drupal qui permet de gérer des contenus dynamiquement.

Ksenia travaillant sur un projet php

Pourquoi est-ce que des filles devraient faire ce métier ?

Je pense que plus de filles devraient choisir ce métier car c'est un métier qui offre la possibilité d'évoluer. Même si tu te rends compte plus tard que ce n’est plus exactement ce que tu souhaites faire, les connaissances acquises te seront toujours utiles dans un monde qui se digitalise de plus en plus.

Sur la photo ci-dessus, je suis à droite et porte un pull rouge. Je joue avec Sofia, l'autre apprentie informaticienne.
Découvre ses impressions en tant qu'apprentie en lisant son article.

]]>
How to keep your mobile app retention rate high? https://www.liip.ch/de/blog/how-to-keep-your-mobile-app-retention-rate-high https://www.liip.ch/de/blog/how-to-keep-your-mobile-app-retention-rate-high Mon, 13 May 2019 00:00:00 +0200 Usage is important, not downloads

Building a mobile application is just the first step. You then need to have users who download it. And most importantly, that keep using it.

That's why I recurringly advise Liip clients to avoid focusing on vanity metrics such as the number of downloads of an app.
Because you could well have 10'000 new customers per day, if all delete your app in the following 10 minutes, then it's useless.

Instead, one should focus his analytics efforts on tracking app usage. This will give you stronger signals of how your mobile app product is performing.

In other words, you better have 100 downloads a month, while retaining 90% of your users, vs. 10'000 downloads a month and 1% of retention rate (i.e. 100 recurring users).

What can I do to retain my users in a mobile app?

There are two main patterns to keep your retention high: push notifications and app onboarding.

Actually there is a third one. And this third one is actually the #1 to take into consideration: build an app that solves a real user's problem.
That can sound obvious, but you should first put all your efforts into building a Minimum Viable Product that bring customers. Else, any push notifications or a better onboarding will be useless efforts.

And when I say customers, I don't mean people you get to signup via ads on Facebook or Google. I mean customers that crave to buy or download your app because it solves such a problem into their life that they can't think of another alternative.

Mobile app usage drop get worse over time
Mobile app usage drop get worse over time — Credits: Luke Wroblewski

That being said, let's assume your mobile app has a purpose that drives people in. Then let see how we can bring more retention.

Why? Well, a gentle reminder about numbers:

  • 25% of apps are abandoned after 1st time usage
  • 34% of apps are opened 11 times or more
  • 77% avg. daily active users loss in first three days after install
  • 95% avg. daily active users loss 90 days after install

Another way to visualize app retention average per industry (data as of year 2017):

Mobile app average retention rate per industry
Mobile app average retention rate per industry — Credits: localytics.com

Push notifications

I will not offend you and explain what's a push notification (just in case ;)).

The role of them are simply to remember your users that you exist on their smartphone. And it indeed works.

If you look at all the data that exist, it seems like a good idea to go for push notifications:

Push notifications are helpful to keep the retention high after the first month
Push notifications are helpful to keep the retention high after the first month — Credits: Luke Wroblewski

Nevertheless, your must be cautions with this tool. A push notification is like speaking face-to-face with someone. If you bother the person, they will just ask you to stop talking to them.

A good example is when Revolut sends me a push while I'm abroad in Europe to let me know the exact amount in CHF of my transaction. I feel it's like if my banker was sending me an SMS to re-assure me that all fees are under control and that I can enjoy my holidays.

Revolut mobile app useful push notification
Revolut mobile app useful push notification

On the other hand, you have Apple News who sends me a push like this without any valuable stuff for me: "See what you've been missing." When I receive this, I feel like a I'm at the train station and hear a guy yelling "Breaking news here, buy our newspaper!" At this point I just wish I enter the train and stop getting bothered by him. With push notifications it's easy, you can just turn them off.

Apple News mobile app useless push notification
Apple News mobile app useless push notification — Credits: Luke Wroblewski

So again, if your entire business model is built on push notifications to retain users, it's similar to the ones who are built on top of spamming users with email. It won't work. It's doomed to fail.

As a Product Manager/Owner, ask yourself the following: honestly, would I ‌enthusiastically accept this push notification myself?

Onboarding

Another key manner to retain your users is onboarding. When I say that to our Liip clients, people often picture the infamous (boring!) screens one has to swipe through at first app download.

As you can see below, major companies like Intuit, Vevo, and Google consistenly observed the same patterns during user testing:

  • Nobody read any of it
  • People desperately look for ways to skip it
  • Some Intuit user interviews ended up in "Please make this stop!" and "You [the Product Owner] just want to make this get out of my way."
Boring and useless onboarding screens of Intuit former mobile app
Boring and useless onboarding screens of Intuit former mobile app — Credits: Luke Wroblewski
Swipe, swipe, and re-swipe. Without reading any of it!
Swipe, swipe, and re-swipe. Without reading any of it! — Credits: Luke Wroblewski
Bla bla bla. Skip. Argh finally the real stuff!
Bla bla bla. Skip. Argh finally the real stuff! — Credits: Luke Wroblewski

The three conclusions they all came to were best summarized by Luke Wroblewski at the last Conversions@Google conference:

  • Get to product value asap - but not faster
  • Ruthlessly edit distractions from product value (cut, cut, and cut again as our partner QoQa learnt to do it :))
  • Teach in the moment with integrated UI — I highlight the last part because research shown that when the UI is consistent with the corporate identity, then conversion increase, else it decreases (you see it as these pesky Windows 95 popups you cancel by default!)

Keeping the same examples as above, below is how it translates:

Intuit mobile app Just-In-Time useful onboarding
Intuit mobile app Just-In-Time useful onboarding — Credits: Luke Wroblewski
Vevo ruthlessly edited onboarded screens to keep only its essence
Vevo ruthlessly edited onboarded screens to keep only its essence — Credits: Luke Wroblewski
Google Photos mobile app going asap to the product core value
Google Photos mobile app going asap to the product core value — Credits: Luke Wroblewski

Lessons learnt

  • Mobile app average retention rate is 40% after 1 month, 30% after 2 months, and 25% after 3 months
  • The most critical point to keep this rate high is to deliver true value to your users — value you would yourself use
  • Push notifications and onboarding are two ways to increase retention rate
  • A push notification is like speaking face-to-face with someone. If you bother the person, they will just ask you to stop talking to them
  • To be useful, onboarding screens must be edited to the minimum needed and just-in-time with integrated UI

Do you have any other tip to increase mobile app retention rate, without becoming a huge spam factory?

]]>
UX Copenhague 2019: consent & privacy https://www.liip.ch/de/blog/report-ux-copenhague-2019 https://www.liip.ch/de/blog/report-ux-copenhague-2019 Wed, 08 May 2019 00:00:00 +0200 In this article, I share a personal selection of takeaways. For further inspiration, I recommend you to read the UX Copenhague 2019 full programme.
*Thank you UX Copenhague for the pictures. Sheryl Cababa on the cover picture.

At Liip, we advise companies. We help building and developing their product and service.
Every Liiper benefits from an education budget so we keep learning to deliver state-of-the-art solutions. (Thank you Liip for this learning opportunity).
I recently started questioning the place of ethics in my work as a UX writer. I am convinced that us, people creating digital tools, we have a responsibility in the projects we build. We can have a role in advising about ethical decisions in a product and service. I was appealed by the theme of UX Copenhague 2019. I expected to listen to experiences, discover tools and methodologies.

In two days of conference at UX Copenhague, I heard so many ideas and insights. I was like a sponge that absorbs as much as possible. Today, I feel that I am still processing information and finding ways to apply my learnings in my work.
Many thanks to the organisation team and all the speakers <3

“Internet, go the f%& ck to sleep!” with Jim Forrest

In this talk, Jim questioned the constant availability and consumption that internet offers. He discussed the waiting caused by the uploading of the early internet, the retention metrics of platforms and notification micromanagement.

Jim recalled with humor and enthusiasm his experience of immigrating in Denmark from the US.
He was surprised by the opening hours of the shops and the system of home delivery. ‘To my standards, shops are never open in Denmark and it is not home delivery if I have to pick up my purchase at a post office’.
Danemark, shops close in the evening and home delivery is not dropped at your doorstep if you are not home when your purchased is delivered. His experience of consumption in the US was different. He could nearly buy anything at anytime.

Jim recalled the ‘early internet’. When we were constantly connected, but we had to wait for things to upload or download. Today ‘retention’ is a metric for many platform. For example Snapshat, or the autoplay on Youtube and Netflix. Retention metric can be harmful because it creates addiction.

Jim questioned the fact that now there is no ‘time-off’ such as our earlier waiting or the closing hours of shops. Today we can constantly be available and never completely off. People need to learn how to micro manage notifications and time-off keyboard.
What about people who are not savvy enough to micromanage? Who is responsible for them?

Jim proposes directions for solution:

  • is the government supposed to protect the people?
  • are private companies supposed to protect the people ?
  • what about a star rating of societal goods which controls how much traffic we are allowed to?

"The Dark Side of Information Behavior” with Nicole A. Cooke

Nicole A. Cooke is a PhD in communication, information, and library studies. She led us through her latest findings on how people are emotionally involved when reading information.

The emotional involvement of people determine how they will interact with a product/service.
‘People are being led by their gut, even if the information they read is unreasonable.’ says Nicole
When an info is online, before we use it, they are two steps:

  • affective treatment of information,
  • cognitive treatment of information.
    The part of our brain managing emotions overrides the part of our brain managing cognitive thinking. When people filter information based on emotions, they use cognitive biases.

When a negative emotion is triggered, the best content ever is useless. If something triggers a negative emotion, the user is gone. A negative emotion is triggered in an instant.
A negative emotion can be triggered by:

  • color,
  • music,
  • the type of information shared,
  • the level of trust between the brand or the speaker and the user,
  • the interface (how easy or complicated it is to use).
    If the emotion is negative during the affective treatment of information, the information never reaches the step of the cognitive treatment of information.

The trust we attribute to the speaker or brand influence our affective reaction to the information. When we trust, we don’t cognitively evaluate.
Trust is received and can be lost in an instant. A brand should build trust with its users. A brand should care for its users and be as transparent as possible. Lack of transparency means risk of losing trust.

Nicole discussed the subject of fake news and how news propagates on social media.
There are two types of fake news:

  • misinformation: it is an alternative truth, I don’t intend to trick you,
  • disinformation: I intend to say something wrong to trick you.
    The intent of the person saying or publishing the news makes the difference between misinformation and disinformation.

"Privacy and Consent-related Content in Your Product: At the Right Time, In the Right Place, the Right Way" with Saskia Videler

During this workshop, Saskia Videler shared one of her writing processes. Her process focused on interface content related to privacy and consent issues. The title of the workshop states the objective of her writing process: Privacy and Consent-related Content in Your Product: At the Right Time, In the Right Place, the Right Way.
In small groups, we practiced her process. It includes four steps:

  • Right content, right time: Saskia discussed themes such as: definition of the business’s goals, the user’s goals, the customer journey and the prerequisite of the content,
  • Definition of the tone: Saskia discussed themes such as: definition of level of stress of the situation for the user, what could make the situation less stressful, the emotions and feelings of the user, our tone, how we can positively impact their stress?
  • Craft the content: in small groups, we drawn quick wireframes including the content obviously.
  • Test the content: in small groups we identified how the content could be tested.

“Designing for Unintended Consequences” with Sheryl Cababa

Design is not neutral. Sheryl Cababa explained her idea of unintended consequences with the movie Jurassic Park.
At the beginning of Jurassic Park, the people are enthusiastic about hatching dinosaur eggs. They are in awe watching adult dinosaurs. Later in the movie, dinosaurs turn against humain. Suddenly, the scientific possibility of dinosaurs rebirth does not seem great.

Sheryl compared our early naive enthusiasm about the hatching internet to the enthusiasm of watching hatching dinosaur eggs.
Today, technology enables many creations. What are the unintended consequences of the technologies that we create?

The Tarot cards of tech, a tool to question the product/service that we build

Sheryl and her team at artefactgroup developed a tool to help us questions the product or service that we built. The tarot card are meant to ask questions, and
Read more about the Tarot cards of tech and download them.

"Navigating Our Evolving UX Landscape: Why and How to Create Your Personal Code of Ethics" with Quinn Keast

I was impressed by Quinn’s talk. I currently question the place of ethics in my work and I wonder how to create and apply ethical guidelines.
Quinn is one step further already. He decided that it was essential to have a personal code of ethics. He does not only rely on external factors (like a law) to guide his work. Laws keep up with development. Laws are ‘late’, in the sense that they are often created as a reaction to a technology.
Quinn built his personal code of conduct. He openly shares his code of conduct to help you understand me better and help us work together.
Read Quinn’s code of conduct.

Quinn shared how to build your own personal code of conduct in three steps:

  1. define your north star ideals: your north star ideals are three fundamental beliefs or value that guide you as a person,
  2. define your ethical principles: your north star principles are three principles that guide your work,
  3. share your code of conduct, make it available: Quinne recommends that your personal ethics should be shared to help other people understand you and work together.

Your personal code of ethics is useful to :

  • help us take decisions.
  • draw our lines: what are you okay to create? what is beyond your limits? Draw your line instead of reacting.

Quinn recommends that your personal ethics grow with you. Our personal code of ethics is a living document that changes over time.

“GDPR Considerations for Designers” with Kathleen Asjes and Mikaela Saletti

Kathleen and Mikaela shared their experience in carrying out GDPR-related research for the online newspaper called Aftonbladet. Aftonbladet is the largest online newspaper in Sweden.

Like many media company, Aftonbladet’s business revenue relies heavily on advertisements. How could Aftonbladet be compliant with the GDPR, empower their users and not lose the business revenue?

Kathleen and Mikaela showed us the different steps of their work to make Aftonbladet GDPR-compliant. Their solution empowers the user:

  • the settings icon is available on top of every add. The user can change any time their privacy settings,
  • the solution is granular rather than a yes/no question, the user can chose the level of privacy they want.

”Radical Change, Human Scale” with Sara Wachter-Boettcher

« I wanted everyone to feel the pain of a tech that is not made for them »
I found this quote powerful. A tech that is not inclusive is hurtful. A tech is not inclusive in small ways.
For example: not knowing where your datas go or who will access them. Ticking a box ‘mr’ ‘mrs’ ‘ms’ when you feel you are neither, reading information that are way too complicated for your level of language.

Sarah finds that too often people want to discuss concepts and ideas instead of applying solutions. «Intellectual discussion won’t save us. » She recommends that we do not discuss the scalability of solutions but start with small scale system.

Lessons learnt

The key take-aways I brought back from the conference:

  • I heard a lot about responsibility: the responsibility of the people building a product, responsibility of the investor investing in a product.
  • There is a generation of 40 something men like Jim who contributed to build what is today’s internet, during their twenties and thirties and who experience today after-thoughts. Suddenly what they built is not that great and they start realizing it backfires.
  • As a community we are responsible for the information we share. Each of us is responsible for the information that we trust or distrust. When we read an information, we should check if it is true.
  • Cookie bars can be improved. It is not a choice to have a single ‘I agree’ button. It is better to propose a granular solution for the users.
  • Let’s build solutions that work for a precise issue. Let’s not discuss if the solution will work at scale. Apply the solution, work with it. Applying rather than discussing.

I came back from Copenhague pumped with all these ideas, with renewed energy for my work.
The effect after the conference is astounding. I still process information today. I am slowly aware of new directions and further readings. I learnt so much.

My next steps after the conference are:

  • build tools that bring high ethical values in the product I help creating,
  • make my ethical values known: create a plan on how to deal with unethical requests in my work.

Thank you Liip for the opportunity to go to UX Copenhague, thank you to the organisation team for such an interesting event and thank you to all the speakers for coming to talk to us.

Watch the video UX Copenhague 2019

Recommended further readings

Read Thoughts on consent & ethics in tracking user behavior for UX research.
Read Word Choices and Language in UX, Part One: Introduction & the Meaty Bits

]]>
Sending lots of mail with Drupal https://www.liip.ch/de/blog/sending-lots-of-mail-with-drupal https://www.liip.ch/de/blog/sending-lots-of-mail-with-drupal Thu, 02 May 2019 00:00:00 +0200 Suppose you need to send a daily digest email to your users. The contents are personalized so you cannot use a classical newsletter provider to offload the work with a single daily campaign.

With a small number of subscribers it’s not an issue, write a cron hook, prepare each mail for the user and send it through the MailManager. You’ll probably still want to use a service such as Mailgun to handle the actual delivery but that’s something you can add irrespective of your cron job.

When your subscriber count increases, this approach becomes an issue. Especially if you try to send your mail in a specific time window, such as within two hours during the night. The maximum throughput we managed to get from such a provider with this approach is about 1 mail per second, due to sending each mail sequentially. Given our constraints we would top out around 7’200 subscribers; and our client’s subscriber list was an order of magnitude larger.

Note that the async functionality of these providers’ modules does not help here, it puts the sending of the mail in the queue so your frontend request isn’t blocked. It does not aggregate the mails for faster delivery.

Batch mailings

To avoid this bottleneck we need to make use of Mailgun’s per-recipient variables to send multiple mails in one request (other services likely have similar features but are out of scope for this post). Thus we forego the entire Drupal mail functionality which is tailored to only processing single messages at a time (or at least I haven’t found an elegant way to do it with MailManager). We can actually use the Mailgun module with very little overhead to do this:

# From the constructor, injecting @config.factory and @mailgun.mail_handler
$this->config = $config_factory->get('mailgun.settings');

$converter = new Html2Text($your_html_markup_containing_variables);
$message = [
  'from_email' => 'from@example.com',
  'from_name' => $this->t('Example sender'),
  'to' => $array_of_recipients,
   'subject' => $subject,
   'html' => $your_html_markup_containing_variables,
   'text' => $converter->getText(),
   'recipient-variables' => json_encode($per_recipient_variables),
];
// The following copied for simplicity out of the mail handler usage.
if ($this->config->get('test_mode')) {
  $message['o:testmode'] = 'yes';
}
$track_opens = $this->config->get('tracking_opens');
if (!empty($track_opens)) {
  $message['o:tracking-opens'] = $track_opens;
}
$track_clicks = $this->config->get('tracking_clicks');
if (!empty($track_clicks)) {
  $message['o:tracking-clicks'] = $track_opens;
}
$this->mailgunHandler->sendMail($message);

We are calling this code in batches of 100 subscribers. The above is basically all there is to it, the majority of our effort had to go into making this work with multiple languages. Note: In our case, subscribers could actually have multiple subscriptions.Therefore we had to make sure to not have the same email twice in a batch since Mailgun uses the email as the key.

Rendering and internationalization

What was glossed over above is the actual contents of the html array element. We assume you want to send HTML emails in general. Since Drupal by itself also sends email with the mail() command the question now becomes how to harmonize those. We decided to define a separate Twig template in our custom module that before everything else does {% extends 'swiftmailer.html.twig' %} . That way we use the same basic markup in our code as Drupal’s regular mails with Swiftmailer do.

If you only have a single language you can directly build the appropriate render array and render it with renderRoot() , ready for use with Mailgun.

If you have more than one language, the first thing is to inject stringTranslation and then call $this->stringTranslation->setDefaultLangcode($langcode); before rendering to create the HTML for the relevant language.

With this approach you’ll now need to group your batches by language to avoid sending a recipient the template from an incorrect language.

Pre-computing recipient data

We decided to create a helper table in the database to hold this information since no other place was ideal to keep track of the data we needed. Our case required: a UUID, a template key with language (also allowing for more than one type of mass mailing to be sent), and the actual variable data as serialized JSON.

Our recipient data contained multi-language display of nodes, so we cannot rely on the language context of the cron job. Additionally, setting the language within string translation was not enough for us because we use entities in our content. In those cases you need a bit more scaffolding, i.e. inject '@string_translation', '@language.default', '@language_manager' and then reset per recipient:

# Resetting language
$this->stringTranslation->setDefaultLangcode($langcode);
$language = $this->languageManager->getLanguage(langcode);
$this->languageDefault->set($langcode);
$this->languageManager->reset();
# Example of embedding entities
$node = $this->entityTypeManager->getStorage('node')->load($node_id_to_embed);
  if ($node->hasTranslation($this->language)) {
    $node = $node->getTranslation($this->language);
  }
  $nodes[] = $this->entityTypeManager->getViewBuilder('node')->view(
    $node,
    'my_email_view_mode',
    $langcode
  );
}

We can thus :

  • Add all subscribers to a queue.
  • Have them be added to the helper table by a QueueWorker one by one.
  • And finally send them all at once keyed by template & language combination.

We only load each template HTML once before sending the batches by looking at what templates are currently present in the helper table.

This approach also makes skipping duplicate addresses (as noted above) easy to handle: Only remove from the helper table the UUID which were actually sent and continue until the table is empty.

Results

With this approach we can send about 150 mails per second, thus delivering our notifications in a few minutes instead of several hours. We could probably increase that even more by optimizing the size of the batch we send. We spend the majority of our computation time now actually assembling the relevant data per user from Search API and Entity API.

Have a great delivery ✉️

]]>