Histoires de LearnEasy: le voyage vers Android – Apprendre une langue en 15 jours

Depuis décembre dernier, l'une de nos nouvelles fonctionnalités préférées – LearnEasy Stories – est disponible sur Android!

Les histoires de LearnEasy sont des contes originaux et de la taille d'une bouchée que les apprenants peuvent lire et écouter, tout en vérifiant leur compréhension à l'aide de questions intermittentes. Avec Stories, vous pouvez améliorer vos compétences en lecture et en écoute grâce à des textes plus longs que les leçons typiques de LearnEasy.

Les histoires initialement lancées en tant que fonctionnalité Web uniquement en 2017, et les amener sur mobile pour iOS et Android faisaient depuis longtemps partie de notre feuille de route. Dans cet article de blog, je partagerai notre processus et notre parcours pour apporter des histoires à Android, y compris comment nous l'avons fait et les résultats que nous avons vus.

Mon parcours

En juin 2018, alors que je terminais ma troisième année de collège, j'ai commencé mon stage d'été à LearnEasy, où j'ai acquis une expérience de première main en travaillant sur l'application Android. Comme je n'avais jamais écrit une seule ligne de code Android avant cet été – déjà – Je savais que ce serait une expérience difficile, mais j'étais prêt à plonger tête première et à me familiariser avec de nouvelles bases de code volumineuses dans des langages que je n'avais jamais vus auparavant.

Et j'ai plongé la tête la première: mon premier projet était «Super Duo», une tenue que les utilisateurs peuvent acheter pour notre mascotte, Duo, à porter dans l'application. Avec le soutien de mon manager (et peut-être un peu de chance), j'ai réussi à terminer cette tâche le quatrième jour de mon stage, puis j'ai vu la fonctionnalité dans l'application dès ma deuxième semaine chez LearnEasy.

Superduo dans la boutiqueSuperduo en cours

Après avoir été diplômé à l'été 2019, je suis retourné à LearnEasy en tant qu'ingénieur logiciel sur Android, et mon premier projet a été de travailler sur la mise en œuvre de Stories sur Android.

Pourquoi nous avons apporté des histoires à Android

Nous réfléchissons constamment à des moyens d'améliorer l'expérience d'apprentissage et proposons des fonctionnalités complémentaires à notre application d'apprentissage principale. Le lancement de LearnEasy Stories était notre réponse pour aider les apprenants à se mettre au défi à travers des récits plus longs qui n'existent pas dans les leçons de base sur LearnEasy. Les histoires sont actuellement disponibles en espagnol, portugais, français et allemand pour les anglophones, ainsi qu'en anglais pour les hispanophones, portugais et chinois. Ils couvrent les niveaux du CECR, notamment A1, A2 et B1, ce qui permet aux apprenants de différents niveaux d'utiliser leurs compétences linguistiques. Voyez si vous pouvez comprendre ce qui arrive à María ce matin:

Histoire espagnole de María partie 1Histoire espagnole sur María partie 2

Saviez-vous que plus de la moitié des utilisateurs de LearnEasy apprennent sur un appareil Android? Donc, lorsque nous avons décidé de transférer des histoires du Web vers le mobile, nous savions qu'il était important d'offrir un support pour les histoires sur Android. En novembre 2019, nous avons lancé Stories sur l'application iPhone, puis nous nous sommes également fixé pour objectif de lancer sur Android afin que Stories soit accessible à tous.

Comment nous avons implémenté Stories sur Android

Ce projet était une entreprise importante, d'autant plus que de nombreux éléments de Stories n'existaient pas auparavant dans d'autres parties de l'application Android. Pour y faire face, je savais qu'il serait essentiel de hiérarchiser les étapes clés.

L'un des principes de fonctionnement de LearnEasy est «Prioriser impitoyablement». Cela signifie que si nous apprécions une mise en œuvre de haute qualité, nous apprécions également notre temps et en faisons bon usage. Face à une tâche aussi importante, je savais que je devais limiter la portée du premier prototype: la première implémentation n'avait rien de plus que les éléments nécessaires à quiconque pour parcourir une histoire du début à la fin. Cela signifie que les premières leçons Stories réalisées sur Android n'avaient pas de défis, pas d'audio, pas d'illustrations et étaient pleines d'espaces réservés. Bien qu'il s'agissait d'une version très simple de ce que serait finalement le produit final, ce processus m'a permis d'apporter les modifications nécessaires à la prise en charge du backend, de configurer l'architecture du client, d'identifier et de planifier des parties spécifiques du reste du projet. .

