En dehors du domaine professionnel, j'aime la photographie et la randonnée. C'est pour cela que j'ai crée le groupe French Riviera Hiking Meetup afin de rencontrer des personnes du monde entier autour de randonnées dans les Alpes Maritimes. Etant de nature à coupler les projets personnels avec mes passions, j'ai décidé il y a quelques années avec des amis du groupe Meetup de créer le projet OpenTracks sur mon temps libre.
OpenTracks est un site internet (https://opentracks.app) mais aussi une application iOS (lien) et Android (lien) destiné aux personnes aimant les promenades, randonnées pédestres, randonnées raquettes, trails et treks.
Grâce à l'application OpenTracks, vous pouvez rechercher des randonnées selon plein de critères de sélection mais aussi effectuer les activités sélectionnées depuis votre mobile grâce au GPS intégré et le mode hors-ligne optimisé pour faire en sorte que vous ne soyez pas perdu mais aussi en optimisant l'usage de la batterie. Je vous invite à explorer plus en détails le site d'OpenTracks et les descriptions des applications mobiles pour en découvrir plus sur les multiples fonctionnalités de l'application et n'hésitez pas à créer un compte sur l'application si vous êtes intéressés par l'application.
Je profite du développement de l'application pour perfectionner mes connaissances en Javascript front-end comme backend (OpenTracks est une application entièrement développée en Javascript) ainsi qu'en développement mobile qui était un domaine qui était relativement théorique pour moi jusqu'à maintenant et de créer une architecture robuste qui permettrait de pouvoir avoir des pages affichées en SSR (pour le SEO), tout en étant optimisé sur mobile. Un challenge technique difficile mais pas inintéressant :)
J'ai profité de ce projet pour mettre en place le Test Driven Development dans le cycle de vie de l'application. Une petite perte de temps au début du projet mais qui est maintenant un gain de temps considérable grâce aux tests automatiques qui se sont enrichis au fil des versions de l'application et qui participe à l'amélioration continue de la qualité de l'application en évitant les régressions.