Au cours du projet, j'ai pu développer régulièrement plusieurs prototypes à tester par l'équipe. Les premiers utilisateurs ont signalé des bogues critiques que je devais corriger et ces premiers commentaires étaient inestimables. Par exemple, un collègue ingénieur de LearnEasy utilise un téléphone Android avec une taille de mémoire et une puissance de calcul inférieures à la moyenne, et elle a remarqué que sur son appareil, les images de couverture dans la liste des histoires n'apparaissaient pas toujours comme elles auraient dû. Après une enquête, j'ai découvert qu'il y avait un défaut de conception appelé «condition de concurrence». Cela signifie que lorsque plusieurs programmes informatiques s'exécutent en même temps, ils peuvent effectuer leur travail dans un ordre inattendu. Les bogues comme celui-ci étaient beaucoup plus faciles à trier et à corriger, tandis que le code ne contenait que la logique nécessaire pour effectuer ce travail particulier.

Les expériences des premiers testeurs ont également éclairé mes changements dans l'architecture logicielle avant d'ajouter plus de complexité au code. Au cours des tests internes, nous avons constaté que la liste des histoires pouvait se désynchroniser si un utilisateur se déconnectait d'un compte pour en créer un autre. Sur cette base, j'ai décidé de restructurer entièrement la façon dont j'ai initialement configuré la gestion des ressources, afin que tout le cache soit correctement indexé par l'utilisateur. Encore une fois, cela n'aurait pas été aussi facile de poursuivre la mise en œuvre.

Alors que d'une part, nous voulons publier rapidement de nouvelles fonctionnalités et nous soucions beaucoup des résultats, cela compte également Comment nous le faisons. Depuis le début de l'implémentation, j'ai déployé de grands efforts pour respecter les bonnes pratiques de codage, telles que le maintien du modèle architectural modèle-vue-vue-modèle, l'écriture de code lisible, la documentation du code et la garantie qu'il serait possible de modifier le comportement à à tout moment. Cela signifiait que je ne pouvais pas toujours emprunter la voie facile. Cependant, si je ne m'étais soucié que de créer quelque chose qui fonctionne simplement à chaque étape, toutes les vulnérabilités se seraient rapidement ajoutées tout au long de ce projet, et les histoires seraient devenues une fonctionnalité construite sur des couches et des couches de béquilles.

Analyser les résultats

Comme tout le reste chez LearnEasy, les histoires sur Android ont été déployées comme une expérience. Il s'avère que les apprenants les adorent! Avec Stories sur Android, nous avons constaté une augmentation de 3% des utilisateurs qui apprennent activement avec LearnEasy, et ceux qui ont des Stories passent également 4,6% de temps de plus que les utilisateurs qui apprennent des langues qui ne sont pas encore prises en charge par Stories. Au moment d'écrire ce billet de blog, plus de la moitié des utilisateurs de Stories sont sur Android!

histoires-android-graphique

La ligne verte représente le temps passé à apprendre par les utilisateurs qui ont des histoires et le bleu représente le contrôle.

Certains apprenants ont même utilisé les réseaux sociaux pour parler de leur nouvelle fonctionnalité préférée.

Ce n'est pas parce que nous avons atteint le jalon du lancement de Stories sur Android que nous allons arrêter d'itérer sur cette fonctionnalité. En fait, c'est tout le contraire: notre équipe travaille dur pour améliorer continuellement chaque produit et fonctionnalité que nous proposons, et nous ferons de même avec Stories au cours des mois et des années à venir – des tests de nouveaux formats d'histoires à la prise en charge des Stories dans langues supplémentaires. Restez à l'écoute!

Histoires de LearnEasy: le voyage vers Android – Apprendre une langue en 15 jours
4.9 (98%) 732 votes
 

Leave a Comment